{"version":3,"sources":["jsdelivr-header.js","/npm/laf@0.3.4/src/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;ACLA,MAAM,IAAM,QAAQ,IACd,KAAO,QAAQ,QACf,IAAM,QAAQ,WACd,GAAK,QAAQ,YAEb,KAAO,kdAmBP,SAAW,CACf,MAAO,CACL,IAAK,CACH,KAAM,SACN,MAAO,KAET,IAAK,CACH,KAAM,SACN,MAAO,QAOP,MAAE,MAAK,MAAE,OAAU,KAAK,KAAM,UAOpC,SAAS,UAAU,EAAQ,EAAkB,cAAe,EAAU,OACpE,MAAQ,KAAM,EAAQ,MAAE,GAAU,EAClC,IAAK,MAAM,KAAK,OAAO,OAAO,EAAM,MAAO,CACzC,MAAM,KAAE,EAAI,SAAE,GAAa,EAC3B,IAAI,KAAK,EAAM,CAAE,YAAY,EAAiB,EAChD,CACA,OAAO,OAAO,OAAO,CAAC,EAAG,CAAE,YAC7B,CASA,SAAS,QAAQ,EAAQ,GAAI,GAC3B,GAAuB,iBAAZ,EAAM,GAAgB,CAC/B,IAAI,EAAM,EAAM,GAAG,cACnB,GAAW,OAAP,GAAuB,YAAP,EAClB,IAAI,eACC,GAAW,KAAP,GAAqB,SAAP,EAAgB,CACvC,IAAI,EAAM,GAAG,QAAQ,kBAErB,UADa,GAAG,aAAa,GACX,EAAM,IAAK,EAAM,IACrC,CACF,MACE,IACE,4EAGN,CACA,QAAQ,MAAO","file":"/npm/laf@0.3.4/src/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/laf@0.3.4/src/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","#!/usr/bin/env node\nconst log = console.log;\nconst meow = require(\"meow\");\nconst laf = require(\"laf-lib\");\nconst fs = require(\"fs-extra\");\n\nconst menu = `\n  Usage\n  $ laf <input>\n\n  Input Options (only choose one)\n  1. gen, generate -> Generate required config boilerplate   \n  $ laf gen\n\n  2. f, fetch -> Download everything specified in your config file (.laf.json)\n  $ laf fetch\n\n  Flags (can be used together)\n  1. --out, -o -> Download everything to specified directory\n  $ laf --out \"./my/directory\"\n\n  2. --cut, -c -> Download all PNGs (ie. the \"file cut\") from your kit\n  $ laf --cut \"PNG\"\n  `;\n\nconst flagTree = {\n  flags: {\n    out: {\n      type: \"string\",\n      alias: \"o\"\n    },\n    cut: {\n      type: \"string\",\n      alias: \"c\"\n    }\n  }\n};\n\n//TODO: Add soft & hard flags (pending diff implementation in LAF lib)\n//TODO: Brainstorm best way to handle API rate limit (since it's so low, they're likely to hit)\nconst { input, flags } = meow(menu, flagTree);\n\n/**\n *\n * @param {object} config\n */\n//TODO: Promisify so this can be called in index.test.js\nfunction lafParser(config, outputDirectory = \"./downloads\", fileCut = \"PNG\") {\n  const { name: fileName, value } = config;\n  for (const v of Object.values(value.kits)) {\n    const { name, sections } = v;\n    laf.init(name, { sections }, outputDirectory, fileCut);\n  }\n  return Object.assign({}, { fileName });\n}\n\n/**\n *\n * @param {string} input\n * @param {object} flags\n */\n\n//TODO: Remove circular dependency on '.laf.json' name key in config. Unnecessary. Cascades to laf-lib project\nfunction initCli(input = \"\", flags) {\n  if (typeof input[0] == \"string\") {\n    var inp = input[0].toLowerCase();\n    if (inp == \"gen\" || inp == \"generate\") {\n      laf.initInk();\n    } else if (inp == \"f\" || inp == \"fetch\") {\n      let dir = `${process.cwd()}/.laf.json`;\n      let config = fs.readJsonSync(dir);\n      lafParser(config, flags.out, flags.cut);\n    }\n  } else {\n    log(\n      `Please pass an input string (gen, fetch) like so (eg. laf gen, laf fetch)`\n    );\n  }\n}\ninitCli(input, flags);\n\n//TODO: Add --soft flag (triage, move to GH issues)\n//TODO: Add --hard flag (triage, move to GH issues)\n//TODO: Consider adding --dev flag to prevent overwriting .laf.json & .env when using generate\n\n/*\n----------------------------------------------\nGoal:\n----------------------------------------------\ninit(\n\t\"Capswan - Mobile App - Style Guide\",\n\tconfig.capswan.targetOne,\n\t\"./downloads/capswan/One\",\n\t\"PNG\"\n);\n----------------------------------------------\n*/\n"]}