1 line
2.6 KiB
Plaintext
1 line
2.6 KiB
Plaintext
{"version":3,"file":"createStringVariations.mjs","sources":["../../../src/assets/utils/createStringVariations.ts"],"sourcesContent":["function processX(base: string, ids: string[][], depth: number, result: string[], tags: string[])\n{\n const id = ids[depth];\n\n for (let i = 0; i < id.length; i++)\n {\n const value = id[i];\n\n if (depth < ids.length - 1)\n {\n processX(base.replace(result[depth], value), ids, depth + 1, result, tags);\n }\n else\n {\n tags.push(base.replace(result[depth], value));\n }\n }\n}\n\n/**\n * Creates a list of all possible combinations of the given strings.\n * @example\n * const out2 = createStringVariations('name is {chicken,wolf,sheep}');\n * console.log(out2); // [ 'name is chicken', 'name is wolf', 'name is sheep' ]\n * @param string - The string to process\n */\nexport function createStringVariations(string: string): string[]\n{\n const regex = /\\{(.*?)\\}/g;\n\n const result = string.match(regex);\n\n const tags: string[] = [];\n\n if (result)\n {\n const ids: string[][] = [];\n\n result.forEach((vars) =>\n {\n // first remove the brackets...\n const split = vars.substring(1, vars.length - 1).split(',');\n\n ids.push(split);\n });\n\n processX(string, ids, 0, result, tags);\n }\n else\n {\n tags.push(string);\n }\n\n return tags;\n}\n"],"names":[],"mappings":";AAAA,SAAS,QAAS,CAAA,IAAA,EAAc,GAAiB,EAAA,KAAA,EAAe,QAAkB,IAClF,EAAA;AACI,EAAM,MAAA,EAAA,GAAK,IAAI,KAAK,CAAA,CAAA;AAEpB,EAAA,KAAA,IAAS,CAAI,GAAA,CAAA,EAAG,CAAI,GAAA,EAAA,CAAG,QAAQ,CAC/B,EAAA,EAAA;AACI,IAAM,MAAA,KAAA,GAAQ,GAAG,CAAC,CAAA,CAAA;AAElB,IAAI,IAAA,KAAA,GAAQ,GAAI,CAAA,MAAA,GAAS,CACzB,EAAA;AACI,MAAS,QAAA,CAAA,IAAA,CAAK,OAAQ,CAAA,MAAA,CAAO,KAAK,CAAA,EAAG,KAAK,CAAA,EAAG,GAAK,EAAA,KAAA,GAAQ,CAAG,EAAA,MAAA,EAAQ,IAAI,CAAA,CAAA;AAAA,KAG7E,MAAA;AACI,MAAA,IAAA,CAAK,KAAK,IAAK,CAAA,OAAA,CAAQ,OAAO,KAAK,CAAA,EAAG,KAAK,CAAC,CAAA,CAAA;AAAA,KAChD;AAAA,GACJ;AACJ,CAAA;AASO,SAAS,uBAAuB,MACvC,EAAA;AACI,EAAA,MAAM,KAAQ,GAAA,YAAA,CAAA;AAEd,EAAM,MAAA,MAAA,GAAS,MAAO,CAAA,KAAA,CAAM,KAAK,CAAA,CAAA;AAEjC,EAAA,MAAM,OAAiB,EAAC,CAAA;AAExB,EAAA,IAAI,MACJ,EAAA;AACI,IAAA,MAAM,MAAkB,EAAC,CAAA;AAEzB,IAAO,MAAA,CAAA,OAAA,CAAQ,CAAC,IAChB,KAAA;AAEI,MAAM,MAAA,KAAA,GAAQ,KAAK,SAAU,CAAA,CAAA,EAAG,KAAK,MAAS,GAAA,CAAC,CAAE,CAAA,KAAA,CAAM,GAAG,CAAA,CAAA;AAE1D,MAAA,GAAA,CAAI,KAAK,KAAK,CAAA,CAAA;AAAA,KACjB,CAAA,CAAA;AAED,IAAA,QAAA,CAAS,MAAQ,EAAA,GAAA,EAAK,CAAG,EAAA,MAAA,EAAQ,IAAI,CAAA,CAAA;AAAA,GAGzC,MAAA;AACI,IAAA,IAAA,CAAK,KAAK,MAAM,CAAA,CAAA;AAAA,GACpB;AAEA,EAAO,OAAA,IAAA,CAAA;AACX;;;;"} |