UNPKG

@storm-stack/core

Version:

A build toolkit and runtime used by Storm Software in TypeScript applications

1 lines 2.93 kB
{"version":3,"sources":["../../src/lib/utilities/source-file.ts"],"names":["getString","code","isString","toString","getMagicString","MagicString","getSourceFile","id","content","readFileIfExistingSync","env"],"mappings":";;;;;;;;;;;AA6BO,SAASA,UAAUC,IAAAA,EAA0B;AAClD,EAAA,IAAIC,iBAAAA,CAASD,IAAAA,CAAAA,EAAO;AAClB,IAAA,OAAOA,IAAAA;AACT,EAAA;AAEA,EAAA,OAAOA,KAAKE,QAAAA,EAAQ;AACtB;AANgBH,wBAAAA,CAAAA,SAAAA,EAAAA,WAAAA,CAAAA;AAcT,SAASI,eAAeH,IAAAA,EAA0B;AACvD,EAAA,IAAIC,iBAAAA,CAASD,IAAAA,CAAAA,EAAO;AAClB,IAAA,OAAO,IAAII,6BAAYJ,IAAAA,CAAAA;AACzB,EAAA;AAEA,EAAA,OAAOA,IAAAA;AACT;AANgBG,wBAAAA,CAAAA,cAAAA,EAAAA,gBAAAA,CAAAA;AAeT,SAASE,aAAAA,CACdC,IACAN,IAAAA,EAA2B;AAE3B,EAAA,MAAMO,OAAAA,GAAUP,IAAAA,IAAQQ,+BAAAA,CAAuBF,EAAAA,CAAAA;AAE/C,EAAA,OAAO;AACLA,IAAAA,EAAAA;AACAN,IAAAA,IAAAA,EAAMG,eAAeI,OAAAA,CAAAA;AACrBE,IAAAA,GAAAA,EAAK;AACP,GAAA;AACF;AAXgBJ,wBAAAA,CAAAA,aAAAA,EAAAA,eAAAA,CAAAA","file":"chunk-EG72EGDV.cjs","sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Storm Stack\n\n This code was released as part of the Storm Stack project. Storm Stack\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/storm-stack.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/storm-stack\n Documentation: https://docs.stormsoftware.com/projects/storm-stack\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { readFileIfExistingSync } from \"@stryke/fs/read-file\";\nimport { isString } from \"@stryke/type-checks/is-string\";\nimport MagicString from \"magic-string\";\nimport { SourceFile } from \"../../types/compiler\";\n\n/**\n * Get the string from the source.\n *\n * @param code - The source string or magic string.\n * @returns The source string.\n */\nexport function getString(code: string | MagicString): string {\n if (isString(code)) {\n return code;\n }\n\n return code.toString();\n}\n\n/**\n * Get the magic string.\n *\n * @param code - The source string or magic string.\n * @returns The magic string.\n */\nexport function getMagicString(code: string | MagicString): MagicString {\n if (isString(code)) {\n return new MagicString(code);\n }\n\n return code;\n}\n\n/**\n * Get the source file.\n *\n * @param id - The name of the file.\n * @param code - The source code.\n * @returns The source file.\n */\nexport function getSourceFile(\n id: string,\n code?: string | MagicString\n): SourceFile {\n const content = code ?? readFileIfExistingSync(id);\n\n return {\n id,\n code: getMagicString(content),\n env: []\n };\n}\n"]}