UNPKG

@yuebai008/cli

Version:

Command line interface for rapid qg-minigame development

1 lines 939 B
import{parseList,serializeItem,serializeList}from"./StructuredHeaders.js";export function parseBrandsList(e,r,i){const t=[],n=parseList(e);if(0===n.kind)return r;for(const e of n.items){if(4!==e.kind)return i;const r=e.value;if(7!==r.kind)return i;if(1!==e.parameters.items.length)return i;const n=e.parameters.items[0];if("v"!==n.name.value)return i;const s=n.value;if(7!==s.kind)return i;t.push({brand:r.value,version:s.value})}return t}export function serializeBrandsList(e){const r={kind:11,items:[]},i={kind:1,value:"v"};for(const t of e){const e={kind:4,value:{kind:7,value:t.brand},parameters:{kind:3,items:[{kind:2,name:i,value:{kind:7,value:t.version}}]}};r.items.push(e)}const t=serializeList(r);return 0===t.kind?"":t.value}export function validateAsStructuredHeadersString(e,r){return 0===serializeItem({kind:4,value:{kind:7,value:e},parameters:{kind:3,items:[]}}).kind?{valid:!1,errorMessage:r}:{valid:!0,errorMessage:void 0}}