@promptbook/utils 0.43.0 → 0.44.0-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.
- package/esm/index.es.js +596 -12
- package/esm/index.es.js.map +1 -1
- package/esm/typings/_packages/utils.index.d.ts +30 -3
- package/esm/typings/errors/PromptbookNotFoundError.d.ts +7 -0
- package/esm/typings/errors/{ExpectError.d.ts → _ExpectError.d.ts} +1 -0
- package/esm/typings/utils/expectation-counters/countSentences.d.ts +4 -0
- package/esm/typings/utils/normalization/DIACRITIC_VARIANTS_LETTERS.d.ts +10 -0
- package/esm/typings/utils/normalization/IKeywords.d.ts +18 -0
- package/esm/typings/utils/normalization/capitalize.d.ts +5 -0
- package/esm/typings/utils/normalization/capitalize.test.d.ts +1 -0
- package/esm/typings/utils/normalization/decapitalize.d.ts +5 -0
- package/esm/typings/utils/normalization/decapitalize.test.d.ts +1 -0
- package/esm/typings/utils/normalization/isValidKeyword.d.ts +8 -0
- package/esm/typings/utils/normalization/isValidKeyword.test.d.ts +1 -0
- package/esm/typings/utils/normalization/nameToUriPart.d.ts +1 -0
- package/esm/typings/utils/normalization/nameToUriPart.test.d.ts +1 -0
- package/esm/typings/utils/normalization/nameToUriParts.d.ts +1 -0
- package/esm/typings/utils/normalization/nameToUriParts.test.d.ts +1 -0
- package/esm/typings/utils/normalization/normalize-to-kebab-case.d.ts +1 -0
- package/esm/typings/utils/normalization/normalize-to-kebab-case.test.d.ts +1 -0
- package/esm/typings/utils/normalization/normalizeTo_PascalCase.d.ts +1 -0
- package/esm/typings/utils/normalization/normalizeTo_PascalCase.test.d.ts +1 -0
- package/esm/typings/utils/normalization/normalizeTo_SCREAMING_CASE.d.ts +4 -0
- package/esm/typings/utils/normalization/normalizeTo_SCREAMING_CASE.test.d.ts +1 -0
- package/esm/typings/utils/normalization/normalizeTo_camelCase.d.ts +4 -0
- package/esm/typings/utils/normalization/normalizeTo_camelCase.test.d.ts +1 -0
- package/esm/typings/utils/normalization/normalizeTo_snake_case.d.ts +1 -0
- package/esm/typings/utils/normalization/normalizeTo_snake_case.test.d.ts +1 -0
- package/esm/typings/utils/normalization/normalizeWhitespaces.d.ts +4 -0
- package/esm/typings/utils/normalization/normalizeWhitespaces.test.d.ts +1 -0
- package/esm/typings/utils/normalization/parseKeywords.d.ts +14 -0
- package/esm/typings/utils/normalization/parseKeywords.test.d.ts +1 -0
- package/esm/typings/utils/normalization/parseKeywordsFromString.d.ts +8 -0
- package/esm/typings/utils/normalization/parseKeywordsFromString.test.d.ts +1 -0
- package/esm/typings/utils/normalization/removeDiacritics.d.ts +4 -0
- package/esm/typings/utils/normalization/removeDiacritics.test.d.ts +1 -0
- package/esm/typings/utils/normalization/searchKeywords.d.ts +5 -0
- package/esm/typings/utils/normalization/searchKeywords.test.d.ts +1 -0
- package/package.json +2 -3
- package/umd/index.umd.js +624 -21
- package/umd/index.umd.js.map +1 -1
- package/umd/typings/_packages/utils.index.d.ts +30 -3
- package/umd/typings/errors/PromptbookNotFoundError.d.ts +7 -0
- package/umd/typings/errors/{ExpectError.d.ts → _ExpectError.d.ts} +1 -0
- package/umd/typings/utils/expectation-counters/countSentences.d.ts +4 -0
- package/umd/typings/utils/normalization/DIACRITIC_VARIANTS_LETTERS.d.ts +10 -0
- package/umd/typings/utils/normalization/IKeywords.d.ts +18 -0
- package/umd/typings/utils/normalization/capitalize.d.ts +5 -0
- package/umd/typings/utils/normalization/capitalize.test.d.ts +1 -0
- package/umd/typings/utils/normalization/decapitalize.d.ts +5 -0
- package/umd/typings/utils/normalization/decapitalize.test.d.ts +1 -0
- package/umd/typings/utils/normalization/isValidKeyword.d.ts +8 -0
- package/umd/typings/utils/normalization/isValidKeyword.test.d.ts +1 -0
- package/umd/typings/utils/normalization/nameToUriPart.d.ts +1 -0
- package/umd/typings/utils/normalization/nameToUriPart.test.d.ts +1 -0
- package/umd/typings/utils/normalization/nameToUriParts.d.ts +1 -0
- package/umd/typings/utils/normalization/nameToUriParts.test.d.ts +1 -0
- package/umd/typings/utils/normalization/normalize-to-kebab-case.d.ts +1 -0
- package/umd/typings/utils/normalization/normalize-to-kebab-case.test.d.ts +1 -0
- package/umd/typings/utils/normalization/normalizeTo_PascalCase.d.ts +1 -0
- package/umd/typings/utils/normalization/normalizeTo_PascalCase.test.d.ts +1 -0
- package/umd/typings/utils/normalization/normalizeTo_SCREAMING_CASE.d.ts +4 -0
- package/umd/typings/utils/normalization/normalizeTo_SCREAMING_CASE.test.d.ts +1 -0
- package/umd/typings/utils/normalization/normalizeTo_camelCase.d.ts +4 -0
- package/umd/typings/utils/normalization/normalizeTo_camelCase.test.d.ts +1 -0
- package/umd/typings/utils/normalization/normalizeTo_snake_case.d.ts +1 -0
- package/umd/typings/utils/normalization/normalizeTo_snake_case.test.d.ts +1 -0
- package/umd/typings/utils/normalization/normalizeWhitespaces.d.ts +4 -0
- package/umd/typings/utils/normalization/normalizeWhitespaces.test.d.ts +1 -0
- package/umd/typings/utils/normalization/parseKeywords.d.ts +14 -0
- package/umd/typings/utils/normalization/parseKeywords.test.d.ts +1 -0
- package/umd/typings/utils/normalization/parseKeywordsFromString.d.ts +8 -0
- package/umd/typings/utils/normalization/parseKeywordsFromString.test.d.ts +1 -0
- package/umd/typings/utils/normalization/removeDiacritics.d.ts +4 -0
- package/umd/typings/utils/normalization/removeDiacritics.test.d.ts +1 -0
- package/umd/typings/utils/normalization/searchKeywords.d.ts +5 -0
- package/umd/typings/utils/normalization/searchKeywords.test.d.ts +1 -0
- package/esm/typings/errors/NotFoundError.d.ts +0 -7
- package/umd/typings/errors/NotFoundError.d.ts +0 -7
package/esm/index.es.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { capitalize, normalizeTo_SCREAMING_CASE, normalizeTo_PascalCase, normalizeToKebabCase, removeDiacritics } from 'n12';
|
|
2
1
|
import spaceTrim from 'spacetrim';
|
|
3
2
|
import { format } from 'prettier';
|
|
4
3
|
import parserHtml from 'prettier/parser-html';
|
|
@@ -301,6 +300,14 @@ function extractAllListItemsFromMarkdown(markdown) {
|
|
|
301
300
|
return listItems;
|
|
302
301
|
}
|
|
303
302
|
|
|
303
|
+
/**
|
|
304
|
+
* Makes first letter of a string uppercase
|
|
305
|
+
*
|
|
306
|
+
*/
|
|
307
|
+
function capitalize(word) {
|
|
308
|
+
return word.substring(0, 1).toUpperCase() + word.substring(1);
|
|
309
|
+
}
|
|
310
|
+
|
|
304
311
|
/**
|
|
305
312
|
* Extracts all code blocks from markdown.
|
|
306
313
|
*
|
|
@@ -395,7 +402,7 @@ function removeContentComments(content) {
|
|
|
395
402
|
/**
|
|
396
403
|
* The version of the Promptbook library
|
|
397
404
|
*/
|
|
398
|
-
var PROMPTBOOK_VERSION = '0.
|
|
405
|
+
var PROMPTBOOK_VERSION = '0.44.0-0';
|
|
399
406
|
|
|
400
407
|
/**
|
|
401
408
|
* Parses the given script and returns the list of all used variables that are not defined in the script
|
|
@@ -1296,14 +1303,6 @@ function replaceParameters(template, parameters) {
|
|
|
1296
1303
|
return replacedTemplate;
|
|
1297
1304
|
}
|
|
1298
1305
|
|
|
1299
|
-
/**
|
|
1300
|
-
* Default options for generating an execution report string
|
|
1301
|
-
*/
|
|
1302
|
-
var ExecutionReportStringOptionsDefaults = {
|
|
1303
|
-
taxRate: 0,
|
|
1304
|
-
chartsWidth: 36,
|
|
1305
|
-
};
|
|
1306
|
-
|
|
1307
1306
|
/**
|
|
1308
1307
|
* Format either small or big number
|
|
1309
1308
|
*
|
|
@@ -1428,6 +1427,14 @@ function escapeMarkdownBlock(value) {
|
|
|
1428
1427
|
return value.replace(/```/g, '\\`\\`\\`');
|
|
1429
1428
|
}
|
|
1430
1429
|
|
|
1430
|
+
/**
|
|
1431
|
+
* Default options for generating an execution report string
|
|
1432
|
+
*/
|
|
1433
|
+
var ExecutionReportStringOptionsDefaults = {
|
|
1434
|
+
taxRate: 0,
|
|
1435
|
+
chartsWidth: 36,
|
|
1436
|
+
};
|
|
1437
|
+
|
|
1431
1438
|
/**
|
|
1432
1439
|
* The thresholds for the relative time in the `moment` library.
|
|
1433
1440
|
*
|
|
@@ -1668,11 +1675,270 @@ function countParagraphs(text) {
|
|
|
1668
1675
|
return text.split(/\n\s*\n/).filter(function (paragraph) { return paragraph.trim() !== ''; }).length;
|
|
1669
1676
|
}
|
|
1670
1677
|
|
|
1678
|
+
/**
|
|
1679
|
+
* Split text into sentences
|
|
1680
|
+
*/
|
|
1681
|
+
function splitIntoSentences(text) {
|
|
1682
|
+
return text.split(/[.!?]+/).filter(function (sentence) { return sentence.trim() !== ''; });
|
|
1683
|
+
}
|
|
1671
1684
|
/**
|
|
1672
1685
|
* Counts number of sentences in the text
|
|
1673
1686
|
*/
|
|
1674
1687
|
function countSentences(text) {
|
|
1675
|
-
return text
|
|
1688
|
+
return splitIntoSentences(text).length;
|
|
1689
|
+
}
|
|
1690
|
+
|
|
1691
|
+
var defaultDiacriticsRemovalMap = [
|
|
1692
|
+
{
|
|
1693
|
+
base: 'A',
|
|
1694
|
+
letters: '\u0041\u24B6\uFF21\u00C0\u00C1\u00C2\u1EA6\u1EA4\u1EAA\u1EA8\u00C3\u0100\u0102\u1EB0\u1EAE\u1EB4\u1EB2\u0226\u01E0\u00C4\u01DE\u1EA2\u00C5\u01FA\u01CD\u0200\u0202\u1EA0\u1EAC\u1EB6\u1E00\u0104\u023A\u2C6F',
|
|
1695
|
+
},
|
|
1696
|
+
{ base: 'AA', letters: '\uA732' },
|
|
1697
|
+
{ base: 'AE', letters: '\u00C6\u01FC\u01E2' },
|
|
1698
|
+
{ base: 'AO', letters: '\uA734' },
|
|
1699
|
+
{ base: 'AU', letters: '\uA736' },
|
|
1700
|
+
{ base: 'AV', letters: '\uA738\uA73A' },
|
|
1701
|
+
{ base: 'AY', letters: '\uA73C' },
|
|
1702
|
+
{
|
|
1703
|
+
base: 'B',
|
|
1704
|
+
letters: '\u0042\u24B7\uFF22\u1E02\u1E04\u1E06\u0243\u0182\u0181',
|
|
1705
|
+
},
|
|
1706
|
+
{
|
|
1707
|
+
base: 'C',
|
|
1708
|
+
letters: '\u0043\u24B8\uFF23\u0106\u0108\u010A\u010C\u00C7\u1E08\u0187\u023B\uA73E',
|
|
1709
|
+
},
|
|
1710
|
+
{
|
|
1711
|
+
base: 'D',
|
|
1712
|
+
letters: '\u0044\u24B9\uFF24\u1E0A\u010E\u1E0C\u1E10\u1E12\u1E0E\u0110\u018B\u018A\u0189\uA779\u00D0',
|
|
1713
|
+
},
|
|
1714
|
+
{ base: 'DZ', letters: '\u01F1\u01C4' },
|
|
1715
|
+
{ base: 'Dz', letters: '\u01F2\u01C5' },
|
|
1716
|
+
{
|
|
1717
|
+
base: 'E',
|
|
1718
|
+
letters: '\u0045\u24BA\uFF25\u00C8\u00C9\u00CA\u1EC0\u1EBE\u1EC4\u1EC2\u1EBC\u0112\u1E14\u1E16\u0114\u0116\u00CB\u1EBA\u011A\u0204\u0206\u1EB8\u1EC6\u0228\u1E1C\u0118\u1E18\u1E1A\u0190\u018E',
|
|
1719
|
+
},
|
|
1720
|
+
{ base: 'F', letters: '\u0046\u24BB\uFF26\u1E1E\u0191\uA77B' },
|
|
1721
|
+
{
|
|
1722
|
+
base: 'G',
|
|
1723
|
+
letters: '\u0047\u24BC\uFF27\u01F4\u011C\u1E20\u011E\u0120\u01E6\u0122\u01E4\u0193\uA7A0\uA77D\uA77E',
|
|
1724
|
+
},
|
|
1725
|
+
{
|
|
1726
|
+
base: 'H',
|
|
1727
|
+
letters: '\u0048\u24BD\uFF28\u0124\u1E22\u1E26\u021E\u1E24\u1E28\u1E2A\u0126\u2C67\u2C75\uA78D',
|
|
1728
|
+
},
|
|
1729
|
+
{
|
|
1730
|
+
base: 'I',
|
|
1731
|
+
letters: '\u0049\u24BE\uFF29\u00CC\u00CD\u00CE\u0128\u012A\u012C\u0130\u00CF\u1E2E\u1EC8\u01CF\u0208\u020A\u1ECA\u012E\u1E2C\u0197',
|
|
1732
|
+
},
|
|
1733
|
+
{ base: 'J', letters: '\u004A\u24BF\uFF2A\u0134\u0248' },
|
|
1734
|
+
{
|
|
1735
|
+
base: 'K',
|
|
1736
|
+
letters: '\u004B\u24C0\uFF2B\u1E30\u01E8\u1E32\u0136\u1E34\u0198\u2C69\uA740\uA742\uA744\uA7A2',
|
|
1737
|
+
},
|
|
1738
|
+
{
|
|
1739
|
+
base: 'L',
|
|
1740
|
+
letters: '\u004C\u24C1\uFF2C\u013F\u0139\u013D\u1E36\u1E38\u013B\u1E3C\u1E3A\u0141\u023D\u2C62\u2C60\uA748\uA746\uA780',
|
|
1741
|
+
},
|
|
1742
|
+
{ base: 'LJ', letters: '\u01C7' },
|
|
1743
|
+
{ base: 'Lj', letters: '\u01C8' },
|
|
1744
|
+
{ base: 'M', letters: '\u004D\u24C2\uFF2D\u1E3E\u1E40\u1E42\u2C6E\u019C' },
|
|
1745
|
+
{
|
|
1746
|
+
base: 'N',
|
|
1747
|
+
letters: '\u004E\u24C3\uFF2E\u01F8\u0143\u00D1\u1E44\u0147\u1E46\u0145\u1E4A\u1E48\u0220\u019D\uA790\uA7A4',
|
|
1748
|
+
},
|
|
1749
|
+
{ base: 'NJ', letters: '\u01CA' },
|
|
1750
|
+
{ base: 'Nj', letters: '\u01CB' },
|
|
1751
|
+
{
|
|
1752
|
+
base: 'O',
|
|
1753
|
+
letters: '\u004F\u24C4\uFF2F\u00D2\u00D3\u00D4\u1ED2\u1ED0\u1ED6\u1ED4\u00D5\u1E4C\u022C\u1E4E\u014C\u1E50\u1E52\u014E\u022E\u0230\u00D6\u022A\u1ECE\u0150\u01D1\u020C\u020E\u01A0\u1EDC\u1EDA\u1EE0\u1EDE\u1EE2\u1ECC\u1ED8\u01EA\u01EC\u00D8\u01FE\u0186\u019F\uA74A\uA74C',
|
|
1754
|
+
},
|
|
1755
|
+
{ base: 'OI', letters: '\u01A2' },
|
|
1756
|
+
{ base: 'OO', letters: '\uA74E' },
|
|
1757
|
+
{ base: 'OU', letters: '\u0222' },
|
|
1758
|
+
{ base: 'OE', letters: '\u008C\u0152' },
|
|
1759
|
+
{ base: 'oe', letters: '\u009C\u0153' },
|
|
1760
|
+
{
|
|
1761
|
+
base: 'P',
|
|
1762
|
+
letters: '\u0050\u24C5\uFF30\u1E54\u1E56\u01A4\u2C63\uA750\uA752\uA754',
|
|
1763
|
+
},
|
|
1764
|
+
{ base: 'Q', letters: '\u0051\u24C6\uFF31\uA756\uA758\u024A' },
|
|
1765
|
+
{
|
|
1766
|
+
base: 'R',
|
|
1767
|
+
letters: '\u0052\u24C7\uFF32\u0154\u1E58\u0158\u0210\u0212\u1E5A\u1E5C\u0156\u1E5E\u024C\u2C64\uA75A\uA7A6\uA782',
|
|
1768
|
+
},
|
|
1769
|
+
{
|
|
1770
|
+
base: 'S',
|
|
1771
|
+
letters: '\u0053\u24C8\uFF33\u1E9E\u015A\u1E64\u015C\u1E60\u0160\u1E66\u1E62\u1E68\u0218\u015E\u2C7E\uA7A8\uA784',
|
|
1772
|
+
},
|
|
1773
|
+
{
|
|
1774
|
+
base: 'T',
|
|
1775
|
+
letters: '\u0054\u24C9\uFF34\u1E6A\u0164\u1E6C\u021A\u0162\u1E70\u1E6E\u0166\u01AC\u01AE\u023E\uA786',
|
|
1776
|
+
},
|
|
1777
|
+
{ base: 'TZ', letters: '\uA728' },
|
|
1778
|
+
{
|
|
1779
|
+
base: 'U',
|
|
1780
|
+
letters: '\u0055\u24CA\uFF35\u00D9\u00DA\u00DB\u0168\u1E78\u016A\u1E7A\u016C\u00DC\u01DB\u01D7\u01D5\u01D9\u1EE6\u016E\u0170\u01D3\u0214\u0216\u01AF\u1EEA\u1EE8\u1EEE\u1EEC\u1EF0\u1EE4\u1E72\u0172\u1E76\u1E74\u0244',
|
|
1781
|
+
},
|
|
1782
|
+
{ base: 'V', letters: '\u0056\u24CB\uFF36\u1E7C\u1E7E\u01B2\uA75E\u0245' },
|
|
1783
|
+
{ base: 'VY', letters: '\uA760' },
|
|
1784
|
+
{
|
|
1785
|
+
base: 'W',
|
|
1786
|
+
letters: '\u0057\u24CC\uFF37\u1E80\u1E82\u0174\u1E86\u1E84\u1E88\u2C72',
|
|
1787
|
+
},
|
|
1788
|
+
{ base: 'X', letters: '\u0058\u24CD\uFF38\u1E8A\u1E8C' },
|
|
1789
|
+
{
|
|
1790
|
+
base: 'Y',
|
|
1791
|
+
letters: '\u0059\u24CE\uFF39\u1EF2\u00DD\u0176\u1EF8\u0232\u1E8E\u0178\u1EF6\u1EF4\u01B3\u024E\u1EFE',
|
|
1792
|
+
},
|
|
1793
|
+
{
|
|
1794
|
+
base: 'Z',
|
|
1795
|
+
letters: '\u005A\u24CF\uFF3A\u0179\u1E90\u017B\u017D\u1E92\u1E94\u01B5\u0224\u2C7F\u2C6B\uA762',
|
|
1796
|
+
},
|
|
1797
|
+
{
|
|
1798
|
+
base: 'a',
|
|
1799
|
+
letters: '\u0061\u24D0\uFF41\u1E9A\u00E0\u00E1\u00E2\u1EA7\u1EA5\u1EAB\u1EA9\u00E3\u0101\u0103\u1EB1\u1EAF\u1EB5\u1EB3\u0227\u01E1\u00E4\u01DF\u1EA3\u00E5\u01FB\u01CE\u0201\u0203\u1EA1\u1EAD\u1EB7\u1E01\u0105\u2C65\u0250',
|
|
1800
|
+
},
|
|
1801
|
+
{ base: 'aa', letters: '\uA733' },
|
|
1802
|
+
{ base: 'ae', letters: '\u00E6\u01FD\u01E3' },
|
|
1803
|
+
{ base: 'ao', letters: '\uA735' },
|
|
1804
|
+
{ base: 'au', letters: '\uA737' },
|
|
1805
|
+
{ base: 'av', letters: '\uA739\uA73B' },
|
|
1806
|
+
{ base: 'ay', letters: '\uA73D' },
|
|
1807
|
+
{
|
|
1808
|
+
base: 'b',
|
|
1809
|
+
letters: '\u0062\u24D1\uFF42\u1E03\u1E05\u1E07\u0180\u0183\u0253',
|
|
1810
|
+
},
|
|
1811
|
+
{
|
|
1812
|
+
base: 'c',
|
|
1813
|
+
letters: '\u0063\u24D2\uFF43\u0107\u0109\u010B\u010D\u00E7\u1E09\u0188\u023C\uA73F\u2184',
|
|
1814
|
+
},
|
|
1815
|
+
{
|
|
1816
|
+
base: 'd',
|
|
1817
|
+
letters: '\u0064\u24D3\uFF44\u1E0B\u010F\u1E0D\u1E11\u1E13\u1E0F\u0111\u018C\u0256\u0257\uA77A',
|
|
1818
|
+
},
|
|
1819
|
+
{ base: 'dz', letters: '\u01F3\u01C6' },
|
|
1820
|
+
{
|
|
1821
|
+
base: 'e',
|
|
1822
|
+
letters: '\u0065\u24D4\uFF45\u00E8\u00E9\u00EA\u1EC1\u1EBF\u1EC5\u1EC3\u1EBD\u0113\u1E15\u1E17\u0115\u0117\u00EB\u1EBB\u011B\u0205\u0207\u1EB9\u1EC7\u0229\u1E1D\u0119\u1E19\u1E1B\u0247\u025B\u01DD',
|
|
1823
|
+
},
|
|
1824
|
+
{ base: 'f', letters: '\u0066\u24D5\uFF46\u1E1F\u0192\uA77C' },
|
|
1825
|
+
{
|
|
1826
|
+
base: 'g',
|
|
1827
|
+
letters: '\u0067\u24D6\uFF47\u01F5\u011D\u1E21\u011F\u0121\u01E7\u0123\u01E5\u0260\uA7A1\u1D79\uA77F',
|
|
1828
|
+
},
|
|
1829
|
+
{
|
|
1830
|
+
base: 'h',
|
|
1831
|
+
letters: '\u0068\u24D7\uFF48\u0125\u1E23\u1E27\u021F\u1E25\u1E29\u1E2B\u1E96\u0127\u2C68\u2C76\u0265',
|
|
1832
|
+
},
|
|
1833
|
+
{ base: 'hv', letters: '\u0195' },
|
|
1834
|
+
{
|
|
1835
|
+
base: 'i',
|
|
1836
|
+
letters: '\u0069\u24D8\uFF49\u00EC\u00ED\u00EE\u0129\u012B\u012D\u00EF\u1E2F\u1EC9\u01D0\u0209\u020B\u1ECB\u012F\u1E2D\u0268\u0131',
|
|
1837
|
+
},
|
|
1838
|
+
{ base: 'j', letters: '\u006A\u24D9\uFF4A\u0135\u01F0\u0249' },
|
|
1839
|
+
{
|
|
1840
|
+
base: 'k',
|
|
1841
|
+
letters: '\u006B\u24DA\uFF4B\u1E31\u01E9\u1E33\u0137\u1E35\u0199\u2C6A\uA741\uA743\uA745\uA7A3',
|
|
1842
|
+
},
|
|
1843
|
+
{
|
|
1844
|
+
base: 'l',
|
|
1845
|
+
letters: '\u006C\u24DB\uFF4C\u0140\u013A\u013E\u1E37\u1E39\u013C\u1E3D\u1E3B\u017F\u0142\u019A\u026B\u2C61\uA749\uA781\uA747',
|
|
1846
|
+
},
|
|
1847
|
+
{ base: 'lj', letters: '\u01C9' },
|
|
1848
|
+
{ base: 'm', letters: '\u006D\u24DC\uFF4D\u1E3F\u1E41\u1E43\u0271\u026F' },
|
|
1849
|
+
{
|
|
1850
|
+
base: 'n',
|
|
1851
|
+
letters: '\u006E\u24DD\uFF4E\u01F9\u0144\u00F1\u1E45\u0148\u1E47\u0146\u1E4B\u1E49\u019E\u0272\u0149\uA791\uA7A5',
|
|
1852
|
+
},
|
|
1853
|
+
{ base: 'nj', letters: '\u01CC' },
|
|
1854
|
+
{
|
|
1855
|
+
base: 'o',
|
|
1856
|
+
letters: '\u006F\u24DE\uFF4F\u00F2\u00F3\u00F4\u1ED3\u1ED1\u1ED7\u1ED5\u00F5\u1E4D\u022D\u1E4F\u014D\u1E51\u1E53\u014F\u022F\u0231\u00F6\u022B\u1ECF\u0151\u01D2\u020D\u020F\u01A1\u1EDD\u1EDB\u1EE1\u1EDF\u1EE3\u1ECD\u1ED9\u01EB\u01ED\u00F8\u01FF\u0254\uA74B\uA74D\u0275',
|
|
1857
|
+
},
|
|
1858
|
+
{ base: 'oi', letters: '\u01A3' },
|
|
1859
|
+
{ base: 'ou', letters: '\u0223' },
|
|
1860
|
+
{ base: 'oo', letters: '\uA74F' },
|
|
1861
|
+
{
|
|
1862
|
+
base: 'p',
|
|
1863
|
+
letters: '\u0070\u24DF\uFF50\u1E55\u1E57\u01A5\u1D7D\uA751\uA753\uA755',
|
|
1864
|
+
},
|
|
1865
|
+
{ base: 'q', letters: '\u0071\u24E0\uFF51\u024B\uA757\uA759' },
|
|
1866
|
+
{
|
|
1867
|
+
base: 'r',
|
|
1868
|
+
letters: '\u0072\u24E1\uFF52\u0155\u1E59\u0159\u0211\u0213\u1E5B\u1E5D\u0157\u1E5F\u024D\u027D\uA75B\uA7A7\uA783',
|
|
1869
|
+
},
|
|
1870
|
+
{
|
|
1871
|
+
base: 's',
|
|
1872
|
+
letters: '\u0073\u24E2\uFF53\u00DF\u015B\u1E65\u015D\u1E61\u0161\u1E67\u1E63\u1E69\u0219\u015F\u023F\uA7A9\uA785\u1E9B',
|
|
1873
|
+
},
|
|
1874
|
+
{
|
|
1875
|
+
base: 't',
|
|
1876
|
+
letters: '\u0074\u24E3\uFF54\u1E6B\u1E97\u0165\u1E6D\u021B\u0163\u1E71\u1E6F\u0167\u01AD\u0288\u2C66\uA787',
|
|
1877
|
+
},
|
|
1878
|
+
{ base: 'tz', letters: '\uA729' },
|
|
1879
|
+
{
|
|
1880
|
+
base: 'u',
|
|
1881
|
+
letters: '\u0075\u24E4\uFF55\u00F9\u00FA\u00FB\u0169\u1E79\u016B\u1E7B\u016D\u00FC\u01DC\u01D8\u01D6\u01DA\u1EE7\u016F\u0171\u01D4\u0215\u0217\u01B0\u1EEB\u1EE9\u1EEF\u1EED\u1EF1\u1EE5\u1E73\u0173\u1E77\u1E75\u0289',
|
|
1882
|
+
},
|
|
1883
|
+
{ base: 'v', letters: '\u0076\u24E5\uFF56\u1E7D\u1E7F\u028B\uA75F\u028C' },
|
|
1884
|
+
{ base: 'vy', letters: '\uA761' },
|
|
1885
|
+
{
|
|
1886
|
+
base: 'w',
|
|
1887
|
+
letters: '\u0077\u24E6\uFF57\u1E81\u1E83\u0175\u1E87\u1E85\u1E98\u1E89\u2C73',
|
|
1888
|
+
},
|
|
1889
|
+
{ base: 'x', letters: '\u0078\u24E7\uFF58\u1E8B\u1E8D' },
|
|
1890
|
+
{
|
|
1891
|
+
base: 'y',
|
|
1892
|
+
letters: '\u0079\u24E8\uFF59\u1EF3\u00FD\u0177\u1EF9\u0233\u1E8F\u00FF\u1EF7\u1E99\u1EF5\u01B4\u024F\u1EFF',
|
|
1893
|
+
},
|
|
1894
|
+
{
|
|
1895
|
+
base: 'z',
|
|
1896
|
+
letters: '\u007A\u24E9\uFF5A\u017A\u1E91\u017C\u017E\u1E93\u1E95\u01B6\u0225\u0240\u2C6C\uA763',
|
|
1897
|
+
},
|
|
1898
|
+
];
|
|
1899
|
+
/**
|
|
1900
|
+
* Map of letters from diacritic variant to diacritless variant
|
|
1901
|
+
* Contains lowercase and uppercase separatelly
|
|
1902
|
+
*
|
|
1903
|
+
* > "á" => "a"
|
|
1904
|
+
* > "ě" => "e"
|
|
1905
|
+
* > "Ă" => "A"
|
|
1906
|
+
* > ...
|
|
1907
|
+
*/
|
|
1908
|
+
var DIACRITIC_VARIANTS_LETTERS = {};
|
|
1909
|
+
// tslint:disable-next-line: prefer-for-of
|
|
1910
|
+
for (var i = 0; i < defaultDiacriticsRemovalMap.length; i++) {
|
|
1911
|
+
var letters = defaultDiacriticsRemovalMap[i].letters;
|
|
1912
|
+
// tslint:disable-next-line: prefer-for-of
|
|
1913
|
+
for (var j = 0; j < letters.length; j++) {
|
|
1914
|
+
DIACRITIC_VARIANTS_LETTERS[letters[j]] =
|
|
1915
|
+
defaultDiacriticsRemovalMap[i].base;
|
|
1916
|
+
}
|
|
1917
|
+
}
|
|
1918
|
+
// <- TODO: !!!! Put to maker function
|
|
1919
|
+
/*
|
|
1920
|
+
@see https://stackoverflow.com/questions/990904/remove-accents-diacritics-in-a-string-in-javascript
|
|
1921
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
1922
|
+
you may not use this file except in compliance with the License.
|
|
1923
|
+
You may obtain a copy of the License at
|
|
1924
|
+
|
|
1925
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
1926
|
+
|
|
1927
|
+
Unless required by applicable law or agreed to in writing, software
|
|
1928
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
1929
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1930
|
+
See the License for the specific language governing permissions and
|
|
1931
|
+
limitations under the License.
|
|
1932
|
+
*/
|
|
1933
|
+
|
|
1934
|
+
/**
|
|
1935
|
+
*
|
|
1936
|
+
*/
|
|
1937
|
+
function removeDiacritics(input) {
|
|
1938
|
+
/*eslint no-control-regex: "off"*/
|
|
1939
|
+
return input.replace(/[^\u0000-\u007E]/g, function (a) {
|
|
1940
|
+
return DIACRITIC_VARIANTS_LETTERS[a] || a;
|
|
1941
|
+
});
|
|
1676
1942
|
}
|
|
1677
1943
|
|
|
1678
1944
|
/**
|
|
@@ -1715,6 +1981,312 @@ function isValidJsonString(value) {
|
|
|
1715
1981
|
}
|
|
1716
1982
|
}
|
|
1717
1983
|
|
|
1984
|
+
/**
|
|
1985
|
+
* Makes first letter of a string uppercase
|
|
1986
|
+
*
|
|
1987
|
+
*/
|
|
1988
|
+
function decapitalize(word) {
|
|
1989
|
+
return word.substring(0, 1).toLowerCase() + word.substring(1);
|
|
1990
|
+
}
|
|
1991
|
+
|
|
1992
|
+
/* tslint:disable */
|
|
1993
|
+
/*
|
|
1994
|
+
TODO: Tests
|
|
1995
|
+
expect(encodeRoutePath({ uriId: 'VtG7sR9rRJqwNEdM2', name: 'Moje tabule' })).toEqual('/VtG7sR9rRJqwNEdM2/Moje tabule');
|
|
1996
|
+
expect(encodeRoutePath({ uriId: 'VtG7sR9rRJqwNEdM2', name: 'ěščřžžýáíúů' })).toEqual('/VtG7sR9rRJqwNEdM2/escrzyaieuu');
|
|
1997
|
+
expect(encodeRoutePath({ uriId: 'VtG7sR9rRJqwNEdM2', name: ' ahoj ' })).toEqual('/VtG7sR9rRJqwNEdM2/ahoj');
|
|
1998
|
+
expect(encodeRoutePath({ uriId: 'VtG7sR9rRJqwNEdM2', name: ' ahoj_ahojAhoj ahoj ' })).toEqual('/VtG7sR9rRJqwNEdM2/ahoj-ahoj-ahoj-ahoj');
|
|
1999
|
+
*/
|
|
2000
|
+
function normalizeTo_SCREAMING_CASE(sentence) {
|
|
2001
|
+
var e_1, _a;
|
|
2002
|
+
var charType;
|
|
2003
|
+
var lastCharType = 'OTHER';
|
|
2004
|
+
var normalizedName = '';
|
|
2005
|
+
try {
|
|
2006
|
+
for (var sentence_1 = __values(sentence), sentence_1_1 = sentence_1.next(); !sentence_1_1.done; sentence_1_1 = sentence_1.next()) {
|
|
2007
|
+
var char = sentence_1_1.value;
|
|
2008
|
+
var normalizedChar = void 0;
|
|
2009
|
+
if (/^[a-z]$/.test(char)) {
|
|
2010
|
+
charType = 'LOWERCASE';
|
|
2011
|
+
normalizedChar = char.toUpperCase();
|
|
2012
|
+
}
|
|
2013
|
+
else if (/^[A-Z]$/.test(char)) {
|
|
2014
|
+
charType = 'UPPERCASE';
|
|
2015
|
+
normalizedChar = char;
|
|
2016
|
+
}
|
|
2017
|
+
else if (/^[0-9]$/.test(char)) {
|
|
2018
|
+
charType = 'NUMBER';
|
|
2019
|
+
normalizedChar = char;
|
|
2020
|
+
}
|
|
2021
|
+
else if (/^\/$/.test(char)) {
|
|
2022
|
+
charType = 'SLASH';
|
|
2023
|
+
normalizedChar = char;
|
|
2024
|
+
}
|
|
2025
|
+
else {
|
|
2026
|
+
charType = 'OTHER';
|
|
2027
|
+
normalizedChar = '_';
|
|
2028
|
+
}
|
|
2029
|
+
if (charType !== lastCharType &&
|
|
2030
|
+
!(lastCharType === 'UPPERCASE' && charType === 'LOWERCASE') &&
|
|
2031
|
+
!(lastCharType === 'NUMBER') &&
|
|
2032
|
+
!(charType === 'NUMBER')) {
|
|
2033
|
+
normalizedName += '_';
|
|
2034
|
+
}
|
|
2035
|
+
normalizedName += normalizedChar;
|
|
2036
|
+
lastCharType = charType;
|
|
2037
|
+
}
|
|
2038
|
+
}
|
|
2039
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
2040
|
+
finally {
|
|
2041
|
+
try {
|
|
2042
|
+
if (sentence_1_1 && !sentence_1_1.done && (_a = sentence_1.return)) _a.call(sentence_1);
|
|
2043
|
+
}
|
|
2044
|
+
finally { if (e_1) throw e_1.error; }
|
|
2045
|
+
}
|
|
2046
|
+
normalizedName = normalizedName.replace(/_+/g, '_');
|
|
2047
|
+
normalizedName = normalizedName.replace(/_?\/_?/g, '/');
|
|
2048
|
+
normalizedName = normalizedName.replace(/^_/, '');
|
|
2049
|
+
normalizedName = normalizedName.replace(/_$/, '');
|
|
2050
|
+
return normalizedName;
|
|
2051
|
+
}
|
|
2052
|
+
/**
|
|
2053
|
+
* TODO: [🌺] Use some intermediate util splitWords
|
|
2054
|
+
*/
|
|
2055
|
+
|
|
2056
|
+
/**
|
|
2057
|
+
* Parses keywords from a string
|
|
2058
|
+
*
|
|
2059
|
+
* @param {string} input
|
|
2060
|
+
* @returns {Set} of keywords without diacritics in lowercase
|
|
2061
|
+
*/
|
|
2062
|
+
function parseKeywordsFromString(input) {
|
|
2063
|
+
var keywords = normalizeTo_SCREAMING_CASE(removeDiacritics(input))
|
|
2064
|
+
.toLowerCase()
|
|
2065
|
+
.split(/[^a-z0-9]+/gs)
|
|
2066
|
+
.filter(function (value) { return value; });
|
|
2067
|
+
return new Set(keywords);
|
|
2068
|
+
}
|
|
2069
|
+
|
|
2070
|
+
/**
|
|
2071
|
+
* Tests if keyword is valid
|
|
2072
|
+
*
|
|
2073
|
+
* @param keyword to test
|
|
2074
|
+
* @returns if keyword is valid or not
|
|
2075
|
+
*/
|
|
2076
|
+
function isValidKeyword(keyword) {
|
|
2077
|
+
var keywordParsed = parseKeywordsFromString(keyword);
|
|
2078
|
+
if (keywordParsed.size !== 1) {
|
|
2079
|
+
return false;
|
|
2080
|
+
}
|
|
2081
|
+
var keywordParsedArray = Array.from(keywordParsed);
|
|
2082
|
+
var keywordParsedFirst = keywordParsedArray[0];
|
|
2083
|
+
return keywordParsedFirst === keyword;
|
|
2084
|
+
}
|
|
2085
|
+
|
|
2086
|
+
function nameToUriPart(name) {
|
|
2087
|
+
var uriPart = name;
|
|
2088
|
+
uriPart = uriPart.toLowerCase();
|
|
2089
|
+
uriPart = removeDiacritics(uriPart);
|
|
2090
|
+
uriPart = uriPart.replace(/[^a-zA-Z0-9]+/g, '-');
|
|
2091
|
+
uriPart = uriPart.replace(/^-+/, '');
|
|
2092
|
+
uriPart = uriPart.replace(/-+$/, '');
|
|
2093
|
+
return uriPart;
|
|
2094
|
+
}
|
|
2095
|
+
|
|
2096
|
+
function nameToUriParts(name) {
|
|
2097
|
+
return nameToUriPart(name)
|
|
2098
|
+
.split('-')
|
|
2099
|
+
.filter(function (value) { return value !== ''; });
|
|
2100
|
+
}
|
|
2101
|
+
|
|
2102
|
+
/* tslint:disable */
|
|
2103
|
+
function normalizeToKebabCase(sentence) {
|
|
2104
|
+
var e_1, _a;
|
|
2105
|
+
sentence = removeDiacritics(sentence);
|
|
2106
|
+
var charType;
|
|
2107
|
+
var lastCharType = 'OTHER';
|
|
2108
|
+
var normalizedName = '';
|
|
2109
|
+
try {
|
|
2110
|
+
for (var sentence_1 = __values(sentence), sentence_1_1 = sentence_1.next(); !sentence_1_1.done; sentence_1_1 = sentence_1.next()) {
|
|
2111
|
+
var char = sentence_1_1.value;
|
|
2112
|
+
var normalizedChar = void 0;
|
|
2113
|
+
if (/^[a-z]$/.test(char)) {
|
|
2114
|
+
charType = 'LOWERCASE';
|
|
2115
|
+
normalizedChar = char;
|
|
2116
|
+
}
|
|
2117
|
+
else if (/^[A-Z]$/.test(char)) {
|
|
2118
|
+
charType = 'UPPERCASE';
|
|
2119
|
+
normalizedChar = char.toLowerCase();
|
|
2120
|
+
}
|
|
2121
|
+
else if (/^[0-9]$/.test(char)) {
|
|
2122
|
+
charType = 'NUMBER';
|
|
2123
|
+
normalizedChar = char;
|
|
2124
|
+
}
|
|
2125
|
+
else if (/^\/$/.test(char)) {
|
|
2126
|
+
charType = 'SLASH';
|
|
2127
|
+
normalizedChar = char;
|
|
2128
|
+
}
|
|
2129
|
+
else {
|
|
2130
|
+
charType = 'OTHER';
|
|
2131
|
+
normalizedChar = '-';
|
|
2132
|
+
}
|
|
2133
|
+
if (charType !== lastCharType &&
|
|
2134
|
+
!(lastCharType === 'UPPERCASE' && charType === 'LOWERCASE') &&
|
|
2135
|
+
!(lastCharType === 'NUMBER') &&
|
|
2136
|
+
!(charType === 'NUMBER')) {
|
|
2137
|
+
normalizedName += '-';
|
|
2138
|
+
}
|
|
2139
|
+
normalizedName += normalizedChar;
|
|
2140
|
+
lastCharType = charType;
|
|
2141
|
+
}
|
|
2142
|
+
}
|
|
2143
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
2144
|
+
finally {
|
|
2145
|
+
try {
|
|
2146
|
+
if (sentence_1_1 && !sentence_1_1.done && (_a = sentence_1.return)) _a.call(sentence_1);
|
|
2147
|
+
}
|
|
2148
|
+
finally { if (e_1) throw e_1.error; }
|
|
2149
|
+
}
|
|
2150
|
+
normalizedName = normalizedName.split(/-+/g).join('-');
|
|
2151
|
+
normalizedName = normalizedName.split(/-?\/-?/g).join('/');
|
|
2152
|
+
normalizedName = normalizedName.replace(/^-/, '');
|
|
2153
|
+
normalizedName = normalizedName.replace(/-$/, '');
|
|
2154
|
+
return normalizedName;
|
|
2155
|
+
}
|
|
2156
|
+
|
|
2157
|
+
/* tslint:disable */
|
|
2158
|
+
function normalizeTo_camelCase(sentence, __firstLetterCapital) {
|
|
2159
|
+
var e_1, _a;
|
|
2160
|
+
if (__firstLetterCapital === void 0) { __firstLetterCapital = false; }
|
|
2161
|
+
var charType;
|
|
2162
|
+
var lastCharType = null;
|
|
2163
|
+
var normalizedName = '';
|
|
2164
|
+
try {
|
|
2165
|
+
for (var sentence_1 = __values(sentence), sentence_1_1 = sentence_1.next(); !sentence_1_1.done; sentence_1_1 = sentence_1.next()) {
|
|
2166
|
+
var char = sentence_1_1.value;
|
|
2167
|
+
var normalizedChar = void 0;
|
|
2168
|
+
if (/^[a-z]$/.test(char)) {
|
|
2169
|
+
charType = 'LOWERCASE';
|
|
2170
|
+
normalizedChar = char;
|
|
2171
|
+
}
|
|
2172
|
+
else if (/^[A-Z]$/.test(char)) {
|
|
2173
|
+
charType = 'UPPERCASE';
|
|
2174
|
+
normalizedChar = char.toLowerCase();
|
|
2175
|
+
}
|
|
2176
|
+
else if (/^[0-9]$/.test(char)) {
|
|
2177
|
+
charType = 'NUMBER';
|
|
2178
|
+
normalizedChar = char;
|
|
2179
|
+
}
|
|
2180
|
+
else {
|
|
2181
|
+
charType = 'OTHER';
|
|
2182
|
+
normalizedChar = '';
|
|
2183
|
+
}
|
|
2184
|
+
if (!lastCharType) {
|
|
2185
|
+
if (__firstLetterCapital) {
|
|
2186
|
+
normalizedChar = normalizedChar.toUpperCase(); //TODO: DRY
|
|
2187
|
+
}
|
|
2188
|
+
}
|
|
2189
|
+
else if (charType !== lastCharType &&
|
|
2190
|
+
!(charType === 'LOWERCASE' && lastCharType === 'UPPERCASE') &&
|
|
2191
|
+
!(lastCharType === 'NUMBER') &&
|
|
2192
|
+
!(charType === 'NUMBER')) {
|
|
2193
|
+
normalizedChar = normalizedChar.toUpperCase(); //TODO: [🌺] DRY
|
|
2194
|
+
}
|
|
2195
|
+
normalizedName += normalizedChar;
|
|
2196
|
+
lastCharType = charType;
|
|
2197
|
+
}
|
|
2198
|
+
}
|
|
2199
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
2200
|
+
finally {
|
|
2201
|
+
try {
|
|
2202
|
+
if (sentence_1_1 && !sentence_1_1.done && (_a = sentence_1.return)) _a.call(sentence_1);
|
|
2203
|
+
}
|
|
2204
|
+
finally { if (e_1) throw e_1.error; }
|
|
2205
|
+
}
|
|
2206
|
+
return normalizedName;
|
|
2207
|
+
}
|
|
2208
|
+
/**
|
|
2209
|
+
* TODO: [🌺] Use some intermediate util splitWords
|
|
2210
|
+
*/
|
|
2211
|
+
|
|
2212
|
+
function normalizeTo_PascalCase(sentence) {
|
|
2213
|
+
return normalizeTo_camelCase(sentence, true);
|
|
2214
|
+
}
|
|
2215
|
+
|
|
2216
|
+
/* tslint:disable */
|
|
2217
|
+
function normalizeTo_snake_case(sentence) {
|
|
2218
|
+
return normalizeTo_SCREAMING_CASE(sentence).toLowerCase();
|
|
2219
|
+
}
|
|
2220
|
+
|
|
2221
|
+
/**
|
|
2222
|
+
* Take every whitespace (space, new line, tab) and replace it with a single space.
|
|
2223
|
+
*/
|
|
2224
|
+
function normalizeWhitespaces(sentence) {
|
|
2225
|
+
return sentence.replace(/\s+/gs, ' ').trim();
|
|
2226
|
+
}
|
|
2227
|
+
|
|
2228
|
+
/**
|
|
2229
|
+
* Parses keywords from any object and recursively walks through
|
|
2230
|
+
*
|
|
2231
|
+
* Tip: If you want to parse multiple inputs, just wrap them in an array
|
|
2232
|
+
*
|
|
2233
|
+
* @param input of any kind
|
|
2234
|
+
* @returns {Set} of keywords without diacritics in lowercase
|
|
2235
|
+
*/
|
|
2236
|
+
function parseKeywords(input) {
|
|
2237
|
+
if (typeof input === 'string') {
|
|
2238
|
+
return parseKeywordsFromString(input);
|
|
2239
|
+
}
|
|
2240
|
+
else if (typeof input === 'object') {
|
|
2241
|
+
if (Array.isArray(input)) {
|
|
2242
|
+
return input.map(parseKeywords).reduce(function (a, b) { return new Set(__spreadArray(__spreadArray([], __read(a), false), __read(b), false)); }, new Set());
|
|
2243
|
+
}
|
|
2244
|
+
else if (input === null) {
|
|
2245
|
+
return new Set();
|
|
2246
|
+
}
|
|
2247
|
+
else {
|
|
2248
|
+
return parseKeywords(Object.values(input));
|
|
2249
|
+
}
|
|
2250
|
+
}
|
|
2251
|
+
else {
|
|
2252
|
+
return new Set();
|
|
2253
|
+
}
|
|
2254
|
+
}
|
|
2255
|
+
/**
|
|
2256
|
+
* Note: Not using spread in input param because of keeping second parameter for options
|
|
2257
|
+
* TODO: [🌺] Use some intermediate util splitWords
|
|
2258
|
+
*/
|
|
2259
|
+
|
|
2260
|
+
/**
|
|
2261
|
+
*
|
|
2262
|
+
*/
|
|
2263
|
+
function searchKeywords(haystack, needle) {
|
|
2264
|
+
var e_1, _a;
|
|
2265
|
+
var _loop_1 = function (needleWord) {
|
|
2266
|
+
if (!__spreadArray([], __read(haystack), false).some(function (haystackWord) {
|
|
2267
|
+
return haystackWord.substring(0, needleWord.length) === needleWord;
|
|
2268
|
+
})) {
|
|
2269
|
+
return { value: false };
|
|
2270
|
+
}
|
|
2271
|
+
};
|
|
2272
|
+
try {
|
|
2273
|
+
for (var needle_1 = __values(needle), needle_1_1 = needle_1.next(); !needle_1_1.done; needle_1_1 = needle_1.next()) {
|
|
2274
|
+
var needleWord = needle_1_1.value;
|
|
2275
|
+
var state_1 = _loop_1(needleWord);
|
|
2276
|
+
if (typeof state_1 === "object")
|
|
2277
|
+
return state_1.value;
|
|
2278
|
+
}
|
|
2279
|
+
}
|
|
2280
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
2281
|
+
finally {
|
|
2282
|
+
try {
|
|
2283
|
+
if (needle_1_1 && !needle_1_1.done && (_a = needle_1.return)) _a.call(needle_1);
|
|
2284
|
+
}
|
|
2285
|
+
finally { if (e_1) throw e_1.error; }
|
|
2286
|
+
}
|
|
2287
|
+
return true;
|
|
2288
|
+
}
|
|
2289
|
+
|
|
1718
2290
|
/**
|
|
1719
2291
|
* Extracts code block from markdown.
|
|
1720
2292
|
*
|
|
@@ -1855,5 +2427,17 @@ function unwrapResult(text, options) {
|
|
|
1855
2427
|
* TODO: [🧠] Should this also unwrap the (parenthesis)
|
|
1856
2428
|
*/
|
|
1857
2429
|
|
|
1858
|
-
|
|
2430
|
+
// And the normalization (originally n12 library) utilities:
|
|
2431
|
+
var normalizeTo = {
|
|
2432
|
+
camelCase: normalizeTo_camelCase,
|
|
2433
|
+
PascalCase: normalizeTo_PascalCase,
|
|
2434
|
+
'SCREAMING-CASE': normalizeTo_SCREAMING_CASE,
|
|
2435
|
+
snake_case: normalizeTo_snake_case,
|
|
2436
|
+
'kebab-case': normalizeToKebabCase,
|
|
2437
|
+
};
|
|
2438
|
+
/**
|
|
2439
|
+
* TODO: [🧠] Maybe create some indipendent package like `markdown-tools` from both here exported and @private utilities
|
|
2440
|
+
*/
|
|
2441
|
+
|
|
2442
|
+
export { CountUtils, DIACRITIC_VARIANTS_LETTERS, ExecutionReportStringOptionsDefaults, assertsExecutionSuccessful, capitalize, countCharacters, countLines, countPages, countParagraphs, countSentences, countWords, decapitalize, executionReportJsonToString, extractAllBlocksFromMarkdown, extractAllListItemsFromMarkdown, extractBlock, extractOneBlockFromMarkdown, isValidJsonString, isValidKeyword, nameToUriPart, nameToUriParts, normalizeTo, normalizeToKebabCase, normalizeTo_PascalCase, normalizeTo_SCREAMING_CASE, normalizeTo_camelCase, normalizeTo_snake_case, normalizeWhitespaces, parseKeywords, parseKeywordsFromString, parseNumber, prettifyPromptbookString, removeContentComments, removeDiacritics, removeEmojis, removeMarkdownFormatting, removeQuotes, replaceParameters, searchKeywords, splitIntoSentences, trimCodeBlock, trimEndOfCodeBlock, unwrapResult };
|
|
1859
2443
|
//# sourceMappingURL=index.es.js.map
|