pumaguard 20.post192__py3-none-any.whl → 20.post227__py3-none-any.whl

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.
@@ -433,18 +433,20 @@ class CompiledApp {
433
433
  _1342: f => finalizeWrapper(f, function(x0) { return dartInstance.exports._1342(f,arguments.length,x0) }),
434
434
  _1343: x0 => x0.send(),
435
435
  _1344: () => new XMLHttpRequest(),
436
- _1345: (x0,x1) => x0.querySelector(x1),
437
- _1346: (x0,x1) => x0.createElement(x1),
438
- _1358: x0 => x0.click(),
439
- _1360: Date.now,
440
- _1362: s => new Date(s * 1000).getTimezoneOffset() * 60,
441
- _1363: s => {
436
+ _1345: (x0,x1) => x0.getItem(x1),
437
+ _1347: (x0,x1,x2) => x0.setItem(x1,x2),
438
+ _1348: (x0,x1) => x0.querySelector(x1),
439
+ _1349: (x0,x1) => x0.createElement(x1),
440
+ _1361: x0 => x0.click(),
441
+ _1363: Date.now,
442
+ _1365: s => new Date(s * 1000).getTimezoneOffset() * 60,
443
+ _1366: s => {
442
444
  if (!/^\s*[+-]?(?:Infinity|NaN|(?:\.\d+|\d+(?:\.\d*)?)(?:[eE][+-]?\d+)?)\s*$/.test(s)) {
443
445
  return NaN;
444
446
  }
445
447
  return parseFloat(s);
446
448
  },
447
- _1364: () => {
449
+ _1367: () => {
448
450
  let stackString = new Error().stack.toString();
449
451
  let frames = stackString.split('\n');
450
452
  let drop = 2;
@@ -453,51 +455,52 @@ class CompiledApp {
453
455
  }
454
456
  return frames.slice(drop).join('\n');
455
457
  },
456
- _1365: () => typeof dartUseDateNowForTicks !== "undefined",
457
- _1366: () => 1000 * performance.now(),
458
- _1367: () => Date.now(),
459
- _1368: () => {
458
+ _1368: () => typeof dartUseDateNowForTicks !== "undefined",
459
+ _1369: () => 1000 * performance.now(),
460
+ _1370: () => Date.now(),
461
+ _1371: () => {
460
462
  // On browsers return `globalThis.location.href`
461
463
  if (globalThis.location != null) {
462
464
  return globalThis.location.href;
463
465
  }
464
466
  return null;
465
467
  },
466
- _1369: () => {
468
+ _1372: () => {
467
469
  return typeof process != "undefined" &&
468
470
  Object.prototype.toString.call(process) == "[object process]" &&
469
471
  process.platform == "win32"
470
472
  },
471
- _1370: () => new WeakMap(),
472
- _1371: (map, o) => map.get(o),
473
- _1372: (map, o, v) => map.set(o, v),
474
- _1373: x0 => new WeakRef(x0),
475
- _1374: x0 => x0.deref(),
476
- _1381: () => globalThis.WeakRef,
477
- _1385: s => JSON.stringify(s),
478
- _1386: s => printToConsole(s),
479
- _1387: (o, p, r) => o.replaceAll(p, () => r),
480
- _1389: Function.prototype.call.bind(String.prototype.toLowerCase),
481
- _1390: s => s.toUpperCase(),
482
- _1391: s => s.trim(),
483
- _1392: s => s.trimLeft(),
484
- _1393: s => s.trimRight(),
485
- _1394: (string, times) => string.repeat(times),
486
- _1395: Function.prototype.call.bind(String.prototype.indexOf),
487
- _1396: (s, p, i) => s.lastIndexOf(p, i),
488
- _1397: (string, token) => string.split(token),
489
- _1398: Object.is,
490
- _1399: o => o instanceof Array,
491
- _1400: (a, i) => a.push(i),
492
- _1404: a => a.pop(),
493
- _1405: (a, i) => a.splice(i, 1),
494
- _1406: (a, s) => a.join(s),
495
- _1407: (a, s, e) => a.slice(s, e),
496
- _1409: (a, b) => a == b ? 0 : (a > b ? 1 : -1),
497
- _1410: a => a.length,
498
- _1412: (a, i) => a[i],
499
- _1413: (a, i, v) => a[i] = v,
500
- _1415: o => {
473
+ _1373: () => new WeakMap(),
474
+ _1374: (map, o) => map.get(o),
475
+ _1375: (map, o, v) => map.set(o, v),
476
+ _1376: x0 => new WeakRef(x0),
477
+ _1377: x0 => x0.deref(),
478
+ _1384: () => globalThis.WeakRef,
479
+ _1388: s => JSON.stringify(s),
480
+ _1389: s => printToConsole(s),
481
+ _1390: (o, p, r) => o.replaceAll(p, () => r),
482
+ _1391: (o, p, r) => o.replace(p, () => r),
483
+ _1392: Function.prototype.call.bind(String.prototype.toLowerCase),
484
+ _1393: s => s.toUpperCase(),
485
+ _1394: s => s.trim(),
486
+ _1395: s => s.trimLeft(),
487
+ _1396: s => s.trimRight(),
488
+ _1397: (string, times) => string.repeat(times),
489
+ _1398: Function.prototype.call.bind(String.prototype.indexOf),
490
+ _1399: (s, p, i) => s.lastIndexOf(p, i),
491
+ _1400: (string, token) => string.split(token),
492
+ _1401: Object.is,
493
+ _1402: o => o instanceof Array,
494
+ _1403: (a, i) => a.push(i),
495
+ _1407: a => a.pop(),
496
+ _1408: (a, i) => a.splice(i, 1),
497
+ _1409: (a, s) => a.join(s),
498
+ _1410: (a, s, e) => a.slice(s, e),
499
+ _1412: (a, b) => a == b ? 0 : (a > b ? 1 : -1),
500
+ _1413: a => a.length,
501
+ _1415: (a, i) => a[i],
502
+ _1416: (a, i, v) => a[i] = v,
503
+ _1418: o => {
501
504
  if (o instanceof ArrayBuffer) return 0;
502
505
  if (globalThis.SharedArrayBuffer !== undefined &&
503
506
  o instanceof SharedArrayBuffer) {
@@ -505,105 +508,105 @@ class CompiledApp {
505
508
  }
506
509
  return 2;
507
510
  },
508
- _1416: (o, offsetInBytes, lengthInBytes) => {
511
+ _1419: (o, offsetInBytes, lengthInBytes) => {
509
512
  var dst = new ArrayBuffer(lengthInBytes);
510
513
  new Uint8Array(dst).set(new Uint8Array(o, offsetInBytes, lengthInBytes));
511
514
  return new DataView(dst);
512
515
  },
513
- _1418: o => o instanceof Uint8Array,
514
- _1419: (o, start, length) => new Uint8Array(o.buffer, o.byteOffset + start, length),
515
- _1420: o => o instanceof Int8Array,
516
- _1421: (o, start, length) => new Int8Array(o.buffer, o.byteOffset + start, length),
517
- _1422: o => o instanceof Uint8ClampedArray,
518
- _1423: (o, start, length) => new Uint8ClampedArray(o.buffer, o.byteOffset + start, length),
519
- _1424: o => o instanceof Uint16Array,
520
- _1425: (o, start, length) => new Uint16Array(o.buffer, o.byteOffset + start, length),
521
- _1426: o => o instanceof Int16Array,
522
- _1427: (o, start, length) => new Int16Array(o.buffer, o.byteOffset + start, length),
523
- _1428: o => o instanceof Uint32Array,
524
- _1429: (o, start, length) => new Uint32Array(o.buffer, o.byteOffset + start, length),
525
- _1430: o => o instanceof Int32Array,
526
- _1431: (o, start, length) => new Int32Array(o.buffer, o.byteOffset + start, length),
527
- _1433: (o, start, length) => new BigInt64Array(o.buffer, o.byteOffset + start, length),
528
- _1434: o => o instanceof Float32Array,
529
- _1435: (o, start, length) => new Float32Array(o.buffer, o.byteOffset + start, length),
530
- _1436: o => o instanceof Float64Array,
531
- _1437: (o, start, length) => new Float64Array(o.buffer, o.byteOffset + start, length),
532
- _1438: (t, s) => t.set(s),
533
- _1440: (o) => new DataView(o.buffer, o.byteOffset, o.byteLength),
534
- _1442: o => o.buffer,
535
- _1443: o => o.byteOffset,
536
- _1444: Function.prototype.call.bind(Object.getOwnPropertyDescriptor(DataView.prototype, 'byteLength').get),
537
- _1445: (b, o) => new DataView(b, o),
538
- _1446: (b, o, l) => new DataView(b, o, l),
539
- _1447: Function.prototype.call.bind(DataView.prototype.getUint8),
540
- _1448: Function.prototype.call.bind(DataView.prototype.setUint8),
541
- _1449: Function.prototype.call.bind(DataView.prototype.getInt8),
542
- _1450: Function.prototype.call.bind(DataView.prototype.setInt8),
543
- _1451: Function.prototype.call.bind(DataView.prototype.getUint16),
544
- _1452: Function.prototype.call.bind(DataView.prototype.setUint16),
545
- _1453: Function.prototype.call.bind(DataView.prototype.getInt16),
546
- _1454: Function.prototype.call.bind(DataView.prototype.setInt16),
547
- _1455: Function.prototype.call.bind(DataView.prototype.getUint32),
548
- _1456: Function.prototype.call.bind(DataView.prototype.setUint32),
549
- _1457: Function.prototype.call.bind(DataView.prototype.getInt32),
550
- _1458: Function.prototype.call.bind(DataView.prototype.setInt32),
551
- _1461: Function.prototype.call.bind(DataView.prototype.getBigInt64),
552
- _1462: Function.prototype.call.bind(DataView.prototype.setBigInt64),
553
- _1463: Function.prototype.call.bind(DataView.prototype.getFloat32),
554
- _1464: Function.prototype.call.bind(DataView.prototype.setFloat32),
555
- _1465: Function.prototype.call.bind(DataView.prototype.getFloat64),
556
- _1466: Function.prototype.call.bind(DataView.prototype.setFloat64),
557
- _1479: (ms, c) =>
516
+ _1421: o => o instanceof Uint8Array,
517
+ _1422: (o, start, length) => new Uint8Array(o.buffer, o.byteOffset + start, length),
518
+ _1423: o => o instanceof Int8Array,
519
+ _1424: (o, start, length) => new Int8Array(o.buffer, o.byteOffset + start, length),
520
+ _1425: o => o instanceof Uint8ClampedArray,
521
+ _1426: (o, start, length) => new Uint8ClampedArray(o.buffer, o.byteOffset + start, length),
522
+ _1427: o => o instanceof Uint16Array,
523
+ _1428: (o, start, length) => new Uint16Array(o.buffer, o.byteOffset + start, length),
524
+ _1429: o => o instanceof Int16Array,
525
+ _1430: (o, start, length) => new Int16Array(o.buffer, o.byteOffset + start, length),
526
+ _1431: o => o instanceof Uint32Array,
527
+ _1432: (o, start, length) => new Uint32Array(o.buffer, o.byteOffset + start, length),
528
+ _1433: o => o instanceof Int32Array,
529
+ _1434: (o, start, length) => new Int32Array(o.buffer, o.byteOffset + start, length),
530
+ _1436: (o, start, length) => new BigInt64Array(o.buffer, o.byteOffset + start, length),
531
+ _1437: o => o instanceof Float32Array,
532
+ _1438: (o, start, length) => new Float32Array(o.buffer, o.byteOffset + start, length),
533
+ _1439: o => o instanceof Float64Array,
534
+ _1440: (o, start, length) => new Float64Array(o.buffer, o.byteOffset + start, length),
535
+ _1441: (t, s) => t.set(s),
536
+ _1443: (o) => new DataView(o.buffer, o.byteOffset, o.byteLength),
537
+ _1445: o => o.buffer,
538
+ _1446: o => o.byteOffset,
539
+ _1447: Function.prototype.call.bind(Object.getOwnPropertyDescriptor(DataView.prototype, 'byteLength').get),
540
+ _1448: (b, o) => new DataView(b, o),
541
+ _1449: (b, o, l) => new DataView(b, o, l),
542
+ _1450: Function.prototype.call.bind(DataView.prototype.getUint8),
543
+ _1451: Function.prototype.call.bind(DataView.prototype.setUint8),
544
+ _1452: Function.prototype.call.bind(DataView.prototype.getInt8),
545
+ _1453: Function.prototype.call.bind(DataView.prototype.setInt8),
546
+ _1454: Function.prototype.call.bind(DataView.prototype.getUint16),
547
+ _1455: Function.prototype.call.bind(DataView.prototype.setUint16),
548
+ _1456: Function.prototype.call.bind(DataView.prototype.getInt16),
549
+ _1457: Function.prototype.call.bind(DataView.prototype.setInt16),
550
+ _1458: Function.prototype.call.bind(DataView.prototype.getUint32),
551
+ _1459: Function.prototype.call.bind(DataView.prototype.setUint32),
552
+ _1460: Function.prototype.call.bind(DataView.prototype.getInt32),
553
+ _1461: Function.prototype.call.bind(DataView.prototype.setInt32),
554
+ _1464: Function.prototype.call.bind(DataView.prototype.getBigInt64),
555
+ _1465: Function.prototype.call.bind(DataView.prototype.setBigInt64),
556
+ _1466: Function.prototype.call.bind(DataView.prototype.getFloat32),
557
+ _1467: Function.prototype.call.bind(DataView.prototype.setFloat32),
558
+ _1468: Function.prototype.call.bind(DataView.prototype.getFloat64),
559
+ _1469: Function.prototype.call.bind(DataView.prototype.setFloat64),
560
+ _1482: (ms, c) =>
558
561
  setTimeout(() => dartInstance.exports.$invokeCallback(c),ms),
559
- _1480: (handle) => clearTimeout(handle),
560
- _1481: (ms, c) =>
562
+ _1483: (handle) => clearTimeout(handle),
563
+ _1484: (ms, c) =>
561
564
  setInterval(() => dartInstance.exports.$invokeCallback(c), ms),
562
- _1482: (handle) => clearInterval(handle),
563
- _1483: (c) =>
565
+ _1485: (handle) => clearInterval(handle),
566
+ _1486: (c) =>
564
567
  queueMicrotask(() => dartInstance.exports.$invokeCallback(c)),
565
- _1484: () => Date.now(),
566
- _1485: (s, m) => {
568
+ _1487: () => Date.now(),
569
+ _1488: (s, m) => {
567
570
  try {
568
571
  return new RegExp(s, m);
569
572
  } catch (e) {
570
573
  return String(e);
571
574
  }
572
575
  },
573
- _1486: (x0,x1) => x0.exec(x1),
574
- _1487: (x0,x1) => x0.test(x1),
575
- _1488: x0 => x0.pop(),
576
- _1490: o => o === undefined,
577
- _1492: o => typeof o === 'function' && o[jsWrappedDartFunctionSymbol] === true,
578
- _1494: o => {
576
+ _1489: (x0,x1) => x0.exec(x1),
577
+ _1490: (x0,x1) => x0.test(x1),
578
+ _1491: x0 => x0.pop(),
579
+ _1493: o => o === undefined,
580
+ _1495: o => typeof o === 'function' && o[jsWrappedDartFunctionSymbol] === true,
581
+ _1497: o => {
579
582
  const proto = Object.getPrototypeOf(o);
580
583
  return proto === Object.prototype || proto === null;
581
584
  },
582
- _1495: o => o instanceof RegExp,
583
- _1496: (l, r) => l === r,
584
- _1497: o => o,
585
- _1498: o => o,
586
- _1499: o => o,
587
- _1500: b => !!b,
588
- _1501: o => o.length,
589
- _1503: (o, i) => o[i],
590
- _1504: f => f.dartFunction,
591
- _1505: () => ({}),
592
- _1506: () => [],
593
- _1508: () => globalThis,
594
- _1509: (constructor, args) => {
585
+ _1498: o => o instanceof RegExp,
586
+ _1499: (l, r) => l === r,
587
+ _1500: o => o,
588
+ _1501: o => o,
589
+ _1502: o => o,
590
+ _1503: b => !!b,
591
+ _1504: o => o.length,
592
+ _1506: (o, i) => o[i],
593
+ _1507: f => f.dartFunction,
594
+ _1508: () => ({}),
595
+ _1509: () => [],
596
+ _1511: () => globalThis,
597
+ _1512: (constructor, args) => {
595
598
  const factoryFunction = constructor.bind.apply(
596
599
  constructor, [null, ...args]);
597
600
  return new factoryFunction();
598
601
  },
599
- _1511: (o, p) => o[p],
600
- _1512: (o, p, v) => o[p] = v,
601
- _1513: (o, m, a) => o[m].apply(o, a),
602
- _1515: o => String(o),
603
- _1516: (p, s, f) => p.then(s, (e) => f(e, e === undefined)),
604
- _1517: f => finalizeWrapper(f, function(x0) { return dartInstance.exports._1517(f,arguments.length,x0) }),
605
- _1518: f => finalizeWrapper(f, function(x0,x1) { return dartInstance.exports._1518(f,arguments.length,x0,x1) }),
606
- _1519: o => {
602
+ _1514: (o, p) => o[p],
603
+ _1515: (o, p, v) => o[p] = v,
604
+ _1516: (o, m, a) => o[m].apply(o, a),
605
+ _1518: o => String(o),
606
+ _1519: (p, s, f) => p.then(s, (e) => f(e, e === undefined)),
607
+ _1520: f => finalizeWrapper(f, function(x0) { return dartInstance.exports._1520(f,arguments.length,x0) }),
608
+ _1521: f => finalizeWrapper(f, function(x0,x1) { return dartInstance.exports._1521(f,arguments.length,x0,x1) }),
609
+ _1522: o => {
607
610
  if (o === undefined) return 1;
608
611
  var type = typeof o;
609
612
  if (type === 'boolean') return 2;
@@ -631,106 +634,110 @@ class CompiledApp {
631
634
  if (o instanceof Promise) return 18;
632
635
  return 19;
633
636
  },
634
- _1520: o => [o],
635
- _1521: (o0, o1) => [o0, o1],
636
- _1522: (o0, o1, o2) => [o0, o1, o2],
637
- _1523: (o0, o1, o2, o3) => [o0, o1, o2, o3],
638
- _1524: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => {
637
+ _1523: o => [o],
638
+ _1524: (o0, o1) => [o0, o1],
639
+ _1525: (o0, o1, o2) => [o0, o1, o2],
640
+ _1526: (o0, o1, o2, o3) => [o0, o1, o2, o3],
641
+ _1527: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => {
639
642
  const getValue = dartInstance.exports.$wasmI8ArrayGet;
640
643
  for (let i = 0; i < length; i++) {
641
644
  jsArray[jsArrayOffset + i] = getValue(wasmArray, wasmArrayOffset + i);
642
645
  }
643
646
  },
644
- _1525: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => {
647
+ _1528: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => {
645
648
  const setValue = dartInstance.exports.$wasmI8ArraySet;
646
649
  for (let i = 0; i < length; i++) {
647
650
  setValue(wasmArray, wasmArrayOffset + i, jsArray[jsArrayOffset + i]);
648
651
  }
649
652
  },
650
- _1528: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => {
653
+ _1531: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => {
651
654
  const getValue = dartInstance.exports.$wasmI32ArrayGet;
652
655
  for (let i = 0; i < length; i++) {
653
656
  jsArray[jsArrayOffset + i] = getValue(wasmArray, wasmArrayOffset + i);
654
657
  }
655
658
  },
656
- _1529: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => {
659
+ _1532: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => {
657
660
  const setValue = dartInstance.exports.$wasmI32ArraySet;
658
661
  for (let i = 0; i < length; i++) {
659
662
  setValue(wasmArray, wasmArrayOffset + i, jsArray[jsArrayOffset + i]);
660
663
  }
661
664
  },
662
- _1530: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => {
665
+ _1533: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => {
663
666
  const getValue = dartInstance.exports.$wasmF32ArrayGet;
664
667
  for (let i = 0; i < length; i++) {
665
668
  jsArray[jsArrayOffset + i] = getValue(wasmArray, wasmArrayOffset + i);
666
669
  }
667
670
  },
668
- _1531: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => {
671
+ _1534: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => {
669
672
  const setValue = dartInstance.exports.$wasmF32ArraySet;
670
673
  for (let i = 0; i < length; i++) {
671
674
  setValue(wasmArray, wasmArrayOffset + i, jsArray[jsArrayOffset + i]);
672
675
  }
673
676
  },
674
- _1532: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => {
677
+ _1535: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => {
675
678
  const getValue = dartInstance.exports.$wasmF64ArrayGet;
676
679
  for (let i = 0; i < length; i++) {
677
680
  jsArray[jsArrayOffset + i] = getValue(wasmArray, wasmArrayOffset + i);
678
681
  }
679
682
  },
680
- _1533: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => {
683
+ _1536: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => {
681
684
  const setValue = dartInstance.exports.$wasmF64ArraySet;
682
685
  for (let i = 0; i < length; i++) {
683
686
  setValue(wasmArray, wasmArrayOffset + i, jsArray[jsArrayOffset + i]);
684
687
  }
685
688
  },
686
- _1534: x0 => new ArrayBuffer(x0),
687
- _1535: s => {
689
+ _1537: x0 => new ArrayBuffer(x0),
690
+ _1538: s => {
688
691
  if (/[[\]{}()*+?.\\^$|]/.test(s)) {
689
692
  s = s.replace(/[[\]{}()*+?.\\^$|]/g, '\\$&');
690
693
  }
691
694
  return s;
692
695
  },
693
- _1537: x0 => x0.index,
694
- _1539: x0 => x0.flags,
695
- _1540: x0 => x0.multiline,
696
- _1541: x0 => x0.ignoreCase,
697
- _1542: x0 => x0.unicode,
698
- _1543: x0 => x0.dotAll,
699
- _1544: (x0,x1) => { x0.lastIndex = x1 },
700
- _1545: (o, p) => p in o,
701
- _1546: (o, p) => o[p],
702
- _1566: x0 => globalThis.URL.createObjectURL(x0),
703
- _1567: x0 => new Blob(x0),
704
- _1572: () => new AbortController(),
705
- _1573: x0 => x0.abort(),
706
- _1574: (x0,x1,x2,x3,x4,x5) => ({method: x0,headers: x1,body: x2,credentials: x3,redirect: x4,signal: x5}),
707
- _1575: (x0,x1) => globalThis.fetch(x0,x1),
708
- _1576: (x0,x1) => x0.get(x1),
709
- _1577: f => finalizeWrapper(f, function(x0,x1,x2) { return dartInstance.exports._1577(f,arguments.length,x0,x1,x2) }),
710
- _1578: (x0,x1) => x0.forEach(x1),
711
- _1579: x0 => x0.getReader(),
712
- _1580: x0 => x0.cancel(),
713
- _1581: x0 => x0.read(),
714
- _1582: x0 => globalThis.URL.revokeObjectURL(x0),
715
- _1583: x0 => x0.random(),
716
- _1586: () => globalThis.Math,
717
- _1598: Function.prototype.call.bind(Number.prototype.toString),
718
- _1599: Function.prototype.call.bind(BigInt.prototype.toString),
696
+ _1540: x0 => x0.index,
697
+ _1542: x0 => x0.flags,
698
+ _1543: x0 => x0.multiline,
699
+ _1544: x0 => x0.ignoreCase,
700
+ _1545: x0 => x0.unicode,
701
+ _1546: x0 => x0.dotAll,
702
+ _1547: (x0,x1) => { x0.lastIndex = x1 },
703
+ _1548: (o, p) => p in o,
704
+ _1549: (o, p) => o[p],
705
+ _1569: x0 => globalThis.URL.createObjectURL(x0),
706
+ _1570: x0 => new Blob(x0),
707
+ _1575: () => new AbortController(),
708
+ _1576: x0 => x0.abort(),
709
+ _1577: (x0,x1,x2,x3,x4,x5) => ({method: x0,headers: x1,body: x2,credentials: x3,redirect: x4,signal: x5}),
710
+ _1578: (x0,x1) => globalThis.fetch(x0,x1),
711
+ _1579: (x0,x1) => x0.get(x1),
712
+ _1580: f => finalizeWrapper(f, function(x0,x1,x2) { return dartInstance.exports._1580(f,arguments.length,x0,x1,x2) }),
713
+ _1581: (x0,x1) => x0.forEach(x1),
714
+ _1582: x0 => x0.getReader(),
715
+ _1583: x0 => x0.cancel(),
716
+ _1584: x0 => x0.read(),
717
+ _1585: x0 => globalThis.URL.revokeObjectURL(x0),
718
+ _1586: (x0,x1) => x0.key(x1),
719
+ _1587: x0 => x0.random(),
720
+ _1590: () => globalThis.Math,
719
721
  _1600: Function.prototype.call.bind(Number.prototype.toString),
720
- _1601: (d, digits) => d.toFixed(digits),
721
- _1605: () => globalThis.document,
722
- _1611: (x0,x1) => { x0.height = x1 },
723
- _1613: (x0,x1) => { x0.width = x1 },
724
- _1622: x0 => x0.style,
725
- _1625: x0 => x0.src,
726
- _1626: (x0,x1) => { x0.src = x1 },
727
- _1627: x0 => x0.naturalWidth,
728
- _1628: x0 => x0.naturalHeight,
729
- _1644: x0 => x0.status,
730
- _1645: (x0,x1) => { x0.responseType = x1 },
731
- _1647: x0 => x0.response,
732
- _2132: (x0,x1) => { x0.download = x1 },
733
- _2157: (x0,x1) => { x0.href = x1 },
722
+ _1601: Function.prototype.call.bind(BigInt.prototype.toString),
723
+ _1602: Function.prototype.call.bind(Number.prototype.toString),
724
+ _1603: (d, digits) => d.toFixed(digits),
725
+ _1607: () => globalThis.document,
726
+ _1613: (x0,x1) => { x0.height = x1 },
727
+ _1615: (x0,x1) => { x0.width = x1 },
728
+ _1624: x0 => x0.style,
729
+ _1627: x0 => x0.src,
730
+ _1628: (x0,x1) => { x0.src = x1 },
731
+ _1629: x0 => x0.naturalWidth,
732
+ _1630: x0 => x0.naturalHeight,
733
+ _1646: x0 => x0.status,
734
+ _1647: (x0,x1) => { x0.responseType = x1 },
735
+ _1649: x0 => x0.response,
736
+ _2134: (x0,x1) => { x0.download = x1 },
737
+ _2159: (x0,x1) => { x0.href = x1 },
738
+ _3481: () => globalThis.window,
739
+ _3808: x0 => x0.localStorage,
740
+ _4141: x0 => x0.length,
734
741
  _6086: x0 => x0.signal,
735
742
  _6158: () => globalThis.document,
736
743
  _6578: (x0,x1) => { x0.id = x1 },
Binary file
pumaguard/server.py CHANGED
@@ -402,11 +402,11 @@ def main(options: argparse.Namespace, presets: Preset):
402
402
  except OSError as exc: # pragma: no cover
403
403
  logger.error("Could not ensure classified folders exist: %s", exc)
404
404
 
405
- webui.add_image_directory(presets.classified_puma_dir)
406
- webui.add_image_directory(presets.classified_other_dir)
407
- webui.add_image_directory(presets.intermediate_dir)
405
+ webui.add_classification_directory(presets.classified_puma_dir)
406
+ webui.add_classification_directory(presets.classified_other_dir)
407
+ webui.add_classification_directory(presets.intermediate_dir)
408
408
  logger.info(
409
- "Classified browsing enabled for: %s, %s; intermediate: %s",
409
+ "Classification browsing enabled for: %s, %s; intermediate: %s",
410
410
  presets.classified_puma_dir,
411
411
  presets.classified_other_dir,
412
412
  presets.intermediate_dir,
@@ -13,6 +13,11 @@ from flask import (
13
13
  request,
14
14
  )
15
15
 
16
+ import pumaguard
17
+ from pumaguard.presets import (
18
+ get_xdg_cache_home,
19
+ )
20
+
16
21
  if TYPE_CHECKING:
17
22
  from flask import (
18
23
  Flask,
@@ -33,9 +38,9 @@ def register_diagnostics_routes(app: "Flask", webui: "WebUI") -> None:
33
38
  return jsonify(
34
39
  {
35
40
  "status": "running",
36
- "version": "1.0.0",
41
+ "version": pumaguard.__version__,
37
42
  "directories_count": len(webui.image_directories),
38
- "host": webui.host,
43
+ "host": webui._get_local_ip(), # pylint: disable=protected-access
39
44
  "port": webui.port,
40
45
  "request_origin": origin,
41
46
  "request_host": host,
@@ -44,6 +49,10 @@ def register_diagnostics_routes(app: "Flask", webui: "WebUI") -> None:
44
49
 
45
50
  @app.route("/api/diagnostic", methods=["GET"])
46
51
  def get_diagnostic():
52
+ # Get log file path
53
+ log_dir = get_xdg_cache_home() / "pumaguard"
54
+ log_file = log_dir / "pumaguard.log"
55
+
47
56
  diagnostic_info = {
48
57
  "server": {
49
58
  "host": webui.host,
@@ -59,6 +68,8 @@ def register_diagnostics_routes(app: "Flask", webui: "WebUI") -> None:
59
68
  else None
60
69
  ),
61
70
  "local_ip": webui._get_local_ip(), # pylint: disable=protected-access
71
+ "log_file": str(log_file),
72
+ "log_file_exists": log_file.exists(),
62
73
  },
63
74
  "request": {
64
75
  "url": request.url,
@@ -31,8 +31,14 @@ def register_directories_routes(app: "Flask", webui: "WebUI") -> None:
31
31
 
32
32
  @app.route("/api/directories", methods=["GET"])
33
33
  def get_directories():
34
+ """Get watched directories (incoming images to monitor)."""
34
35
  return jsonify({"directories": webui.image_directories})
35
36
 
37
+ @app.route("/api/directories/classification", methods=["GET"])
38
+ def get_classification_directories():
39
+ """Get classification output directories (products, read-only)."""
40
+ return jsonify({"directories": webui.classification_directories})
41
+
36
42
  @app.route("/api/directories", methods=["POST"])
37
43
  def add_directory():
38
44
  data = request.json