UNPKG

vite-plugin-validate-json

Version:

A Vite plugin to validate a set of paths to JSON files.

2 lines 1.46 kB
"use strict";var w=Object.create;var c=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var F=Object.getPrototypeOf,$=Object.prototype.hasOwnProperty;var b=(o,t)=>{for(var e in t)c(o,e,{get:t[e],enumerable:!0})},p=(o,t,e,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of y(t))!$.call(o,s)&&s!==e&&c(o,s,{get:()=>t[s],enumerable:!(a=v(t,s))||a.enumerable});return o};var u=(o,t,e)=>(e=o!=null?w(F(o)):{},p(t||!o||!o.__esModule?c(e,"default",{value:o,enumerable:!0}):e,o)),j=o=>p(c({},"__esModule",{value:!0}),o);var d=(o,t,e)=>new Promise((a,s)=>{var l=r=>{try{n(e.next(r))}catch(f){s(f)}},i=r=>{try{n(e.throw(r))}catch(f){s(f)}},n=r=>r.done?a(r.value):Promise.resolve(r.value).then(l,i);n((e=e.apply(o,t)).next())});var E={};b(E,{validateJsonPaths:()=>D});module.exports=j(E);var m=require("glob"),g=u(require("fs")),h=u(require("json-dup-key-validator"));function D(o){let{paths:t,allowDuplicateKeys:e=!1,ignoreFiles:a=[]}=o;return{name:"vite-plugin-validate-json",buildStart(){return d(this,null,function*(){let l=[];for(let i of t){let n=(0,m.sync)(i,{ignore:a,nodir:!0});l.push(...n)}for(let i of l){let n=yield g.default.promises.readFile(i,"utf-8"),r=h.default.validate(n,e);if(r)throw new Error(`\u274C Error while validating ${i} with error ${r} `);console.log(`\u2705 Validated ${i} JSON files successfully.`)}})}}}0&&(module.exports={validateJsonPaths}); //# sourceMappingURL=index.js.map