You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1 line
3.7 KiB
1 line
3.7 KiB
{"ast":null,"code":"import _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nvar formatToList = function formatToList(items) {\n return items.map(function (key) {\n return \"- \" + key;\n }).join('\\n');\n};\nexport default function validatePathConfig(config) {\n var root = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n var validKeys = ['initialRouteName', 'screens'];\n if (!root) {\n validKeys.push('path', 'exact', 'stringify', 'parse');\n }\n var invalidKeys = Object.keys(config).filter(function (key) {\n return !validKeys.includes(key);\n });\n if (invalidKeys.length) {\n throw new Error(\"Found invalid properties in the configuration:\\n\" + formatToList(invalidKeys) + \"\\n\\nDid you forget to specify them under a 'screens' property?\\n\\nYou can only specify the following properties:\\n\" + formatToList(validKeys) + \"\\n\\nSee https://reactnavigation.org/docs/configuring-links for more details on how to specify a linking configuration.\");\n }\n if (config.screens) {\n Object.entries(config.screens).forEach(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n _ = _ref2[0],\n value = _ref2[1];\n if (typeof value !== 'string') {\n validatePathConfig(value, false);\n }\n });\n }\n}","map":{"version":3,"sources":["validatePathConfig.tsx"],"names":["formatToList","items","map","key","join","validatePathConfig","config","root","validKeys","push","invalidKeys","Object","keys","filter","includes","length","Error","screens","entries","forEach","_","value"],"mappings":";AAAA,IAAMA,YAAY,GAAIC,SAAhBD,YAAY,CAAIC,KAAe;EAAA,OACnCA,KAAK,CAACC,GAAG,CAAEC,UAAAA,GAAG;IAAA,cAAUA,GAAI;EAAA,CAAC,CAAC,CAACC,IAAI,CAAC,IAAI,CAAC;AAAA;AAE3C,eAAe,SAASC,kBAAkB,CAACC,MAAW,EAAe;EAAA,IAAbC,IAAI,GAAA,SAAA,CAAA,MAAA,GAAA,CAAA,IAAA,SAAA,CAAA,CAAA,CAAA,KAAA,SAAA,GAAA,SAAA,CAAA,CAAA,CAAA,GAAG,IAAI;EACjE,IAAMC,SAAS,GAAG,CAAC,kBAAkB,EAAE,SAAS,CAAC;EAEjD,IAAI,CAACD,IAAI,EAAE;IACTC,SAAS,CAACC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC;EACvD;EAEA,IAAMC,WAAW,GAAGC,MAAM,CAACC,IAAI,CAACN,MAAM,CAAC,CAACO,MAAM,CAC3CV,UAAAA,GAAG;IAAA,OAAK,CAACK,SAAS,CAACM,QAAQ,CAACX,GAAG,CAAC;EAAA,EAClC;EAED,IAAIO,WAAW,CAACK,MAAM,EAAE;IACtB,MAAM,IAAIC,KAAK,sDACsChB,YAAY,CAC7DU,WAAW,CACX,0HAAoHV,YAAY,CAChIQ,SAAS,CACT,4HACH;EACH;EAEA,IAAIF,MAAM,CAACW,OAAO,EAAE;IAClBN,MAAM,CAACO,OAAO,CAACZ,MAAM,CAACW,OAAO,CAAC,CAACE,OAAO,CAAC,UAAA,IAAA,EAAgB;MAAf,2BAAU,IAAA;QAATC,CAAC;QAAEC,KAAK;MAC/C,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;QAC7BhB,kBAAkB,CAACgB,KAAK,EAAE,KAAK,CAAC;MAClC;IACF,CAAC,CAAC;EACJ;AACF","sourceRoot":"../../src","sourcesContent":["const formatToList = items => items.map(key => `- ${key}`).join('\\n');\nexport default function validatePathConfig(config) {\n let root = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n const validKeys = ['initialRouteName', 'screens'];\n if (!root) {\n validKeys.push('path', 'exact', 'stringify', 'parse');\n }\n const invalidKeys = Object.keys(config).filter(key => !validKeys.includes(key));\n if (invalidKeys.length) {\n throw new Error(`Found invalid properties in the configuration:\\n${formatToList(invalidKeys)}\\n\\nDid you forget to specify them under a 'screens' property?\\n\\nYou can only specify the following properties:\\n${formatToList(validKeys)}\\n\\nSee https://reactnavigation.org/docs/configuring-links for more details on how to specify a linking configuration.`);\n }\n if (config.screens) {\n Object.entries(config.screens).forEach(_ref => {\n let [_, value] = _ref;\n if (typeof value !== 'string') {\n validatePathConfig(value, false);\n }\n });\n }\n}\n//# sourceMappingURL=validatePathConfig.js.map"]},"metadata":{},"sourceType":"module"} |