@mongrov/core 0.2.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,QAAQ,EACR,SAAS,EACT,YAAY,EAKb,MAAM,SAAS,CAAA;AAwChB,MAAM,WAAW,MAAM;IACrB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;IAC5D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;IAC3D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;IAC3D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;IAC5D,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;IAEvE,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IAE5C,OAAO,CAAC,MAAM,CAAC,EAAE,SAAS,GAAG,QAAQ,EAAE,CAAA;IACvC,UAAU,CAAC,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAEtC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACtB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACzB;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CA6IzD"}
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,QAAQ,EACR,SAAS,EACT,YAAY,EAKb,MAAM,SAAS,CAAA;AAuChB,MAAM,WAAW,MAAM;IACrB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;IAC5D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;IAC3D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;IAC3D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;IAC5D,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;IAEvE,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IAE5C,OAAO,CAAC,MAAM,CAAC,EAAE,SAAS,GAAG,QAAQ,EAAE,CAAA;IACvC,UAAU,CAAC,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAEtC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACtB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACzB;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CA6IzD"}
package/dist/logger.js CHANGED
@@ -26,7 +26,6 @@ function getPlatform() {
26
26
  }
27
27
  function isDev() {
28
28
  try {
29
- // @ts-expect-error __DEV__ is a React Native global
30
29
  return typeof __DEV__ !== 'undefined' ? __DEV__ : false;
31
30
  }
32
31
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAEvD,MAAM,WAAW,GAA6B;IAC5C,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;CACT,CAAA;AAED,IAAI,OAAO,GAAG,CAAC,CAAA;AACf,SAAS,UAAU;IACjB,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;AACrC,CAAC;AAED,SAAS,iBAAiB;IACxB,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAA;AACnE,CAAC;AAED,SAAS,WAAW;IAClB,IAAI,CAAC;QACH,8DAA8D;QAC9D,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAA;QAC5C,OAAO,QAAQ,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAA;IACtD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED,SAAS,KAAK;IACZ,IAAI,CAAC;QACH,oDAAoD;QACpD,OAAO,OAAO,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAA;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAoBD,MAAM,UAAU,YAAY,CAAC,MAAoB;IAC/C,MAAM,GAAG,GAAG,KAAK,EAAE,CAAA;IACnB,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;IAC5D,MAAM,WAAW,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAA;IAEzC,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAA;IACrC,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAE9B,kBAAkB;IAClB,MAAM,GAAG,GAAe;QACtB,SAAS;QACT,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,QAAQ;KACT,CAAA;IAED,MAAM,YAAY,GAA2B,EAAE,CAAA;IAE/C,wBAAwB;IACxB,MAAM,UAAU,GAAmB,EAAE,CAAA;IACrC,IAAI,UAAU,GAA+B,IAAI,CAAA;IACjD,IAAI,gBAAgB,GAA4B,IAAI,CAAA;IAEpD,cAAc;IACd,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACtB,MAAM,QAAQ,GACZ,OAAO,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAA;QACjE,UAAU,GAAG,IAAI,mBAAmB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QACtD,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IAC7B,CAAC;IAED,iBAAiB;IACjB,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,MAAM,UAAU,GACd,OAAO,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAA;QACrD,UAAU,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC,UAAU,CAAC,CAAC,CAAA;IAChD,CAAC;IAED,oBAAoB;IACpB,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QACvD,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;IACnC,CAAC;IAED,oBAAoB;IACpB,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACtB,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAA;IACvC,CAAC;IAED,SAAS,UAAU,CAAC,KAAe,EAAE,OAAe,EAAE,IAA8B;QAClF,OAAO;YACL,EAAE,EAAE,UAAU,EAAE;YAChB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,KAAK;YACL,OAAO;YACP,IAAI;YACJ,OAAO,EAAE,EAAE,GAAG,GAAG,EAAE,GAAG,YAAY,EAA2B;SAC9D,CAAA;IACH,CAAC;IAED,SAAS,GAAG,CAAC,KAAe,EAAE,OAAe,EAAE,IAA8B;QAC3E,IAAI,WAAW,CAAC,KAAK,CAAC,GAAG,WAAW;YAAE,OAAM;QAE5C,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;QAE9C,wBAAwB;QACxB,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,SAAS,GAAG,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK;gBACjD,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI;oBACjC,CAAC,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK;wBACnC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAA;YACf,SAAS,CAAC,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAA;QAC9D,CAAC;QAED,yCAAyC;QACzC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gBACjC,iCAAiC;YACnC,CAAC,CAAC,CAAA;QACJ,CAAC;IAEH,CAAC;IAED,MAAM,MAAM,GAAW;QACrB,KAAK,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC;QACrD,IAAI,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC;QACnD,IAAI,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC;QACnD,KAAK,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC;QAErD,gBAAgB,CAAC,KAAY,EAAE,OAAiC;YAC9D,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE;gBAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,GAAG,OAAO;aACX,CAAC,CAAA;YACF,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;gBACvB,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;YACpC,CAAC;QACH,CAAC;QAED,OAAO,CAAC,MAAc;YACpB,GAAG,CAAC,MAAM,GAAG,MAAM,CAAA;QACrB,CAAC;QAED,SAAS,CAAC,UAAkB;YAC1B,GAAG,CAAC,UAAU,GAAG,UAAU,CAAA;QAC7B,CAAC;QAED,UAAU,CAAC,GAAW,EAAE,KAAa;YACnC,CAAC;YAAC,YAAuC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;QACxD,CAAC;QAED,OAAO,CAAC,MAAkB;YACxB,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;YACnF,CAAC;YACD,OAAO,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QACtC,CAAC;QAED,UAAU,CAAC,MAAkB;YAC3B,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;YACnF,CAAC;YACD,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;YAC7C,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;QACzC,CAAC;QAED,KAAK,CAAC,KAAK;YACT,IAAI,gBAAgB,EAAE,CAAC;gBACrB,MAAM,gBAAgB,CAAC,KAAK,EAAE,CAAA;YAChC,CAAC;QACH,CAAC;QAED,KAAK,CAAC,OAAO;YACX,IAAI,gBAAgB,EAAE,CAAC;gBACrB,MAAM,gBAAgB,CAAC,OAAO,EAAE,CAAA;YAClC,CAAC;QACH,CAAC;KACF,CAAA;IAED,OAAO,MAAM,CAAA;AACf,CAAC"}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAEvD,MAAM,WAAW,GAA6B;IAC5C,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;CACT,CAAA;AAED,IAAI,OAAO,GAAG,CAAC,CAAA;AACf,SAAS,UAAU;IACjB,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;AACrC,CAAC;AAED,SAAS,iBAAiB;IACxB,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAA;AACnE,CAAC;AAED,SAAS,WAAW;IAClB,IAAI,CAAC;QACH,8DAA8D;QAC9D,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAA;QAC5C,OAAO,QAAQ,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAA;IACtD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED,SAAS,KAAK;IACZ,IAAI,CAAC;QACH,OAAO,OAAO,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAA;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAoBD,MAAM,UAAU,YAAY,CAAC,MAAoB;IAC/C,MAAM,GAAG,GAAG,KAAK,EAAE,CAAA;IACnB,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;IAC5D,MAAM,WAAW,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAA;IAEzC,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAA;IACrC,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAE9B,kBAAkB;IAClB,MAAM,GAAG,GAAe;QACtB,SAAS;QACT,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,QAAQ;KACT,CAAA;IAED,MAAM,YAAY,GAA2B,EAAE,CAAA;IAE/C,wBAAwB;IACxB,MAAM,UAAU,GAAmB,EAAE,CAAA;IACrC,IAAI,UAAU,GAA+B,IAAI,CAAA;IACjD,IAAI,gBAAgB,GAA4B,IAAI,CAAA;IAEpD,cAAc;IACd,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACtB,MAAM,QAAQ,GACZ,OAAO,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAA;QACjE,UAAU,GAAG,IAAI,mBAAmB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QACtD,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IAC7B,CAAC;IAED,iBAAiB;IACjB,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,MAAM,UAAU,GACd,OAAO,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAA;QACrD,UAAU,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC,UAAU,CAAC,CAAC,CAAA;IAChD,CAAC;IAED,oBAAoB;IACpB,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QACvD,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;IACnC,CAAC;IAED,oBAAoB;IACpB,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACtB,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAA;IACvC,CAAC;IAED,SAAS,UAAU,CAAC,KAAe,EAAE,OAAe,EAAE,IAA8B;QAClF,OAAO;YACL,EAAE,EAAE,UAAU,EAAE;YAChB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,KAAK;YACL,OAAO;YACP,IAAI;YACJ,OAAO,EAAE,EAAE,GAAG,GAAG,EAAE,GAAG,YAAY,EAA2B;SAC9D,CAAA;IACH,CAAC;IAED,SAAS,GAAG,CAAC,KAAe,EAAE,OAAe,EAAE,IAA8B;QAC3E,IAAI,WAAW,CAAC,KAAK,CAAC,GAAG,WAAW;YAAE,OAAM;QAE5C,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;QAE9C,wBAAwB;QACxB,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,SAAS,GAAG,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK;gBACjD,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI;oBACjC,CAAC,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK;wBACnC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAA;YACf,SAAS,CAAC,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAA;QAC9D,CAAC;QAED,yCAAyC;QACzC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gBACjC,iCAAiC;YACnC,CAAC,CAAC,CAAA;QACJ,CAAC;IAEH,CAAC;IAED,MAAM,MAAM,GAAW;QACrB,KAAK,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC;QACrD,IAAI,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC;QACnD,IAAI,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC;QACnD,KAAK,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC;QAErD,gBAAgB,CAAC,KAAY,EAAE,OAAiC;YAC9D,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE;gBAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,GAAG,OAAO;aACX,CAAC,CAAA;YACF,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;gBACvB,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;YACpC,CAAC;QACH,CAAC;QAED,OAAO,CAAC,MAAc;YACpB,GAAG,CAAC,MAAM,GAAG,MAAM,CAAA;QACrB,CAAC;QAED,SAAS,CAAC,UAAkB;YAC1B,GAAG,CAAC,UAAU,GAAG,UAAU,CAAA;QAC7B,CAAC;QAED,UAAU,CAAC,GAAW,EAAE,KAAa;YACnC,CAAC;YAAC,YAAuC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;QACxD,CAAC;QAED,OAAO,CAAC,MAAkB;YACxB,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;YACnF,CAAC;YACD,OAAO,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QACtC,CAAC;QAED,UAAU,CAAC,MAAkB;YAC3B,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;YACnF,CAAC;YACD,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;YAC7C,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;QACzC,CAAC;QAED,KAAK,CAAC,KAAK;YACT,IAAI,gBAAgB,EAAE,CAAC;gBACrB,MAAM,gBAAgB,CAAC,KAAK,EAAE,CAAA;YAChC,CAAC;QACH,CAAC;QAED,KAAK,CAAC,OAAO;YACX,IAAI,gBAAgB,EAAE,CAAC;gBACrB,MAAM,gBAAgB,CAAC,OAAO,EAAE,CAAA;YAClC,CAAC;QACH,CAAC;KACF,CAAA;IAED,OAAO,MAAM,CAAA;AACf,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { DevToolsLogPanelProps } from './types';
2
+ export declare function DevToolsLogPanel({ title, testID, }: DevToolsLogPanelProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=DevToolsLogPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DevToolsLogPanel.d.ts","sourceRoot":"","sources":["../../src/ui/DevToolsLogPanel.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAGrD,wBAAgB,gBAAgB,CAAC,EAC/B,KAAmB,EACnB,MAAM,GACP,EAAE,qBAAqB,2CAqCvB"}
@@ -0,0 +1,18 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect } from 'react';
3
+ import { Text, View } from 'react-native';
4
+ import { LogExportButton } from './LogExportButton';
5
+ import { LogFilterBar } from './LogFilterBar';
6
+ import { LogViewer } from './LogViewer';
7
+ import { useLogViewer } from './useLogViewer';
8
+ export function DevToolsLogPanel({ title = 'Dev Tools', testID, }) {
9
+ const { entries, filter, refresh, setLevelFilter, exportLogs } = useLogViewer();
10
+ useEffect(() => {
11
+ refresh();
12
+ }, [refresh]);
13
+ return (_jsxs(View, { className: "flex-1", testID: testID, children: [_jsxs(View, { className: "flex-row items-center justify-between px-4 py-2", children: [_jsx(Text, { className: "text-xl font-bold text-neutral-900 dark:text-neutral-100", children: title }), _jsx(LogExportButton, { getExportData: exportLogs, testID: testID ? `${testID}-export` : undefined })] }), _jsx(LogFilterBar, { activeLevel: filter.level, onSelectLevel: (level) => {
14
+ setLevelFilter(level);
15
+ setTimeout(refresh, 0);
16
+ }, testID: testID ? `${testID}-filter` : undefined }), _jsxs(Text, { className: "px-4 py-1 text-xs text-neutral-500 dark:text-neutral-400", children: [entries.length, " entries"] }), _jsx(LogViewer, { entries: entries, testID: testID ? `${testID}-viewer` : undefined })] }));
17
+ }
18
+ //# sourceMappingURL=DevToolsLogPanel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DevToolsLogPanel.js","sourceRoot":"","sources":["../../src/ui/DevToolsLogPanel.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,UAAU,gBAAgB,CAAC,EAC/B,KAAK,GAAG,WAAW,EACnB,MAAM,GACgB;IACtB,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,GAC5D,YAAY,EAAE,CAAC;IAEjB,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,EAAE,CAAC;IACZ,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,OAAO,CACL,MAAC,IAAI,IAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAE,MAAM,aACrC,MAAC,IAAI,IAAC,SAAS,EAAC,iDAAiD,aAC/D,KAAC,IAAI,IAAC,SAAS,EAAC,0DAA0D,YAAE,KAAK,GAAQ,EACzF,KAAC,eAAe,IACd,aAAa,EAAE,UAAU,EACzB,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,SAAS,CAAC,CAAC,CAAC,SAAS,GAC/C,IACG,EAEP,KAAC,YAAY,IACX,WAAW,EAAE,MAAM,CAAC,KAAK,EACzB,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE;oBACvB,cAAc,CAAC,KAAK,CAAC,CAAC;oBACtB,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;gBACzB,CAAC,EACD,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,SAAS,CAAC,CAAC,CAAC,SAAS,GAC/C,EAEF,MAAC,IAAI,IAAC,SAAS,EAAC,0DAA0D,aACvE,OAAO,CAAC,MAAM,gBACV,EAEP,KAAC,SAAS,IACR,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,SAAS,CAAC,CAAC,CAAC,SAAS,GAC/C,IACG,CACR,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { LogEntryRowProps } from './types';
2
+ export declare function LogEntryRow({ entry, testID }: LogEntryRowProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=LogEntryRow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LogEntryRow.d.ts","sourceRoot":"","sources":["../../src/ui/LogEntryRow.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAgBhD,wBAAgB,WAAW,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,gBAAgB,2CAwB9D"}
@@ -0,0 +1,21 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Text, View } from 'react-native';
3
+ const LEVEL_COLORS = {
4
+ debug: 'text-neutral-600 dark:text-neutral-300',
5
+ info: 'text-blue-600 dark:text-blue-400',
6
+ warn: 'text-warning-600 dark:text-warning-400',
7
+ error: 'text-danger-600 dark:text-danger-400',
8
+ };
9
+ const LEVEL_BG = {
10
+ debug: 'bg-neutral-50 dark:bg-neutral-900',
11
+ info: 'bg-blue-50 dark:bg-blue-900/30',
12
+ warn: 'bg-warning-50 dark:bg-warning-900/30',
13
+ error: 'bg-danger-50 dark:bg-danger-900/30',
14
+ };
15
+ export function LogEntryRow({ entry, testID }) {
16
+ const time = new Date(entry.timestamp).toLocaleTimeString();
17
+ const levelColor = LEVEL_COLORS[entry.level] ?? 'text-neutral-500 dark:text-neutral-400';
18
+ const bgColor = LEVEL_BG[entry.level] ?? 'bg-neutral-100 dark:bg-neutral-800';
19
+ return (_jsxs(View, { className: `border-b border-neutral-200 dark:border-neutral-700 px-4 py-2 ${bgColor}`, testID: testID, children: [_jsxs(View, { className: "flex-row items-center justify-between", children: [_jsx(Text, { className: `text-xs font-bold uppercase ${levelColor}`, children: entry.level }), _jsx(Text, { className: "text-xs text-neutral-500 dark:text-neutral-400", children: time })] }), _jsx(Text, { className: "mt-1 text-sm text-neutral-900 dark:text-neutral-100", children: entry.message }), entry.data && (_jsx(Text, { className: "mt-1 font-mono text-xs text-neutral-500 dark:text-neutral-400", children: JSON.stringify(entry.data, null, 2).slice(0, 200) }))] }));
20
+ }
21
+ //# sourceMappingURL=LogEntryRow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LogEntryRow.js","sourceRoot":"","sources":["../../src/ui/LogEntryRow.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAG1C,MAAM,YAAY,GAA2B;IAC3C,KAAK,EAAE,wCAAwC;IAC/C,IAAI,EAAE,kCAAkC;IACxC,IAAI,EAAE,wCAAwC;IAC9C,KAAK,EAAE,sCAAsC;CAC9C,CAAC;AAEF,MAAM,QAAQ,GAA2B;IACvC,KAAK,EAAE,mCAAmC;IAC1C,IAAI,EAAE,gCAAgC;IACtC,IAAI,EAAE,sCAAsC;IAC5C,KAAK,EAAE,oCAAoC;CAC5C,CAAC;AAEF,MAAM,UAAU,WAAW,CAAC,EAAE,KAAK,EAAE,MAAM,EAAoB;IAC7D,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,kBAAkB,EAAE,CAAC;IAC5D,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,wCAAwC,CAAC;IACzF,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,oCAAoC,CAAC;IAE9E,OAAO,CACL,MAAC,IAAI,IACH,SAAS,EAAE,iEAAiE,OAAO,EAAE,EACrF,MAAM,EAAE,MAAM,aAEd,MAAC,IAAI,IAAC,SAAS,EAAC,uCAAuC,aACrD,KAAC,IAAI,IAAC,SAAS,EAAE,+BAA+B,UAAU,EAAE,YACzD,KAAK,CAAC,KAAK,GACP,EACP,KAAC,IAAI,IAAC,SAAS,EAAC,gDAAgD,YAAE,IAAI,GAAQ,IACzE,EACP,KAAC,IAAI,IAAC,SAAS,EAAC,qDAAqD,YAAE,KAAK,CAAC,OAAO,GAAQ,EAC3F,KAAK,CAAC,IAAI,IAAI,CACb,KAAC,IAAI,IAAC,SAAS,EAAC,+DAA+D,YAC5E,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAC7C,CACR,IACI,CACR,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { LogExportButtonProps } from './types';
2
+ export declare function LogExportButton({ getExportData, label, testID, }: LogExportButtonProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=LogExportButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LogExportButton.d.ts","sourceRoot":"","sources":["../../src/ui/LogExportButton.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEpD,wBAAgB,eAAe,CAAC,EAC9B,aAAa,EACb,KAAqB,EACrB,MAAM,GACP,EAAE,oBAAoB,2CAwBtB"}
@@ -0,0 +1,18 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Pressable, Share, Text } from 'react-native';
3
+ export function LogExportButton({ getExportData, label = 'Export Logs', testID, }) {
4
+ const handleExport = async () => {
5
+ const data = getExportData();
6
+ try {
7
+ await Share.share({
8
+ message: data,
9
+ title: 'App Logs',
10
+ });
11
+ }
12
+ catch {
13
+ // Share cancelled or failed
14
+ }
15
+ };
16
+ return (_jsx(Pressable, { onPress: handleExport, className: "rounded-lg bg-primary-500 dark:bg-primary-600 px-4 py-2 active:bg-primary-600 dark:active:bg-primary-700", testID: testID, children: _jsx(Text, { className: "text-sm font-semibold text-white", children: label }) }));
17
+ }
18
+ //# sourceMappingURL=LogExportButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LogExportButton.js","sourceRoot":"","sources":["../../src/ui/LogExportButton.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAGtD,MAAM,UAAU,eAAe,CAAC,EAC9B,aAAa,EACb,KAAK,GAAG,aAAa,EACrB,MAAM,GACe;IACrB,MAAM,YAAY,GAAG,KAAK,IAAI,EAAE;QAC9B,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,KAAK,CAAC,KAAK,CAAC;gBAChB,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,UAAU;aAClB,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,4BAA4B;QAC9B,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,KAAC,SAAS,IACR,OAAO,EAAE,YAAY,EACrB,SAAS,EAAC,0GAA0G,EACpH,MAAM,EAAE,MAAM,YAEd,KAAC,IAAI,IAAC,SAAS,EAAC,kCAAkC,YAC/C,KAAK,GACD,GACG,CACb,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { LogFilterBarProps } from './types';
2
+ export declare function LogFilterBar({ activeLevel, onSelectLevel, testID, }: LogFilterBarProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=LogFilterBar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LogFilterBar.d.ts","sourceRoot":"","sources":["../../src/ui/LogFilterBar.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAIjD,wBAAgB,YAAY,CAAC,EAC3B,WAAW,EACX,aAAa,EACb,MAAM,GACP,EAAE,iBAAiB,2CA+BnB"}
@@ -0,0 +1,14 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Pressable, Text, View } from 'react-native';
3
+ const LEVELS = ['all', 'debug', 'info', 'warn', 'error'];
4
+ export function LogFilterBar({ activeLevel, onSelectLevel, testID, }) {
5
+ return (_jsx(View, { className: "flex-row gap-2 px-4 py-3 border-b border-neutral-200 dark:border-neutral-800", testID: testID, children: LEVELS.map((level) => {
6
+ const isActive = level === 'all' ? !activeLevel : activeLevel === level;
7
+ return (_jsx(Pressable, { onPress: () => onSelectLevel(level === 'all' ? undefined : level), className: `rounded-full px-3 py-1.5 ${isActive
8
+ ? 'bg-primary-500 dark:bg-primary-600'
9
+ : 'bg-neutral-100 dark:bg-neutral-800 border border-neutral-300 dark:border-neutral-600'}`, testID: testID ? `${testID}-${level}` : undefined, children: _jsx(Text, { className: `text-xs font-semibold uppercase ${isActive
10
+ ? 'text-white'
11
+ : 'text-neutral-600 dark:text-neutral-300'}`, children: level }) }, level));
12
+ }) }));
13
+ }
14
+ //# sourceMappingURL=LogFilterBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LogFilterBar.js","sourceRoot":"","sources":["../../src/ui/LogFilterBar.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAIrD,MAAM,MAAM,GAAyB,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAE/E,MAAM,UAAU,YAAY,CAAC,EAC3B,WAAW,EACX,aAAa,EACb,MAAM,GACY;IAClB,OAAO,CACL,KAAC,IAAI,IAAC,SAAS,EAAC,8EAA8E,EAAC,MAAM,EAAE,MAAM,YAC1G,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACpB,MAAM,QAAQ,GACZ,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,KAAK,KAAK,CAAC;YACzD,OAAO,CACL,KAAC,SAAS,IAER,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,EACjE,SAAS,EAAE,4BACT,QAAQ;oBACN,CAAC,CAAC,oCAAoC;oBACtC,CAAC,CAAC,sFACN,EAAE,EACF,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,YAEjD,KAAC,IAAI,IACH,SAAS,EAAE,mCACT,QAAQ;wBACN,CAAC,CAAC,YAAY;wBACd,CAAC,CAAC,wCACN,EAAE,YAED,KAAK,GACD,IAjBF,KAAK,CAkBA,CACb,CAAC;QACJ,CAAC,CAAC,GACG,CACR,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { LogViewerProps } from './types';
2
+ export declare function LogViewer({ entries, testID }: LogViewerProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=LogViewer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LogViewer.d.ts","sourceRoot":"","sources":["../../src/ui/LogViewer.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,wBAAgB,SAAS,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,cAAc,2CAU5D"}
@@ -0,0 +1,7 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { FlatList, View } from 'react-native';
3
+ import { LogEntryRow } from './LogEntryRow';
4
+ export function LogViewer({ entries, testID }) {
5
+ return (_jsx(View, { className: "flex-1", testID: testID, children: _jsx(FlatList, { data: entries, renderItem: ({ item }) => _jsx(LogEntryRow, { entry: item }), keyExtractor: (item) => item.id }) }));
6
+ }
7
+ //# sourceMappingURL=LogViewer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LogViewer.js","sourceRoot":"","sources":["../../src/ui/LogViewer.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,MAAM,UAAU,SAAS,CAAC,EAAE,OAAO,EAAE,MAAM,EAAkB;IAC3D,OAAO,CACL,KAAC,IAAI,IAAC,SAAS,EAAC,QAAQ,EAAC,MAAM,EAAE,MAAM,YACrC,KAAC,QAAQ,IACP,IAAI,EAAE,OAAO,EACb,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,KAAC,WAAW,IAAC,KAAK,EAAE,IAAI,GAAI,EACtD,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,GAC/B,GACG,CACR,CAAC;AACJ,CAAC"}
@@ -0,0 +1,8 @@
1
+ export { LogEntryRow } from './LogEntryRow';
2
+ export { LogFilterBar } from './LogFilterBar';
3
+ export { LogExportButton } from './LogExportButton';
4
+ export { LogViewer } from './LogViewer';
5
+ export { DevToolsLogPanel } from './DevToolsLogPanel';
6
+ export { useLogViewer } from './useLogViewer';
7
+ export type { LogEntryRowProps, LogFilterBarProps, LogExportButtonProps, LogViewerProps, DevToolsLogPanelProps, UseLogViewerReturn, } from './types';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,YAAY,EACV,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACd,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,SAAS,CAAC"}
@@ -0,0 +1,9 @@
1
+ // Components
2
+ export { LogEntryRow } from './LogEntryRow';
3
+ export { LogFilterBar } from './LogFilterBar';
4
+ export { LogExportButton } from './LogExportButton';
5
+ export { LogViewer } from './LogViewer';
6
+ export { DevToolsLogPanel } from './DevToolsLogPanel';
7
+ // Hooks
8
+ export { useLogViewer } from './useLogViewer';
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,QAAQ;AACR,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,33 @@
1
+ import type { LogEntry, LogFilter, LogLevel } from '../types';
2
+ export interface LogEntryRowProps {
3
+ entry: LogEntry;
4
+ testID?: string;
5
+ }
6
+ export interface LogFilterBarProps {
7
+ activeLevel: LogLevel | undefined;
8
+ onSelectLevel: (level: LogLevel | undefined) => void;
9
+ testID?: string;
10
+ }
11
+ export interface LogExportButtonProps {
12
+ getExportData: () => string;
13
+ label?: string;
14
+ testID?: string;
15
+ }
16
+ export interface LogViewerProps {
17
+ entries: LogEntry[];
18
+ testID?: string;
19
+ }
20
+ export interface DevToolsLogPanelProps {
21
+ title?: string;
22
+ testID?: string;
23
+ }
24
+ export interface UseLogViewerReturn {
25
+ entries: LogEntry[];
26
+ filter: LogFilter;
27
+ refresh: () => void;
28
+ setLevelFilter: (level: LogLevel | undefined) => void;
29
+ setSearchFilter: (search: string | undefined) => void;
30
+ exportLogs: () => string;
31
+ }
32
+ export type { LogEntry, LogFilter, LogLevel };
33
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/ui/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAE9D,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,QAAQ,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,QAAQ,GAAG,SAAS,CAAC;IAClC,aAAa,EAAE,CAAC,KAAK,EAAE,QAAQ,GAAG,SAAS,KAAK,IAAI,CAAC;IACrD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE,MAAM,MAAM,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,QAAQ,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,QAAQ,EAAE,CAAC;IACpB,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,cAAc,EAAE,CAAC,KAAK,EAAE,QAAQ,GAAG,SAAS,KAAK,IAAI,CAAC;IACtD,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC;IACtD,UAAU,EAAE,MAAM,MAAM,CAAC;CAC1B;AAED,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/ui/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ import type { UseLogViewerReturn } from './types';
2
+ export declare function useLogViewer(): UseLogViewerReturn;
3
+ //# sourceMappingURL=useLogViewer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLogViewer.d.ts","sourceRoot":"","sources":["../../src/ui/useLogViewer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD,wBAAgB,YAAY,IAAI,kBAAkB,CAsCjD"}
@@ -0,0 +1,39 @@
1
+ import { useCallback, useState } from 'react';
2
+ import { useLogger } from '../context/logging-provider';
3
+ export function useLogViewer() {
4
+ const logger = useLogger();
5
+ const [filter, setFilter] = useState({});
6
+ const [entries, setEntries] = useState([]);
7
+ const refresh = useCallback(() => {
8
+ try {
9
+ const logs = logger.getLogs(filter);
10
+ setEntries(logs);
11
+ }
12
+ catch {
13
+ setEntries([]);
14
+ }
15
+ }, [logger, filter]);
16
+ const setLevelFilter = useCallback((level) => {
17
+ setFilter((prev) => ({ ...prev, level }));
18
+ }, []);
19
+ const setSearchFilter = useCallback((search) => {
20
+ setFilter((prev) => ({ ...prev, search: search || undefined }));
21
+ }, []);
22
+ const exportLogs = useCallback(() => {
23
+ try {
24
+ return logger.exportLogs(filter);
25
+ }
26
+ catch {
27
+ return '[]';
28
+ }
29
+ }, [logger, filter]);
30
+ return {
31
+ entries,
32
+ filter,
33
+ refresh,
34
+ setLevelFilter,
35
+ setSearchFilter,
36
+ exportLogs,
37
+ };
38
+ }
39
+ //# sourceMappingURL=useLogViewer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLogViewer.js","sourceRoot":"","sources":["../../src/ui/useLogViewer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAIxD,MAAM,UAAU,YAAY;IAC1B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAY,EAAE,CAAC,CAAC;IACpD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAa,EAAE,CAAC,CAAC;IAEvD,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE;QAC/B,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACpC,UAAU,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;QAAC,MAAM,CAAC;YACP,UAAU,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;IACH,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAErB,MAAM,cAAc,GAAG,WAAW,CAAC,CAAC,KAA2B,EAAE,EAAE;QACjE,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IAC5C,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,eAAe,GAAG,WAAW,CAAC,CAAC,MAA0B,EAAE,EAAE;QACjE,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC;IAClE,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,UAAU,GAAG,WAAW,CAAC,GAAW,EAAE;QAC1C,IAAI,CAAC;YACH,OAAO,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACnC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAErB,OAAO;QACL,OAAO;QACP,MAAM;QACN,OAAO;QACP,cAAc;QACd,eAAe;QACf,UAAU;KACX,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,11 +1,12 @@
1
1
  {
2
2
  "name": "@mongrov/core",
3
- "version": "0.2.0",
4
- "description": "Structured logging for React Native / Expo — ring buffer, file, and webhook transports with offline queue",
3
+ "version": "0.4.0",
4
+ "description": "Structured logging for React Native / Expo — ring buffer, file, and webhook transports with offline queue. Includes dev-tools UI components.",
5
5
  "license": "MIT",
6
6
  "repository": {
7
7
  "type": "git",
8
- "url": "https://github.com/mongrov/mongrov-core.git"
8
+ "url": "https://github.com/mongrov/mongrov-packages.git",
9
+ "directory": "packages/core"
9
10
  },
10
11
  "keywords": [
11
12
  "react-native",
@@ -14,7 +15,8 @@
14
15
  "structured-logging",
15
16
  "ring-buffer",
16
17
  "webhook",
17
- "offline-queue"
18
+ "offline-queue",
19
+ "dev-tools"
18
20
  ],
19
21
  "engines": {
20
22
  "node": ">=18"
@@ -26,6 +28,11 @@
26
28
  "types": "./dist/index.d.ts",
27
29
  "import": "./dist/index.js",
28
30
  "default": "./dist/index.js"
31
+ },
32
+ "./ui": {
33
+ "types": "./dist/ui/index.d.ts",
34
+ "import": "./dist/ui/index.js",
35
+ "default": "./dist/ui/index.js"
29
36
  }
30
37
  },
31
38
  "files": [
@@ -34,18 +41,20 @@
34
41
  "scripts": {
35
42
  "build": "tsc -p tsconfig.build.json",
36
43
  "clean": "rm -rf dist",
37
- "prebuild": "npm run clean",
38
- "prepublishOnly": "npm run build",
39
- "test": "jest",
44
+ "prebuild": "pnpm run clean",
45
+ "test": "jest --coverage",
40
46
  "test:watch": "jest --watch",
41
- "typecheck": "tsc --noEmit"
47
+ "typecheck": "tsc --noEmit",
48
+ "prepublishOnly": "pnpm run build"
42
49
  },
43
50
  "peerDependencies": {
44
51
  "expo-file-system": ">=17",
45
52
  "expo-network": ">=6",
46
53
  "react": ">=18",
47
54
  "react-native": ">=0.74",
48
- "react-native-mmkv": ">=3"
55
+ "react-native-mmkv": ">=3",
56
+ "expo-router": ">=4",
57
+ "uniwind": ">=1"
49
58
  },
50
59
  "peerDependenciesMeta": {
51
60
  "expo-file-system": {
@@ -56,6 +65,12 @@
56
65
  },
57
66
  "react-native-mmkv": {
58
67
  "optional": true
68
+ },
69
+ "expo-router": {
70
+ "optional": true
71
+ },
72
+ "uniwind": {
73
+ "optional": true
59
74
  }
60
75
  },
61
76
  "devDependencies": {
@@ -67,7 +82,9 @@
67
82
  "react": "^18.2.0",
68
83
  "react-dom": "^18.3.1",
69
84
  "react-native": "^0.74.0",
85
+ "react-test-renderer": "^18.2.0",
70
86
  "ts-jest": "^29.1.2",
71
- "typescript": "^5.4.0"
87
+ "typescript": "^5.9.3",
88
+ "uniwind": "^1.6.1"
72
89
  }
73
90
  }