@shockpkg/ria-packager
Version:
Package for creating Adobe AIR packages
1 lines • 4.43 kB
Source Map (JSON)
{"version":3,"sources":["util.ts"],"names":["defaultValue","value","undefined","defaultNull","defaultFalse","defaultTrue","trimDotSlash","path","replace","pathRelativeBase","start","nocase","p","toLowerCase","s","startsWith","substr","length","pathRelativeBaseMatch","bufferToArrayBuffer","buffer","byteOffset","byteLength","slice"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASA,YAAT,CACNC,KADM,EAEND,YAFM,EAGsB;AAC5B;AACA,SAAOC,KAAK,KAAKC,SAAV,GACNF,YADM,GAELC,KAFF;AAGA;AAED;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASE,WAAT,CAAwBF,KAAxB,EAAkC;AACxC,SAAOD,YAAY,CAACC,KAAD,EAAQ,IAAR,CAAnB;AACA;AAED;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASG,YAAT,CAAyBH,KAAzB,EAAmC;AACzC,SAAOD,YAAY,CAACC,KAAD,EAAQ,KAAR,CAAnB;AACA;AAED;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASI,WAAT,CAAwBJ,KAAxB,EAAkC;AACxC,SAAOD,YAAY,CAACC,KAAD,EAAQ,IAAR,CAAnB;AACA;AAED;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASK,YAAT,CAAsBC,IAAtB,EAAoC;AAC1C,SAAOA,IAAI,CAACC,OAAL,CAAa,UAAb,EAAyB,EAAzB,CAAP;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,gBAAT,CACNF,IADM,EAENG,KAFM,EAGNC,MAAM,GAAG,KAHH,EAIL;AACD,QAAMC,CAAC,GAAGN,YAAY,CAACK,MAAM,GAAGJ,IAAI,CAACM,WAAL,EAAH,GAAwBN,IAA/B,CAAtB;AACA,QAAMO,CAAC,GAAGR,YAAY,CAACK,MAAM,GAAGD,KAAK,CAACG,WAAN,EAAH,GAAyBH,KAAhC,CAAtB;;AACA,MAAIE,CAAC,KAAKE,CAAV,EAAa;AACZ,WAAO,EAAP;AACA;;AACD,MAAIF,CAAC,CAACG,UAAF,CAAc,GAAED,CAAE,GAAlB,CAAJ,EAA2B;AAC1B,WAAOP,IAAI,CAACS,MAAL,CAAYF,CAAC,CAACG,MAAF,GAAW,CAAvB,CAAP;AACA;;AACD,SAAO,IAAP;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,qBAAT,CACNX,IADM,EAENG,KAFM,EAGNC,MAAM,GAAG,KAHH,EAIL;AACD,SAAOF,gBAAgB,CAACF,IAAD,EAAOG,KAAP,EAAcC,MAAd,CAAhB,KAA0C,IAAjD;AACA;AAED;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASQ,mBAAT,CAA6BC,MAA7B,EAAuD;AAC7D,QAAM;AAACC,IAAAA,UAAD;AAAaC,IAAAA;AAAb,MAA2BF,MAAjC;AACA,SAAOA,MAAM,CAACA,MAAP,CAAcG,KAAd,CAAoBF,UAApB,EAAgCA,UAAU,GAAGC,UAA7C,CAAP;AACA","sourcesContent":["/**\n * Default value if value is undefined.\n *\n * @param value Value.\n * @param defaultValue Default value.\n * @returns Value or the default value if undefined.\n */\nexport function defaultValue<T, U>(\n\tvalue: T,\n\tdefaultValue: U\n): Exclude<T, undefined> | U {\n\t// eslint-disable-next-line no-undefined\n\treturn value === undefined ?\n\t\tdefaultValue :\n\t\t(value as Exclude<T, undefined>);\n}\n\n/**\n * Default null if value is undefined.\n *\n * @param value Value.\n * @returns Value or null if undefined.\n */\nexport function defaultNull<T>(value: T) {\n\treturn defaultValue(value, null);\n}\n\n/**\n * Default false if value is undefined.\n *\n * @param value Value.\n * @returns Value or false if undefined.\n */\nexport function defaultFalse<T>(value: T) {\n\treturn defaultValue(value, false);\n}\n\n/**\n * Default true if value is undefined.\n *\n * @param value Value.\n * @returns Value or true if undefined.\n */\nexport function defaultTrue<T>(value: T) {\n\treturn defaultValue(value, true);\n}\n\n/**\n * Trim dot flash from head of path.\n *\n * @param path Path string.\n * @returns Trimmed path.\n */\nexport function trimDotSlash(path: string) {\n\treturn path.replace(/^(\\.\\/)+/, '');\n}\n\n/**\n * Find path relative from base, if base matches.\n *\n * @param path Path to match against.\n * @param start Search start.\n * @param nocase Match case-insensitive.\n * @returns Returns path, or null.\n */\nexport function pathRelativeBase(\n\tpath: string,\n\tstart: string,\n\tnocase = false\n) {\n\tconst p = trimDotSlash(nocase ? path.toLowerCase() : path);\n\tconst s = trimDotSlash(nocase ? start.toLowerCase() : start);\n\tif (p === s) {\n\t\treturn '';\n\t}\n\tif (p.startsWith(`${s}/`)) {\n\t\treturn path.substr(s.length + 1);\n\t}\n\treturn null;\n}\n\n/**\n * Same as pathRelativeBase, but retuns true on a match, else false.\n *\n * @param path Path to match against.\n * @param start Search start.\n * @param nocase Match case-insensitive.\n * @returns Returns true on match, else false.\n */\nexport function pathRelativeBaseMatch(\n\tpath: string,\n\tstart: string,\n\tnocase = false\n) {\n\treturn pathRelativeBase(path, start, nocase) !== null;\n}\n\n/**\n * Get ArrayBuffer from Buffer.\n *\n * @param buffer Buffer instance.\n * @returns ArrayBuffer copy.\n */\nexport function bufferToArrayBuffer(buffer: Readonly<Buffer>) {\n\tconst {byteOffset, byteLength} = buffer;\n\treturn buffer.buffer.slice(byteOffset, byteOffset + byteLength);\n}\n"],"file":"util.mjs","sourceRoot":"../src"}