radboy 0.0.712__tar.gz → 0.0.714__tar.gz

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.

Potentially problematic release.


This version of radboy might be problematic. Click here for more details.

Files changed (467) hide show
  1. {radboy-0.0.712 → radboy-0.0.714}/PKG-INFO +1 -1
  2. radboy-0.0.714/STDOUT.TXT +21 -0
  3. {radboy-0.0.712 → radboy-0.0.714}/pyproject.toml +1 -1
  4. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/OrderedAndRxd.py +6 -0
  5. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/Prompt.py +63 -46
  6. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/Prompt.cpython-313.pyc +0 -0
  7. radboy-0.0.714/radboy/FB/FormBuilder.py +377 -0
  8. radboy-0.0.714/radboy/FB/__pycache__/FormBuilder.cpython-313.pyc +0 -0
  9. radboy-0.0.714/radboy/__init__.py +1 -0
  10. {radboy-0.0.712 → radboy-0.0.714}/radboy/__pycache__/__init__.cpython-313.pyc +0 -0
  11. {radboy-0.0.712 → radboy-0.0.714}/radboy/preloader/preloader.py +34 -0
  12. {radboy-0.0.712 → radboy-0.0.714}/radboy/preloader/preloader_func.py +298 -164
  13. {radboy-0.0.712 → radboy-0.0.714}/radboy.egg-info/PKG-INFO +1 -1
  14. {radboy-0.0.712 → radboy-0.0.714}/setup.py +1 -1
  15. radboy-0.0.712/STDOUT.TXT +0 -50
  16. radboy-0.0.712/radboy/FB/FormBuilder.py +0 -374
  17. radboy-0.0.712/radboy/FB/__pycache__/FormBuilder.cpython-313.pyc +0 -0
  18. radboy-0.0.712/radboy/__init__.py +0 -1
  19. {radboy-0.0.712 → radboy-0.0.714}/.gitignore +0 -0
  20. {radboy-0.0.712 → radboy-0.0.714}/.~lock.dictionary.xlsx# +0 -0
  21. {radboy-0.0.712 → radboy-0.0.714}/EntryQR.png +0 -0
  22. {radboy-0.0.712 → radboy-0.0.714}/EntryQR.txt +0 -0
  23. {radboy-0.0.712 → radboy-0.0.714}/EntryTXT.txt +0 -0
  24. {radboy-0.0.712 → radboy-0.0.714}/ExtraQR.png +0 -0
  25. {radboy-0.0.712 → radboy-0.0.714}/ExtraQR.txt +0 -0
  26. {radboy-0.0.712 → radboy-0.0.714}/ImportExcel.xlsx.done-21.01.2025 +0 -0
  27. {radboy-0.0.712 → radboy-0.0.714}/LCL_IMG/43_02122025.jpg +0 -0
  28. {radboy-0.0.712 → radboy-0.0.714}/README.md +0 -0
  29. {radboy-0.0.712 → radboy-0.0.714}/Run.py +0 -0
  30. {radboy-0.0.712 → radboy-0.0.714}/api_key +0 -0
  31. {radboy-0.0.712 → radboy-0.0.714}/build.sh +0 -0
  32. {radboy-0.0.712 → radboy-0.0.714}/dictionary.xlsx +0 -0
  33. {radboy-0.0.712 → radboy-0.0.714}/radboy/.~lock.case-export-2024-05-14-13-10-00.672971.xlsx# +0 -0
  34. {radboy-0.0.712 → radboy-0.0.714}/radboy/1-2024-04-02.png_04022024.jpg +0 -0
  35. {radboy-0.0.712 → radboy-0.0.714}/radboy/AlcoholConsumption/__init__.py +0 -0
  36. {radboy-0.0.712 → radboy-0.0.714}/radboy/AlcoholConsumption/__pycache__/__init__.cpython-312.pyc +0 -0
  37. {radboy-0.0.712 → radboy-0.0.714}/radboy/AlcoholConsumption/__pycache__/__init__.cpython-313.pyc +0 -0
  38. {radboy-0.0.712 → radboy-0.0.714}/radboy/AlcoholConsumption/__pycache__/ac.cpython-312.pyc +0 -0
  39. {radboy-0.0.712 → radboy-0.0.714}/radboy/AlcoholConsumption/__pycache__/ac.cpython-313.pyc +0 -0
  40. {radboy-0.0.712 → radboy-0.0.714}/radboy/AlcoholConsumption/ac.py +0 -0
  41. {radboy-0.0.712 → radboy-0.0.714}/radboy/BNC/BnC.py +0 -0
  42. {radboy-0.0.712 → radboy-0.0.714}/radboy/BNC/__init__.py +0 -0
  43. {radboy-0.0.712 → radboy-0.0.714}/radboy/BNC/__pycache__/BnC.cpython-312.pyc +0 -0
  44. {radboy-0.0.712 → radboy-0.0.714}/radboy/BNC/__pycache__/BnC.cpython-313.pyc +0 -0
  45. {radboy-0.0.712 → radboy-0.0.714}/radboy/BNC/__pycache__/__init__.cpython-312.pyc +0 -0
  46. {radboy-0.0.712 → radboy-0.0.714}/radboy/BNC/__pycache__/__init__.cpython-313.pyc +0 -0
  47. {radboy-0.0.712 → radboy-0.0.714}/radboy/Collector2/Collector2.py +0 -0
  48. {radboy-0.0.712 → radboy-0.0.714}/radboy/Collector2/__init__.py +0 -0
  49. {radboy-0.0.712 → radboy-0.0.714}/radboy/Collector2/__pycache__/Collector2.cpython-311.pyc +0 -0
  50. {radboy-0.0.712 → radboy-0.0.714}/radboy/Collector2/__pycache__/Collector2.cpython-312.pyc +0 -0
  51. {radboy-0.0.712 → radboy-0.0.714}/radboy/Collector2/__pycache__/Collector2.cpython-313.pyc +0 -0
  52. {radboy-0.0.712 → radboy-0.0.714}/radboy/Collector2/__pycache__/__init__.cpython-311.pyc +0 -0
  53. {radboy-0.0.712 → radboy-0.0.714}/radboy/Collector2/__pycache__/__init__.cpython-312.pyc +0 -0
  54. {radboy-0.0.712 → radboy-0.0.714}/radboy/Collector2/__pycache__/__init__.cpython-313.pyc +0 -0
  55. {radboy-0.0.712 → radboy-0.0.714}/radboy/Comm/RxTx.py +0 -0
  56. {radboy-0.0.712 → radboy-0.0.714}/radboy/Comm/__init__.py +0 -0
  57. {radboy-0.0.712 → radboy-0.0.714}/radboy/Comm/__pycache__/RxTx.cpython-312.pyc +0 -0
  58. {radboy-0.0.712 → radboy-0.0.714}/radboy/Comm/__pycache__/RxTx.cpython-313.pyc +0 -0
  59. {radboy-0.0.712 → radboy-0.0.714}/radboy/Comm/__pycache__/__init__.cpython-312.pyc +0 -0
  60. {radboy-0.0.712 → radboy-0.0.714}/radboy/Comm/__pycache__/__init__.cpython-313.pyc +0 -0
  61. {radboy-0.0.712 → radboy-0.0.714}/radboy/Comm2Common/Comm2Common.py +0 -0
  62. {radboy-0.0.712 → radboy-0.0.714}/radboy/Comm2Common/__init__.py +0 -0
  63. {radboy-0.0.712 → radboy-0.0.714}/radboy/Compare/Compare.py +0 -0
  64. {radboy-0.0.712 → radboy-0.0.714}/radboy/Compare/__init__.py +0 -0
  65. {radboy-0.0.712 → radboy-0.0.714}/radboy/Compare/__pycache__/Compare.cpython-312.pyc +0 -0
  66. {radboy-0.0.712 → radboy-0.0.714}/radboy/Compare/__pycache__/Compare.cpython-313.pyc +0 -0
  67. {radboy-0.0.712 → radboy-0.0.714}/radboy/Compare/__pycache__/__init__.cpython-312.pyc +0 -0
  68. {radboy-0.0.712 → radboy-0.0.714}/radboy/Compare/__pycache__/__init__.cpython-313.pyc +0 -0
  69. {radboy-0.0.712 → radboy-0.0.714}/radboy/Conversion/Conversion.py +0 -0
  70. {radboy-0.0.712 → radboy-0.0.714}/radboy/Conversion/__init__.py +0 -0
  71. {radboy-0.0.712 → radboy-0.0.714}/radboy/Conversion/__pycache__/Conversion.cpython-311.pyc +0 -0
  72. {radboy-0.0.712 → radboy-0.0.714}/radboy/Conversion/__pycache__/Conversion.cpython-312.pyc +0 -0
  73. {radboy-0.0.712 → radboy-0.0.714}/radboy/Conversion/__pycache__/Conversion.cpython-313.pyc +0 -0
  74. {radboy-0.0.712 → radboy-0.0.714}/radboy/Conversion/__pycache__/__init__.cpython-311.pyc +0 -0
  75. {radboy-0.0.712 → radboy-0.0.714}/radboy/Conversion/__pycache__/__init__.cpython-312.pyc +0 -0
  76. {radboy-0.0.712 → radboy-0.0.714}/radboy/Conversion/__pycache__/__init__.cpython-313.pyc +0 -0
  77. {radboy-0.0.712 → radboy-0.0.714}/radboy/ConvertCode/ConvertCode.py +0 -0
  78. {radboy-0.0.712 → radboy-0.0.714}/radboy/ConvertCode/__init__.py +0 -0
  79. {radboy-0.0.712 → radboy-0.0.714}/radboy/ConvertCode/__pycache__/ConvertCode.cpython-311.pyc +0 -0
  80. {radboy-0.0.712 → radboy-0.0.714}/radboy/ConvertCode/__pycache__/ConvertCode.cpython-312.pyc +0 -0
  81. {radboy-0.0.712 → radboy-0.0.714}/radboy/ConvertCode/__pycache__/ConvertCode.cpython-313.pyc +0 -0
  82. {radboy-0.0.712 → radboy-0.0.714}/radboy/ConvertCode/__pycache__/__init__.cpython-311.pyc +0 -0
  83. {radboy-0.0.712 → radboy-0.0.714}/radboy/ConvertCode/__pycache__/__init__.cpython-312.pyc +0 -0
  84. {radboy-0.0.712 → radboy-0.0.714}/radboy/ConvertCode/__pycache__/__init__.cpython-313.pyc +0 -0
  85. {radboy-0.0.712 → radboy-0.0.714}/radboy/ConvertCode/__pycache__/codep.cpython-311.pyc +0 -0
  86. {radboy-0.0.712 → radboy-0.0.714}/radboy/ConvertCode/codep.py +0 -0
  87. {radboy-0.0.712 → radboy-0.0.714}/radboy/CookBook/CookBook.py +0 -0
  88. {radboy-0.0.712 → radboy-0.0.714}/radboy/CookBook/__init__.py +0 -0
  89. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/CoinCombo.py +0 -0
  90. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/DatePicker.py +0 -0
  91. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/DisplayItemDb.py +0 -0
  92. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/EstimatedPayCalendarWorkSheet.txt +0 -0
  93. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/ExerciseTracker.py +0 -0
  94. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/LetterWriter.py +0 -0
  95. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/NW/NetWorth.py +0 -0
  96. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/NW/__init__.py +0 -0
  97. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/PayDay.py +0 -0
  98. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/PayModels.py +0 -0
  99. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/PrintLogging.py +0 -0
  100. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/RandomStringUtil.py +0 -0
  101. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/ResetTools.py +0 -0
  102. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/SMLabelImporter.py +0 -0
  103. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/SimpleScanner/SimpleScanner.py +0 -0
  104. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/SimpleScanner/__init__.py +0 -0
  105. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__init__.py +0 -0
  106. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/DatePicker.cpython-311.pyc +0 -0
  107. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/DatePicker.cpython-312.pyc +0 -0
  108. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/DatePicker.cpython-313.pyc +0 -0
  109. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/DisplayItemDb.cpython-312.pyc +0 -0
  110. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/DisplayItemDb.cpython-313.pyc +0 -0
  111. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/ExerciseTracker.cpython-312.pyc +0 -0
  112. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/ExerciseTracker.cpython-313.pyc +0 -0
  113. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/FormBuilder.cpython-312.pyc +0 -0
  114. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/PrintLogging.cpython-312.pyc +0 -0
  115. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/Prompt.cpython-311.pyc +0 -0
  116. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/Prompt.cpython-312.pyc +0 -0
  117. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/RandomStringUtil.cpython-312.pyc +0 -0
  118. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/RandomStringUtil.cpython-313.pyc +0 -0
  119. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/ResetTools.cpython-311.pyc +0 -0
  120. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/ResetTools.cpython-312.pyc +0 -0
  121. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/ResetTools.cpython-313.pyc +0 -0
  122. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/SMLabelImporter.cpython-311.pyc +0 -0
  123. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/SMLabelImporter.cpython-312.pyc +0 -0
  124. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/SMLabelImporter.cpython-313.pyc +0 -0
  125. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/__init__.cpython-311.pyc +0 -0
  126. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/__init__.cpython-312.pyc +0 -0
  127. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/__init__.cpython-313.pyc +0 -0
  128. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/blankDataFile.cpython-312.pyc +0 -0
  129. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/blankDataFile.cpython-313.pyc +0 -0
  130. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/config.cpython-312.pyc +0 -0
  131. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/config.cpython-313.pyc +0 -0
  132. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/db.cpython-311.pyc +0 -0
  133. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/db.cpython-312.pyc +0 -0
  134. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/db.cpython-313.pyc +0 -0
  135. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/glossary_db.cpython-312.pyc +0 -0
  136. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/glossary_db.cpython-313.pyc +0 -0
  137. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/masterLookup.cpython-312.pyc +0 -0
  138. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/masterLookup.cpython-313.pyc +0 -0
  139. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/renderText2Png.cpython-311.pyc +0 -0
  140. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/renderText2Png.cpython-312.pyc +0 -0
  141. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/renderText2Png.cpython-313.pyc +0 -0
  142. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/__pycache__/testClass.cpython-311.pyc +0 -0
  143. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/blankDataFile.py +0 -0
  144. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/config.py +0 -0
  145. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/db.py +0 -0
  146. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/glossary_db.py +0 -0
  147. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/masterLookup.py +0 -0
  148. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/msg.txt +0 -0
  149. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/rad_types.py +0 -0
  150. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/renderText2Png.py +0 -0
  151. {radboy-0.0.712 → radboy-0.0.714}/radboy/DB/testClass.py +0 -0
  152. {radboy-0.0.712 → radboy-0.0.714}/radboy/DayLog/BhTrSa/__init__.py +0 -0
  153. {radboy-0.0.712 → radboy-0.0.714}/radboy/DayLog/BhTrSa/bhtrsaa.py +0 -0
  154. {radboy-0.0.712 → radboy-0.0.714}/radboy/DayLog/DayLogger.py +0 -0
  155. {radboy-0.0.712 → radboy-0.0.714}/radboy/DayLog/TaxiFares.py +0 -0
  156. {radboy-0.0.712 → radboy-0.0.714}/radboy/DayLog/Wavelength4Freq.py +0 -0
  157. {radboy-0.0.712 → radboy-0.0.714}/radboy/DayLog/__init__.py +0 -0
  158. {radboy-0.0.712 → radboy-0.0.714}/radboy/DayLog/__pycache__/DayLogger.cpython-311.pyc +0 -0
  159. {radboy-0.0.712 → radboy-0.0.714}/radboy/DayLog/__pycache__/DayLogger.cpython-312.pyc +0 -0
  160. {radboy-0.0.712 → radboy-0.0.714}/radboy/DayLog/__pycache__/DayLogger.cpython-313.pyc +0 -0
  161. {radboy-0.0.712 → radboy-0.0.714}/radboy/DayLog/__pycache__/__init__.cpython-311.pyc +0 -0
  162. {radboy-0.0.712 → radboy-0.0.714}/radboy/DayLog/__pycache__/__init__.cpython-312.pyc +0 -0
  163. {radboy-0.0.712 → radboy-0.0.714}/radboy/DayLog/__pycache__/__init__.cpython-313.pyc +0 -0
  164. {radboy-0.0.712 → radboy-0.0.714}/radboy/Default.TTF +0 -0
  165. {radboy-0.0.712 → radboy-0.0.714}/radboy/EntryExtras/Extras.py +0 -0
  166. {radboy-0.0.712 → radboy-0.0.714}/radboy/EntryExtras/__init__.py +0 -0
  167. {radboy-0.0.712 → radboy-0.0.714}/radboy/EntryExtras/__pycache__/Extras.cpython-312.pyc +0 -0
  168. {radboy-0.0.712 → radboy-0.0.714}/radboy/EntryExtras/__pycache__/Extras.cpython-313.pyc +0 -0
  169. {radboy-0.0.712 → radboy-0.0.714}/radboy/EntryExtras/__pycache__/__init__.cpython-312.pyc +0 -0
  170. {radboy-0.0.712 → radboy-0.0.714}/radboy/EntryExtras/__pycache__/__init__.cpython-313.pyc +0 -0
  171. {radboy-0.0.712 → radboy-0.0.714}/radboy/EntryExtras/__pycache__/db.cpython-312.pyc +0 -0
  172. {radboy-0.0.712 → radboy-0.0.714}/radboy/EntryRating/ER.py +0 -0
  173. {radboy-0.0.712 → radboy-0.0.714}/radboy/EntryRating/__init__.py +0 -0
  174. {radboy-0.0.712 → radboy-0.0.714}/radboy/EntryRating/__pycache__/ER.cpython-312.pyc +0 -0
  175. {radboy-0.0.712 → radboy-0.0.714}/radboy/EntryRating/__pycache__/ER.cpython-313.pyc +0 -0
  176. {radboy-0.0.712 → radboy-0.0.714}/radboy/EntryRating/__pycache__/__init__.cpython-312.pyc +0 -0
  177. {radboy-0.0.712 → radboy-0.0.714}/radboy/EntryRating/__pycache__/__init__.cpython-313.pyc +0 -0
  178. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExportList/ExportListCurrent.py +0 -0
  179. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExportList/__init__.py +0 -0
  180. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExportList/__pycache__/ExportListCurrent.cpython-311.pyc +0 -0
  181. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExportList/__pycache__/ExportListCurrent.cpython-312.pyc +0 -0
  182. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExportList/__pycache__/ExportListCurrent.cpython-313.pyc +0 -0
  183. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExportList/__pycache__/__init__.cpython-311.pyc +0 -0
  184. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExportList/__pycache__/__init__.cpython-312.pyc +0 -0
  185. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExportList/__pycache__/__init__.cpython-313.pyc +0 -0
  186. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExportUtility/ExportTableClass.py +0 -0
  187. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExportUtility/__init__.py +0 -0
  188. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExportUtility/__pycache__/ExportTableClass.cpython-312.pyc +0 -0
  189. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExportUtility/__pycache__/ExportTableClass.cpython-313.pyc +0 -0
  190. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExportUtility/__pycache__/__init__.cpython-312.pyc +0 -0
  191. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExportUtility/__pycache__/__init__.cpython-313.pyc +0 -0
  192. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExtraTools/__init__.py +0 -0
  193. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExtraTools/__pycache__/__init__.cpython-312.pyc +0 -0
  194. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExtraTools/__pycache__/verify.cpython-312.pyc +0 -0
  195. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExtraTools/process_hs_s1.py +0 -0
  196. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExtraTools/renderQR.py +0 -0
  197. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExtraTools/renderQR.py.README +0 -0
  198. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExtraTools/snippet.py +0 -0
  199. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExtraTools/snippet2.py +0 -0
  200. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExtraTools/verify.py +0 -0
  201. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExtractPkg/ExtractPkg2.py +0 -0
  202. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExtractPkg/__init__.py +0 -0
  203. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExtractPkg/__pycache__/ExtractPkg2.cpython-311.pyc +0 -0
  204. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExtractPkg/__pycache__/ExtractPkg2.cpython-312.pyc +0 -0
  205. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExtractPkg/__pycache__/ExtractPkg2.cpython-313.pyc +0 -0
  206. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExtractPkg/__pycache__/__init__.cpython-311.pyc +0 -0
  207. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExtractPkg/__pycache__/__init__.cpython-312.pyc +0 -0
  208. {radboy-0.0.712 → radboy-0.0.714}/radboy/ExtractPkg/__pycache__/__init__.cpython-313.pyc +0 -0
  209. {radboy-0.0.712 → radboy-0.0.714}/radboy/FB/FBMTXT.py +0 -0
  210. {radboy-0.0.712 → radboy-0.0.714}/radboy/FB/__init__.py +0 -0
  211. {radboy-0.0.712 → radboy-0.0.714}/radboy/FB/__pycache__/FBMTXT.cpython-312.pyc +0 -0
  212. {radboy-0.0.712 → radboy-0.0.714}/radboy/FB/__pycache__/FBMTXT.cpython-313.pyc +0 -0
  213. {radboy-0.0.712 → radboy-0.0.714}/radboy/FB/__pycache__/FormBuilder.cpython-312.pyc +0 -0
  214. {radboy-0.0.712 → radboy-0.0.714}/radboy/FB/__pycache__/__init__.cpython-312.pyc +0 -0
  215. {radboy-0.0.712 → radboy-0.0.714}/radboy/FB/__pycache__/__init__.cpython-313.pyc +0 -0
  216. {radboy-0.0.712 → radboy-0.0.714}/radboy/GDOWN/GDOWN.py +0 -0
  217. {radboy-0.0.712 → radboy-0.0.714}/radboy/GDOWN/__init__.py +0 -0
  218. {radboy-0.0.712 → radboy-0.0.714}/radboy/GeoTools/GeoClass.py +0 -0
  219. {radboy-0.0.712 → radboy-0.0.714}/radboy/GeoTools/__init__.py +0 -0
  220. {radboy-0.0.712 → radboy-0.0.714}/radboy/GeoTools/__pycache__/GeoClass.cpython-312.pyc +0 -0
  221. {radboy-0.0.712 → radboy-0.0.714}/radboy/GeoTools/__pycache__/GeoClass.cpython-313.pyc +0 -0
  222. {radboy-0.0.712 → radboy-0.0.714}/radboy/GeoTools/__pycache__/OSMClass.cpython-312.pyc +0 -0
  223. {radboy-0.0.712 → radboy-0.0.714}/radboy/GeoTools/__pycache__/__init__.cpython-312.pyc +0 -0
  224. {radboy-0.0.712 → radboy-0.0.714}/radboy/GeoTools/__pycache__/__init__.cpython-313.pyc +0 -0
  225. {radboy-0.0.712 → radboy-0.0.714}/radboy/HealthLog/HealthLog.py +0 -0
  226. {radboy-0.0.712 → radboy-0.0.714}/radboy/HealthLog/__init__.py +0 -0
  227. {radboy-0.0.712 → radboy-0.0.714}/radboy/HealthLog/__pycache__/HealthLog.cpython-312.pyc +0 -0
  228. {radboy-0.0.712 → radboy-0.0.714}/radboy/HealthLog/__pycache__/HealthLog.cpython-313.pyc +0 -0
  229. {radboy-0.0.712 → radboy-0.0.714}/radboy/HealthLog/__pycache__/__init__.cpython-312.pyc +0 -0
  230. {radboy-0.0.712 → radboy-0.0.714}/radboy/HealthLog/__pycache__/__init__.cpython-313.pyc +0 -0
  231. {radboy-0.0.712 → radboy-0.0.714}/radboy/Holidays.txt +0 -0
  232. {radboy-0.0.712 → radboy-0.0.714}/radboy/InListRestore/ILR.py +0 -0
  233. {radboy-0.0.712 → radboy-0.0.714}/radboy/InListRestore/__init__.py +0 -0
  234. {radboy-0.0.712 → radboy-0.0.714}/radboy/InListRestore/__pycache__/ILR.cpython-312.pyc +0 -0
  235. {radboy-0.0.712 → radboy-0.0.714}/radboy/InListRestore/__pycache__/ILR.cpython-313.pyc +0 -0
  236. {radboy-0.0.712 → radboy-0.0.714}/radboy/InListRestore/__pycache__/__init__.cpython-312.pyc +0 -0
  237. {radboy-0.0.712 → radboy-0.0.714}/radboy/InListRestore/__pycache__/__init__.cpython-313.pyc +0 -0
  238. {radboy-0.0.712 → radboy-0.0.714}/radboy/InventoryGlossary.txt +0 -0
  239. {radboy-0.0.712 → radboy-0.0.714}/radboy/ListMode2/ListMode2.py +0 -0
  240. {radboy-0.0.712 → radboy-0.0.714}/radboy/ListMode2/__init__.py +0 -0
  241. {radboy-0.0.712 → radboy-0.0.714}/radboy/ListMode2/__pycache__/ListMode2.cpython-311.pyc +0 -0
  242. {radboy-0.0.712 → radboy-0.0.714}/radboy/ListMode2/__pycache__/ListMode2.cpython-312.pyc +0 -0
  243. {radboy-0.0.712 → radboy-0.0.714}/radboy/ListMode2/__pycache__/ListMode2.cpython-313.pyc +0 -0
  244. {radboy-0.0.712 → radboy-0.0.714}/radboy/ListMode2/__pycache__/__init__.cpython-311.pyc +0 -0
  245. {radboy-0.0.712 → radboy-0.0.714}/radboy/ListMode2/__pycache__/__init__.cpython-312.pyc +0 -0
  246. {radboy-0.0.712 → radboy-0.0.714}/radboy/ListMode2/__pycache__/__init__.cpython-313.pyc +0 -0
  247. {radboy-0.0.712 → radboy-0.0.714}/radboy/LocationSequencer/LocationSequencer.py +0 -0
  248. {radboy-0.0.712 → radboy-0.0.714}/radboy/LocationSequencer/__init__.py +0 -0
  249. {radboy-0.0.712 → radboy-0.0.714}/radboy/LocationSequencer/__pycache__/LocationSequencer.cpython-311.pyc +0 -0
  250. {radboy-0.0.712 → radboy-0.0.714}/radboy/LocationSequencer/__pycache__/LocationSequencer.cpython-312.pyc +0 -0
  251. {radboy-0.0.712 → radboy-0.0.714}/radboy/LocationSequencer/__pycache__/LocationSequencer.cpython-313.pyc +0 -0
  252. {radboy-0.0.712 → radboy-0.0.714}/radboy/LocationSequencer/__pycache__/__init__.cpython-311.pyc +0 -0
  253. {radboy-0.0.712 → radboy-0.0.714}/radboy/LocationSequencer/__pycache__/__init__.cpython-312.pyc +0 -0
  254. {radboy-0.0.712 → radboy-0.0.714}/radboy/LocationSequencer/__pycache__/__init__.cpython-313.pyc +0 -0
  255. {radboy-0.0.712 → radboy-0.0.714}/radboy/Locator/Locator.py +0 -0
  256. {radboy-0.0.712 → radboy-0.0.714}/radboy/Locator/__init__.py +0 -0
  257. {radboy-0.0.712 → radboy-0.0.714}/radboy/Locator/__pycache__/Locator.cpython-311.pyc +0 -0
  258. {radboy-0.0.712 → radboy-0.0.714}/radboy/Locator/__pycache__/Locator.cpython-312.pyc +0 -0
  259. {radboy-0.0.712 → radboy-0.0.714}/radboy/Locator/__pycache__/Locator.cpython-313.pyc +0 -0
  260. {radboy-0.0.712 → radboy-0.0.714}/radboy/Locator/__pycache__/__init__.cpython-311.pyc +0 -0
  261. {radboy-0.0.712 → radboy-0.0.714}/radboy/Locator/__pycache__/__init__.cpython-312.pyc +0 -0
  262. {radboy-0.0.712 → radboy-0.0.714}/radboy/Locator/__pycache__/__init__.cpython-313.pyc +0 -0
  263. {radboy-0.0.712 → radboy-0.0.714}/radboy/Lookup/Lookup.py +0 -0
  264. {radboy-0.0.712 → radboy-0.0.714}/radboy/Lookup/__init__.py +0 -0
  265. {radboy-0.0.712 → radboy-0.0.714}/radboy/Lookup/__pycache__/Lookup.cpython-311.pyc +0 -0
  266. {radboy-0.0.712 → radboy-0.0.714}/radboy/Lookup/__pycache__/Lookup.cpython-312.pyc +0 -0
  267. {radboy-0.0.712 → radboy-0.0.714}/radboy/Lookup/__pycache__/Lookup.cpython-313.pyc +0 -0
  268. {radboy-0.0.712 → radboy-0.0.714}/radboy/Lookup/__pycache__/__init__.cpython-311.pyc +0 -0
  269. {radboy-0.0.712 → radboy-0.0.714}/radboy/Lookup/__pycache__/__init__.cpython-312.pyc +0 -0
  270. {radboy-0.0.712 → radboy-0.0.714}/radboy/Lookup/__pycache__/__init__.cpython-313.pyc +0 -0
  271. {radboy-0.0.712 → radboy-0.0.714}/radboy/Lookup2/Lookup2.py +0 -0
  272. {radboy-0.0.712 → radboy-0.0.714}/radboy/Lookup2/__init__.py +0 -0
  273. {radboy-0.0.712 → radboy-0.0.714}/radboy/Lookup2/__pycache__/Lookup2.cpython-312.pyc +0 -0
  274. {radboy-0.0.712 → radboy-0.0.714}/radboy/Lookup2/__pycache__/Lookup2.cpython-313.pyc +0 -0
  275. {radboy-0.0.712 → radboy-0.0.714}/radboy/Lookup2/__pycache__/__init__.cpython-312.pyc +0 -0
  276. {radboy-0.0.712 → radboy-0.0.714}/radboy/Lookup2/__pycache__/__init__.cpython-313.pyc +0 -0
  277. {radboy-0.0.712 → radboy-0.0.714}/radboy/ModuleTemplate/Tasks.py +0 -0
  278. {radboy-0.0.712 → radboy-0.0.714}/radboy/ModuleTemplate/__init__.py +0 -0
  279. {radboy-0.0.712 → radboy-0.0.714}/radboy/ModuleTemplate/__pycache__/Tasks.cpython-311.pyc +0 -0
  280. {radboy-0.0.712 → radboy-0.0.714}/radboy/ModuleTemplate/__pycache__/__init__.cpython-311.pyc +0 -0
  281. {radboy-0.0.712 → radboy-0.0.714}/radboy/Occurances/Occurances.py +0 -0
  282. {radboy-0.0.712 → radboy-0.0.714}/radboy/Occurances/__init__.py +0 -0
  283. {radboy-0.0.712 → radboy-0.0.714}/radboy/Of/__init__.py +0 -0
  284. {radboy-0.0.712 → radboy-0.0.714}/radboy/Of/__pycache__/__init__.cpython-312.pyc +0 -0
  285. {radboy-0.0.712 → radboy-0.0.714}/radboy/Of/__pycache__/__init__.cpython-313.pyc +0 -0
  286. {radboy-0.0.712 → radboy-0.0.714}/radboy/Of/__pycache__/of.cpython-312.pyc +0 -0
  287. {radboy-0.0.712 → radboy-0.0.714}/radboy/Of/__pycache__/of.cpython-313.pyc +0 -0
  288. {radboy-0.0.712 → radboy-0.0.714}/radboy/Of/of.py +0 -0
  289. {radboy-0.0.712 → radboy-0.0.714}/radboy/Old Schedules/schedule-template-11.01.2024.txt +0 -0
  290. {radboy-0.0.712 → radboy-0.0.714}/radboy/Old Schedules/schedule-template-pre-11.01.2024.txt +0 -0
  291. {radboy-0.0.712 → radboy-0.0.714}/radboy/Orders/MilkWaterOrder.py +0 -0
  292. {radboy-0.0.712 → radboy-0.0.714}/radboy/Orders/__init__.py +0 -0
  293. {radboy-0.0.712 → radboy-0.0.714}/radboy/POS/POS.py +0 -0
  294. {radboy-0.0.712 → radboy-0.0.714}/radboy/POS/__init__.py +0 -0
  295. {radboy-0.0.712 → radboy-0.0.714}/radboy/POS/__pycache__/POS.cpython-311.pyc +0 -0
  296. {radboy-0.0.712 → radboy-0.0.714}/radboy/POS/__pycache__/POS.cpython-312.pyc +0 -0
  297. {radboy-0.0.712 → radboy-0.0.714}/radboy/POS/__pycache__/POS.cpython-313.pyc +0 -0
  298. {radboy-0.0.712 → radboy-0.0.714}/radboy/POS/__pycache__/__init__.cpython-311.pyc +0 -0
  299. {radboy-0.0.712 → radboy-0.0.714}/radboy/POS/__pycache__/__init__.cpython-312.pyc +0 -0
  300. {radboy-0.0.712 → radboy-0.0.714}/radboy/POS/__pycache__/__init__.cpython-313.pyc +0 -0
  301. {radboy-0.0.712 → radboy-0.0.714}/radboy/PhoneBook/PhoneBook.py +0 -0
  302. {radboy-0.0.712 → radboy-0.0.714}/radboy/PhoneBook/__init__.py +0 -0
  303. {radboy-0.0.712 → radboy-0.0.714}/radboy/PunchCard/CalcTimePad.py +0 -0
  304. {radboy-0.0.712 → radboy-0.0.714}/radboy/PunchCard/PunchCard.py +0 -0
  305. {radboy-0.0.712 → radboy-0.0.714}/radboy/PunchCard/__init__.py +0 -0
  306. {radboy-0.0.712 → radboy-0.0.714}/radboy/PunchCard/__pycache__/CalcTimePad.cpython-311.pyc +0 -0
  307. {radboy-0.0.712 → radboy-0.0.714}/radboy/PunchCard/__pycache__/CalcTimePad.cpython-312.pyc +0 -0
  308. {radboy-0.0.712 → radboy-0.0.714}/radboy/PunchCard/__pycache__/CalcTimePad.cpython-313.pyc +0 -0
  309. {radboy-0.0.712 → radboy-0.0.714}/radboy/PunchCard/__pycache__/PunchCard.cpython-311.pyc +0 -0
  310. {radboy-0.0.712 → radboy-0.0.714}/radboy/PunchCard/__pycache__/PunchCard.cpython-312.pyc +0 -0
  311. {radboy-0.0.712 → radboy-0.0.714}/radboy/PunchCard/__pycache__/PunchCard.cpython-313.pyc +0 -0
  312. {radboy-0.0.712 → radboy-0.0.714}/radboy/PunchCard/__pycache__/__init__.cpython-311.pyc +0 -0
  313. {radboy-0.0.712 → radboy-0.0.714}/radboy/PunchCard/__pycache__/__init__.cpython-312.pyc +0 -0
  314. {radboy-0.0.712 → radboy-0.0.714}/radboy/PunchCard/__pycache__/__init__.cpython-313.pyc +0 -0
  315. {radboy-0.0.712 → radboy-0.0.714}/radboy/RNE/RNE.py +0 -0
  316. {radboy-0.0.712 → radboy-0.0.714}/radboy/RNE/__init__.py +0 -0
  317. {radboy-0.0.712 → radboy-0.0.714}/radboy/RNE/__pycache__/RNE.cpython-312.pyc +0 -0
  318. {radboy-0.0.712 → radboy-0.0.714}/radboy/RNE/__pycache__/RNE.cpython-313.pyc +0 -0
  319. {radboy-0.0.712 → radboy-0.0.714}/radboy/RNE/__pycache__/__init__.cpython-312.pyc +0 -0
  320. {radboy-0.0.712 → radboy-0.0.714}/radboy/RNE/__pycache__/__init__.cpython-313.pyc +0 -0
  321. {radboy-0.0.712 → radboy-0.0.714}/radboy/RNE/dateAhead.py +0 -0
  322. {radboy-0.0.712 → radboy-0.0.714}/radboy/RecordMyCodes.py +0 -0
  323. {radboy-0.0.712 → radboy-0.0.714}/radboy/Repack/Repack.py +0 -0
  324. {radboy-0.0.712 → radboy-0.0.714}/radboy/Repack/__init__.py +0 -0
  325. {radboy-0.0.712 → radboy-0.0.714}/radboy/Repack/__pycache__/Repack.cpython-311.pyc +0 -0
  326. {radboy-0.0.712 → radboy-0.0.714}/radboy/Repack/__pycache__/Repack.cpython-312.pyc +0 -0
  327. {radboy-0.0.712 → radboy-0.0.714}/radboy/Repack/__pycache__/Repack.cpython-313.pyc +0 -0
  328. {radboy-0.0.712 → radboy-0.0.714}/radboy/Repack/__pycache__/__init__.cpython-311.pyc +0 -0
  329. {radboy-0.0.712 → radboy-0.0.714}/radboy/Repack/__pycache__/__init__.cpython-312.pyc +0 -0
  330. {radboy-0.0.712 → radboy-0.0.714}/radboy/Repack/__pycache__/__init__.cpython-313.pyc +0 -0
  331. {radboy-0.0.712 → radboy-0.0.714}/radboy/RepeatableDates/RepeatableDates.py +0 -0
  332. {radboy-0.0.712 → radboy-0.0.714}/radboy/RepeatableDates/__init__.py +0 -0
  333. {radboy-0.0.712 → radboy-0.0.714}/radboy/Roster/Roster.py +0 -0
  334. {radboy-0.0.712 → radboy-0.0.714}/radboy/Roster/__init__.py +0 -0
  335. {radboy-0.0.712 → radboy-0.0.714}/radboy/Roster/__pycache__/Roster.cpython-312.pyc +0 -0
  336. {radboy-0.0.712 → radboy-0.0.714}/radboy/Roster/__pycache__/Roster.cpython-313.pyc +0 -0
  337. {radboy-0.0.712 → radboy-0.0.714}/radboy/Roster/__pycache__/__init__.cpython-312.pyc +0 -0
  338. {radboy-0.0.712 → radboy-0.0.714}/radboy/Roster/__pycache__/__init__.cpython-313.pyc +0 -0
  339. {radboy-0.0.712 → radboy-0.0.714}/radboy/Run.py +0 -0
  340. {radboy-0.0.712 → radboy-0.0.714}/radboy/Solver/Solver.py +0 -0
  341. {radboy-0.0.712 → radboy-0.0.714}/radboy/Solver/__init__.py +0 -0
  342. {radboy-0.0.712 → radboy-0.0.714}/radboy/Solver/__pycache__/Solver.cpython-312.pyc +0 -0
  343. {radboy-0.0.712 → radboy-0.0.714}/radboy/Solver/__pycache__/Solver.cpython-313.pyc +0 -0
  344. {radboy-0.0.712 → radboy-0.0.714}/radboy/Solver/__pycache__/__init__.cpython-312.pyc +0 -0
  345. {radboy-0.0.712 → radboy-0.0.714}/radboy/Solver/__pycache__/__init__.cpython-313.pyc +0 -0
  346. {radboy-0.0.712 → radboy-0.0.714}/radboy/StopWatchUi/StopWatchUi.py +0 -0
  347. {radboy-0.0.712 → radboy-0.0.714}/radboy/StopWatchUi/__init__.py +0 -0
  348. {radboy-0.0.712 → radboy-0.0.714}/radboy/StopWatchUi/__pycache__/StopWatch.cpython-312.pyc +0 -0
  349. {radboy-0.0.712 → radboy-0.0.714}/radboy/StopWatchUi/__pycache__/StopWatchUi.cpython-312.pyc +0 -0
  350. {radboy-0.0.712 → radboy-0.0.714}/radboy/StopWatchUi/__pycache__/StopWatchUi.cpython-313.pyc +0 -0
  351. {radboy-0.0.712 → radboy-0.0.714}/radboy/StopWatchUi/__pycache__/__init__.cpython-312.pyc +0 -0
  352. {radboy-0.0.712 → radboy-0.0.714}/radboy/StopWatchUi/__pycache__/__init__.cpython-313.pyc +0 -0
  353. {radboy-0.0.712 → radboy-0.0.714}/radboy/SystemSettings/SystemSettings.py +0 -0
  354. {radboy-0.0.712 → radboy-0.0.714}/radboy/SystemSettings/__init__.py +0 -0
  355. {radboy-0.0.712 → radboy-0.0.714}/radboy/SystemSettings/__pycache__/SystemSettings.cpython-312.pyc +0 -0
  356. {radboy-0.0.712 → radboy-0.0.714}/radboy/SystemSettings/__pycache__/SystemSettings.cpython-313.pyc +0 -0
  357. {radboy-0.0.712 → radboy-0.0.714}/radboy/SystemSettings/__pycache__/__init__.cpython-312.pyc +0 -0
  358. {radboy-0.0.712 → radboy-0.0.714}/radboy/SystemSettings/__pycache__/__init__.cpython-313.pyc +0 -0
  359. {radboy-0.0.712 → radboy-0.0.714}/radboy/TasksMode/ReFormula.py +0 -0
  360. {radboy-0.0.712 → radboy-0.0.714}/radboy/TasksMode/SetEntryNEU.py +0 -0
  361. {radboy-0.0.712 → radboy-0.0.714}/radboy/TasksMode/Tasks.py +0 -0
  362. {radboy-0.0.712 → radboy-0.0.714}/radboy/TasksMode/__init__.py +0 -0
  363. {radboy-0.0.712 → radboy-0.0.714}/radboy/TasksMode/__pycache__/ReFormula.cpython-311.pyc +0 -0
  364. {radboy-0.0.712 → radboy-0.0.714}/radboy/TasksMode/__pycache__/ReFormula.cpython-312.pyc +0 -0
  365. {radboy-0.0.712 → radboy-0.0.714}/radboy/TasksMode/__pycache__/ReFormula.cpython-313.pyc +0 -0
  366. {radboy-0.0.712 → radboy-0.0.714}/radboy/TasksMode/__pycache__/SetEntryNEU.cpython-312.pyc +0 -0
  367. {radboy-0.0.712 → radboy-0.0.714}/radboy/TasksMode/__pycache__/SetEntryNEU.cpython-313.pyc +0 -0
  368. {radboy-0.0.712 → radboy-0.0.714}/radboy/TasksMode/__pycache__/Tasks.cpython-311.pyc +0 -0
  369. {radboy-0.0.712 → radboy-0.0.714}/radboy/TasksMode/__pycache__/Tasks.cpython-312.pyc +0 -0
  370. {radboy-0.0.712 → radboy-0.0.714}/radboy/TasksMode/__pycache__/Tasks.cpython-313.pyc +0 -0
  371. {radboy-0.0.712 → radboy-0.0.714}/radboy/TasksMode/__pycache__/__init__.cpython-311.pyc +0 -0
  372. {radboy-0.0.712 → radboy-0.0.714}/radboy/TasksMode/__pycache__/__init__.cpython-312.pyc +0 -0
  373. {radboy-0.0.712 → radboy-0.0.714}/radboy/TasksMode/__pycache__/__init__.cpython-313.pyc +0 -0
  374. {radboy-0.0.712 → radboy-0.0.714}/radboy/TouchStampC/TouchStampC.py +0 -0
  375. {radboy-0.0.712 → radboy-0.0.714}/radboy/TouchStampC/__init__.py +0 -0
  376. {radboy-0.0.712 → radboy-0.0.714}/radboy/TouchStampC/__pycache__/TouchStampC.cpython-311.pyc +0 -0
  377. {radboy-0.0.712 → radboy-0.0.714}/radboy/TouchStampC/__pycache__/TouchStampC.cpython-312.pyc +0 -0
  378. {radboy-0.0.712 → radboy-0.0.714}/radboy/TouchStampC/__pycache__/TouchStampC.cpython-313.pyc +0 -0
  379. {radboy-0.0.712 → radboy-0.0.714}/radboy/TouchStampC/__pycache__/__init__.cpython-311.pyc +0 -0
  380. {radboy-0.0.712 → radboy-0.0.714}/radboy/TouchStampC/__pycache__/__init__.cpython-312.pyc +0 -0
  381. {radboy-0.0.712 → radboy-0.0.714}/radboy/TouchStampC/__pycache__/__init__.cpython-313.pyc +0 -0
  382. {radboy-0.0.712 → radboy-0.0.714}/radboy/Unified/Unified.py +0 -0
  383. {radboy-0.0.712 → radboy-0.0.714}/radboy/Unified/Unified2.py +0 -0
  384. {radboy-0.0.712 → radboy-0.0.714}/radboy/Unified/__init__.py +0 -0
  385. {radboy-0.0.712 → radboy-0.0.714}/radboy/Unified/__pycache__/Unified.cpython-311.pyc +0 -0
  386. {radboy-0.0.712 → radboy-0.0.714}/radboy/Unified/__pycache__/Unified.cpython-312.pyc +0 -0
  387. {radboy-0.0.712 → radboy-0.0.714}/radboy/Unified/__pycache__/Unified.cpython-313.pyc +0 -0
  388. {radboy-0.0.712 → radboy-0.0.714}/radboy/Unified/__pycache__/__init__.cpython-311.pyc +0 -0
  389. {radboy-0.0.712 → radboy-0.0.714}/radboy/Unified/__pycache__/__init__.cpython-312.pyc +0 -0
  390. {radboy-0.0.712 → radboy-0.0.714}/radboy/Unified/__pycache__/__init__.cpython-313.pyc +0 -0
  391. {radboy-0.0.712 → radboy-0.0.714}/radboy/Unified/__pycache__/bareCA.cpython-312.pyc +0 -0
  392. {radboy-0.0.712 → radboy-0.0.714}/radboy/Unified/__pycache__/bareCA.cpython-313.pyc +0 -0
  393. {radboy-0.0.712 → radboy-0.0.714}/radboy/Unified/__pycache__/clearalll.cpython-312.pyc +0 -0
  394. {radboy-0.0.712 → radboy-0.0.714}/radboy/Unified/__pycache__/clearalll.cpython-313.pyc +0 -0
  395. {radboy-0.0.712 → radboy-0.0.714}/radboy/Unified/bareCA.py +0 -0
  396. {radboy-0.0.712 → radboy-0.0.714}/radboy/Unified/clearalll.py +0 -0
  397. {radboy-0.0.712 → radboy-0.0.714}/radboy/UpdatesAndImports/UpdatesAndImports.py +0 -0
  398. {radboy-0.0.712 → radboy-0.0.714}/radboy/UpdatesAndImports/__init__.py +0 -0
  399. {radboy-0.0.712 → radboy-0.0.714}/radboy/UpdatesAndImports/__pycache__/UpdatesAndImports.cpython-311.pyc +0 -0
  400. {radboy-0.0.712 → radboy-0.0.714}/radboy/UpdatesAndImports/__pycache__/__init__.cpython-311.pyc +0 -0
  401. {radboy-0.0.712 → radboy-0.0.714}/radboy/WebArchive/WebArchive.py +0 -0
  402. {radboy-0.0.712 → radboy-0.0.714}/radboy/WebArchive/__init__.py +0 -0
  403. {radboy-0.0.712 → radboy-0.0.714}/radboy/WebSearchFrameWork/SearchMethods.py +0 -0
  404. {radboy-0.0.712 → radboy-0.0.714}/radboy/WebSearchFrameWork/__init__.py +0 -0
  405. {radboy-0.0.712 → radboy-0.0.714}/radboy/WebSearchFrameWork/__pycache__/SearchMethods.cpython-311.pyc +0 -0
  406. {radboy-0.0.712 → radboy-0.0.714}/radboy/WebSearchFrameWork/__pycache__/__init__.cpython-311.pyc +0 -0
  407. {radboy-0.0.712 → radboy-0.0.714}/radboy/WebSearchFrameWork/html.html +0 -0
  408. {radboy-0.0.712 → radboy-0.0.714}/radboy/__pycache__/MainAssist.cpython-312.pyc +0 -0
  409. {radboy-0.0.712 → radboy-0.0.714}/radboy/__pycache__/RecordMyCodes.cpython-311.pyc +0 -0
  410. {radboy-0.0.712 → radboy-0.0.714}/radboy/__pycache__/RecordMyCodes.cpython-312.pyc +0 -0
  411. {radboy-0.0.712 → radboy-0.0.714}/radboy/__pycache__/RecordMyCodes.cpython-313.pyc +0 -0
  412. {radboy-0.0.712 → radboy-0.0.714}/radboy/__pycache__/RecordMyCodes.cpython-39.pyc +0 -0
  413. {radboy-0.0.712 → radboy-0.0.714}/radboy/__pycache__/Run.cpython-311.pyc +0 -0
  414. {radboy-0.0.712 → radboy-0.0.714}/radboy/__pycache__/Run.cpython-312.pyc +0 -0
  415. {radboy-0.0.712 → radboy-0.0.714}/radboy/__pycache__/__init__.cpython-311.pyc +0 -0
  416. {radboy-0.0.712 → radboy-0.0.714}/radboy/__pycache__/__init__.cpython-312.pyc +0 -0
  417. {radboy-0.0.712 → radboy-0.0.714}/radboy/__pycache__/__init__.cpython-39.pyc +0 -0
  418. {radboy-0.0.712 → radboy-0.0.714}/radboy/__pycache__/possibleCode.cpython-311.pyc +0 -0
  419. {radboy-0.0.712 → radboy-0.0.714}/radboy/__pycache__/possibleCode.cpython-312.pyc +0 -0
  420. {radboy-0.0.712 → radboy-0.0.714}/radboy/__pycache__/possibleCode.cpython-313.pyc +0 -0
  421. {radboy-0.0.712 → radboy-0.0.714}/radboy/__pycache__/renderQR.cpython-311.pyc +0 -0
  422. {radboy-0.0.712 → radboy-0.0.714}/radboy/__pycache__/t.cpython-311.pyc +0 -0
  423. {radboy-0.0.712 → radboy-0.0.714}/radboy/__pycache__/te.cpython-311.pyc +0 -0
  424. {radboy-0.0.712 → radboy-0.0.714}/radboy/__pycache__/x.cpython-311.pyc +0 -0
  425. {radboy-0.0.712 → radboy-0.0.714}/radboy/api_key +0 -0
  426. {radboy-0.0.712 → radboy-0.0.714}/radboy/case-export-2024-05-14-13-10-00.672971.xlsx +0 -0
  427. {radboy-0.0.712 → radboy-0.0.714}/radboy/case-export-2024-05-14-13-13-22.540614.xlsx +0 -0
  428. {radboy-0.0.712 → radboy-0.0.714}/radboy/changelog.txt +0 -0
  429. {radboy-0.0.712 → radboy-0.0.714}/radboy/code.png +0 -0
  430. {radboy-0.0.712 → radboy-0.0.714}/radboy/db.csv +0 -0
  431. {radboy-0.0.712 → radboy-0.0.714}/radboy/dictionary.txt +0 -0
  432. {radboy-0.0.712 → radboy-0.0.714}/radboy/export.csv +0 -0
  433. {radboy-0.0.712 → radboy-0.0.714}/radboy/helpMsg.txt +0 -0
  434. {radboy-0.0.712 → radboy-0.0.714}/radboy/home.csv +0 -0
  435. {radboy-0.0.712 → radboy-0.0.714}/radboy/possibleCode.py +0 -0
  436. {radboy-0.0.712 → radboy-0.0.714}/radboy/preloader/__init__.py +0 -0
  437. {radboy-0.0.712 → radboy-0.0.714}/radboy/renderQR.py +0 -0
  438. {radboy-0.0.712 → radboy-0.0.714}/radboy/renderQR.py.README +0 -0
  439. {radboy-0.0.712 → radboy-0.0.714}/radboy/setCode/__init__.py +0 -0
  440. {radboy-0.0.712 → radboy-0.0.714}/radboy/setCode/__pycache__/__init__.cpython-311.pyc +0 -0
  441. {radboy-0.0.712 → radboy-0.0.714}/radboy/setCode/__pycache__/__init__.cpython-312.pyc +0 -0
  442. {radboy-0.0.712 → radboy-0.0.714}/radboy/setCode/__pycache__/__init__.cpython-313.pyc +0 -0
  443. {radboy-0.0.712 → radboy-0.0.714}/radboy/setCode/__pycache__/setCode.cpython-311.pyc +0 -0
  444. {radboy-0.0.712 → radboy-0.0.714}/radboy/setCode/__pycache__/setCode.cpython-312.pyc +0 -0
  445. {radboy-0.0.712 → radboy-0.0.714}/radboy/setCode/__pycache__/setCode.cpython-313.pyc +0 -0
  446. {radboy-0.0.712 → radboy-0.0.714}/radboy/setCode/setCode.py +0 -0
  447. {radboy-0.0.712 → radboy-0.0.714}/radboy/t.py +0 -0
  448. {radboy-0.0.712 → radboy-0.0.714}/radboy/te.py +0 -0
  449. {radboy-0.0.712 → radboy-0.0.714}/radboy/tkGui/BeginnersLuck.py +0 -0
  450. {radboy-0.0.712 → radboy-0.0.714}/radboy/tkGui/Images/__init__.py +0 -0
  451. {radboy-0.0.712 → radboy-0.0.714}/radboy/tkGui/Images/__pycache__/__init__.cpython-311.pyc +0 -0
  452. {radboy-0.0.712 → radboy-0.0.714}/radboy/tkGui/Review.py +0 -0
  453. {radboy-0.0.712 → radboy-0.0.714}/radboy/tkGui/__init__.py +0 -0
  454. {radboy-0.0.712 → radboy-0.0.714}/radboy/tkGui/__pycache__/BeginnersLuck.cpython-311.pyc +0 -0
  455. {radboy-0.0.712 → radboy-0.0.714}/radboy/tkGui/__pycache__/Review.cpython-311.pyc +0 -0
  456. {radboy-0.0.712 → radboy-0.0.714}/radboy/tkGui/__pycache__/__init__.cpython-311.pyc +0 -0
  457. {radboy-0.0.712 → radboy-0.0.714}/radboy/version.txt +0 -0
  458. {radboy-0.0.712 → radboy-0.0.714}/radboy/whatIs15.py +0 -0
  459. {radboy-0.0.712 → radboy-0.0.714}/radboy/x.py +0 -0
  460. {radboy-0.0.712 → radboy-0.0.714}/radboy.egg-info/SOURCES.txt +0 -0
  461. {radboy-0.0.712 → radboy-0.0.714}/radboy.egg-info/dependency_links.txt +0 -0
  462. {radboy-0.0.712 → radboy-0.0.714}/radboy.egg-info/requires.txt +0 -0
  463. {radboy-0.0.712 → radboy-0.0.714}/radboy.egg-info/top_level.txt +0 -0
  464. {radboy-0.0.712 → radboy-0.0.714}/setup.cfg +0 -0
  465. {radboy-0.0.712 → radboy-0.0.714}/test +0 -0
  466. {radboy-0.0.712 → radboy-0.0.714}/update.sh +0 -0
  467. {radboy-0.0.712 → radboy-0.0.714}/upload.sh +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: radboy
3
- Version: 0.0.712
3
+ Version: 0.0.714
4
4
  Summary: A Retail Calculator for Android/Linux
5
5
  Author: Carl Joseph Hirner III
6
6
  Author-email: Carl Hirner III <k.j.hirner.wisdom@gmail.com>
@@ -0,0 +1,21 @@
1
+ #USER INPUT# -> :"t"
2
+ #USER INPUT# -> :"fmlau"
3
+ #USER INPUT# -> :"fcmd"
4
+ #USER INPUT# -> :"cone"
5
+ #USER INPUT# -> :"1"
6
+ #USER INPUT# -> :"7"
7
+ #USER INPUT# -> :"5"
8
+ #USER INPUT# -> :"ff"
9
+ #USER INPUT# -> :"y"
10
+ #USER INPUT# -> :"n"
11
+ #USER INPUT# -> :"fmlau"
12
+ #USER INPUT# -> :"tax get"
13
+ #USER INPUT# -> :""
14
+ #USER INPUT# -> :"f"
15
+ #USER INPUT# -> :"f"
16
+ #USER INPUT# -> :"0"
17
+ #USER INPUT# -> :"y"
18
+ #USER INPUT# -> :"b"
19
+ #USER INPUT# -> :"q"
20
+ #USER INPUT# -> :"e"
21
+ #USER INPUT# -> :"0.0.714"
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "radboy"
3
- version = "0.0.712"
3
+ version = "0.0.714"
4
4
  authors = [
5
5
  { name="Carl Hirner III", email="k.j.hirner.wisdom@gmail.com" },
6
6
  ]
@@ -20,6 +20,9 @@ def CountTo():
20
20
  }
21
21
  start=datetime.now()
22
22
  data=FormBuilder(data=fd)
23
+ if data is None:
24
+ print("bad parameters!")
25
+ return
23
26
  absolute_start=False
24
27
  useLast=False
25
28
  while True:
@@ -41,6 +44,9 @@ def CountTo():
41
44
  }
42
45
  start=datetime.now()
43
46
  data=FormBuilder(data=fd)
47
+ if data is None:
48
+ print("bad parameters!")
49
+ return
44
50
  absolute_start=False
45
51
  if useLast:
46
52
  print("using last setup!")
@@ -26,7 +26,7 @@ import lzma,base64
26
26
  from Crypto.Cipher import AES
27
27
  #from Cryptodome.Cipher import AES
28
28
  from Crypto.Util.Padding import pad, unpad
29
- from decimal import Decimal,localcontext
29
+ from decimal import Decimal,localcontext,getcontext
30
30
  import biip
31
31
  import itertools
32
32
  from inputimeout import inputimeout, TimeoutOccurred
@@ -196,7 +196,7 @@ def getExtras(entryId,extras):
196
196
 
197
197
  def getSuperTotal(results,location_fields,colormapped):
198
198
  with db.Session(db.ENGINE) as session:
199
- ROUNDTO=int(db.detectGetOrSet("lsbld ROUNDTO default",3,setValue=False,literal=True))
199
+ ROUNDTO=int(db.detectGetOrSet("lsbld ROUNDTO default",4,setValue=False,literal=True))
200
200
  master_total=decc("0.00",cf=ROUNDTO)
201
201
  master_total_crv=decc("0.00",cf=ROUNDTO)
202
202
  master_total_tax=decc("0.00",cf=ROUNDTO)
@@ -1271,19 +1271,19 @@ class Prompt(object):
1271
1271
  print(db.strip_colors(msg))
1272
1272
  else:
1273
1273
  msg+=f"""{Fore.light_magenta} |-|{Fore.light_green} Total = {Fore.light_sea_green}{total}
1274
- {Fore.light_magenta}Price({decc(i.Price):.{getcontext().prec}f}){Fore.medium_violet_red}*{Fore.light_slate_blue}Total({total}):{decc(i.Price)*total:.{getcontext().prec}f}
1275
- {Fore.grey_70}+CRV({decc(i.CRV):.{getcontext().prec}f})*Total({total}){Fore.slate_blue_1}
1276
- {Fore.medium_spring_green}= {Fore.slate_blue_1}TotalCRV({crv:.{getcontext().prec}f})+TotalPrice({total*decc(i.Price):.{getcontext().prec}f})
1277
- {Fore.medium_spring_green}= {Fore.green_3a}NetPrice({total*decc(i.Price)+crv:.{getcontext().prec}f}){Style.reset}
1278
- {Fore.grey_70}+Tax({decc(i.Tax):.{getcontext().prec}f}) w/o CRV({decc(i.CRV):.{getcontext().prec}f})*Total({total}){Fore.slate_blue_1}
1279
- {Fore.medium_spring_green}= {Fore.slate_blue_1}TaxNoCRVTotal({tax:.{getcontext().prec}f})+TotalPrice({total*i.Price:.{getcontext().prec}f})
1280
- {Fore.medium_spring_green}= {Fore.green_3a}NetPrice({total*decc(i.Price)+tax:.{getcontext().prec}f}){Style.reset}
1281
- {Fore.grey_70}+Tax({decc(i.Tax):.{getcontext().prec}f}) w/ CRV({decc(i.CRV):.{getcontext().prec}f})*Total({total}){Fore.slate_blue_1}
1282
- {Fore.medium_spring_green}= {Fore.slate_blue_1}TaxCRVTotal({tax_crv:.{getcontext().prec}f})+TotalPrice({total*i.Price:.{getcontext().prec}f})
1283
- {Fore.medium_spring_green}= {Fore.green_3a}NetPrice({total*decc(i.Price)+tax+crv:.{getcontext().prec}f}){Style.reset}
1284
- {Fore.medium_violet_red}PercentOfTotal({super_total:.{getcontext().prec}f}%) of FinalTotal({getSuperTotal(results,location_fields,colormapped)['final total']})
1285
- {Fore.orange_red_1}TaxRate({taxRate:.{getcontext().prec}f})={decc(taxRate*100):.{getcontext().prec}f}%{Style.reset}
1286
- {'*'*os.get_terminal_size().columns}{Style.reset}"""
1274
+ {Fore.light_magenta}Price({decc(i.Price):.{getcontext().prec}f}){Fore.medium_violet_red}*{Fore.light_slate_blue}Total({total}):{decc(i.Price)*total:.{getcontext().prec}f}
1275
+ {Fore.grey_70}+CRV({decc(i.CRV):.{getcontext().prec}f})*Total({total}){Fore.slate_blue_1}
1276
+ {Fore.medium_spring_green}= {Fore.slate_blue_1}TotalCRV({crv:.{getcontext().prec}f})+TotalPrice({total*decc(i.Price):.{getcontext().prec}f})
1277
+ {Fore.medium_spring_green}= {Fore.green_3a}NetPrice({total*decc(i.Price)+crv:.{getcontext().prec}f}){Style.reset}
1278
+ {Fore.grey_70}+Tax({decc(i.Tax):.{getcontext().prec}f}) w/o CRV({decc(i.CRV):.{getcontext().prec}f})*Total({total}){Fore.slate_blue_1}
1279
+ {Fore.medium_spring_green}= {Fore.slate_blue_1}TaxNoCRVTotal({tax:.{getcontext().prec}f})+TotalPrice({total*i.Price:.{getcontext().prec}f})
1280
+ {Fore.medium_spring_green}= {Fore.green_3a}NetPrice({total*decc(i.Price)+tax:.{getcontext().prec}f}){Style.reset}
1281
+ {Fore.grey_70}+Tax({decc(i.Tax):.{getcontext().prec}f}) w/ CRV({decc(i.CRV):.{getcontext().prec}f})*Total({total}){Fore.slate_blue_1}
1282
+ {Fore.medium_spring_green}= {Fore.slate_blue_1}TaxCRVTotal({tax_crv:.{getcontext().prec}f})+TotalPrice({total*i.Price:.{getcontext().prec}f})
1283
+ {Fore.medium_spring_green}= {Fore.green_3a}NetPrice({total*decc(i.Price)+tax+crv:.{getcontext().prec}f}){Style.reset}
1284
+ {Fore.medium_violet_red}PercentOfTotal({super_total:.{getcontext().prec}f}%) of FinalTotal({getSuperTotal(results,location_fields,colormapped)['final total']})
1285
+ {Fore.orange_red_1}TaxRate({taxRate:.{getcontext().prec}f})={decc(taxRate*100):.{getcontext().prec}f}%{Style.reset}
1286
+ {'*'*os.get_terminal_size().columns}{Style.reset}"""
1287
1287
  if bldlse:
1288
1288
  db.logInput(msg,user=False,filter_colors=True,maxed_hfl=False,ofile=Prompt.bld_file)
1289
1289
  if not justCount and not justTotal:
@@ -1326,29 +1326,29 @@ class Prompt(object):
1326
1326
  if not reRunRequired:
1327
1327
  if justCount:
1328
1328
  msg=f"""
1329
- {Fore.spring_green_3a}'Total Items'={Style.bold}{Fore.light_cyan}{TotalItems}{Style.reset}
1330
- {Fore.spring_green_3a}Total 'CRV Items' (each crv adds an xtra 1)={Fore.light_cyan}{TotalCRVItems}{Style.reset}
1331
- {Fore.spring_green_3a}Total 'CRV Items QTY Purchased' (each crv adds an xtra for total qty)={Fore.light_cyan}{TTLQtyCrvItem}{Style.reset}
1329
+ {Fore.spring_green_3a}'Total Items'={Style.bold}{Fore.light_cyan}{TotalItems}{Style.reset}
1330
+ {Fore.spring_green_3a}Total 'CRV Items' (each crv adds an xtra 1)={Fore.light_cyan}{TotalCRVItems}{Style.reset}
1331
+ {Fore.spring_green_3a}Total 'CRV Items QTY Purchased' (each crv adds an xtra for total qty)={Fore.light_cyan}{TTLQtyCrvItem}{Style.reset}
1332
1332
 
1333
- {Fore.light_sea_green}'Total Items' + 'CRV Items' ={Fore.light_magenta}{TotalCRVItems+TotalItems}{Style.reset}
1334
- {Fore.light_sea_green}'Total Items' + 'CRV Items QTY Purchased' ={Fore.light_magenta}{TTLQtyCrvItem+TotalItems}{Style.reset}
1333
+ {Fore.light_sea_green}'Total Items' + 'CRV Items' ={Fore.light_magenta}{TotalCRVItems+TotalItems}{Style.reset}
1334
+ {Fore.light_sea_green}'Total Items' + 'CRV Items QTY Purchased' ={Fore.light_magenta}{TTLQtyCrvItem+TotalItems}{Style.reset}
1335
1335
 
1336
- {Fore.light_blue}'Total Lines'={Style.bold}{Fore.grey_70}{TotalLines}{Style.reset}
1337
- {Fore.light_blue}'Total Lines' + 'CRV Items'={Style.bold}{Fore.grey_70}{TotalLines+TotalCRVItems}{Style.reset}
1338
- {Fore.light_blue}'Total Lines' + 'CRV Items QTY Purchased'={Style.bold}{Fore.grey_70}{TotalLines+TotalCRVItems}{Style.reset}
1336
+ {Fore.light_blue}'Total Lines'={Style.bold}{Fore.grey_70}{TotalLines}{Style.reset}
1337
+ {Fore.light_blue}'Total Lines' + 'CRV Items'={Style.bold}{Fore.grey_70}{TotalLines+TotalCRVItems}{Style.reset}
1338
+ {Fore.light_blue}'Total Lines' + 'CRV Items QTY Purchased'={Style.bold}{Fore.grey_70}{TotalLines+TotalCRVItems}{Style.reset}
1339
1339
  {Style.reset}"""
1340
1340
  if not simple:
1341
1341
  print(msg)
1342
1342
  return
1343
1343
  if justTotal:
1344
1344
  msg=f"""{Fore.light_green}Total Product Value
1345
- {Fore.orange_red_1}= {Style.bold}{Fore.slate_blue_1}{master_total}{Style.reset}
1346
- {Fore.light_green}Total Product Value w/CRV({master_total_crv})
1347
- {Fore.orange_red_1}= {Style.bold}{Fore.slate_blue_1}{master_total_crv+master_total}{Style.reset}
1348
- {Fore.light_green}Total Product Value Taxed({master_total_tax}) w/o CRV({master_total_crv})
1349
- {Fore.orange_red_1}= {Style.bold}{Fore.slate_blue_1}{master_total_tax+master_total}{Style.reset}
1350
- {Fore.light_green}Total Product Value Taxed({master_total_tax}) w/ CRV({master_total_crv})
1351
- {Fore.orange_red_1}= {Style.bold}{Fore.slate_blue_1}{actual}{Style.reset}
1345
+ {Fore.orange_red_1}= {Style.bold}{Fore.slate_blue_1}{master_total}{Style.reset}
1346
+ {Fore.light_green}Total Product Value w/CRV({master_total_crv})
1347
+ {Fore.orange_red_1}= {Style.bold}{Fore.slate_blue_1}{master_total_crv+master_total}{Style.reset}
1348
+ {Fore.light_green}Total Product Value Taxed({master_total_tax}) w/o CRV({master_total_crv})
1349
+ {Fore.orange_red_1}= {Style.bold}{Fore.slate_blue_1}{master_total_tax+master_total}{Style.reset}
1350
+ {Fore.light_green}Total Product Value Taxed({master_total_tax}) w/ CRV({master_total_crv})
1351
+ {Fore.orange_red_1}= {Style.bold}{Fore.slate_blue_1}{actual}{Style.reset}
1352
1352
  """
1353
1353
  if not simple:
1354
1354
  print(msg)
@@ -1356,13 +1356,13 @@ class Prompt(object):
1356
1356
 
1357
1357
 
1358
1358
  msg=f"""{Fore.light_green}Total Product Value
1359
- {Fore.orange_red_1}= {Style.bold}{Fore.slate_blue_1}{master_total}{Style.reset}
1360
- {Fore.light_green}Total Product Value w/CRV({master_total_crv})
1361
- {Fore.orange_red_1}= {Style.bold}{Fore.slate_blue_1}{master_total_crv+master_total}{Style.reset}
1362
- {Fore.light_green}Total Product Value Taxed({master_total_tax}) w/o CRV({master_total_crv})
1363
- {Fore.orange_red_1}= {Style.bold}{Fore.slate_blue_1}{master_total_tax+master_total}{Style.reset}
1364
- {Fore.light_green}Total Product Value Taxed({master_total_tax}) w/ CRV({master_total_crv})
1365
- {Fore.orange_red_1}= {Style.bold}{Fore.slate_blue_1}{actual}{Style.reset}
1359
+ {Fore.orange_red_1}= {Style.bold}{Fore.slate_blue_1}{master_total}{Style.reset}
1360
+ {Fore.light_green}Total Product Value w/CRV({master_total_crv})
1361
+ {Fore.orange_red_1}= {Style.bold}{Fore.slate_blue_1}{master_total_crv+master_total}{Style.reset}
1362
+ {Fore.light_green}Total Product Value Taxed({master_total_tax}) w/o CRV({master_total_crv})
1363
+ {Fore.orange_red_1}= {Style.bold}{Fore.slate_blue_1}{master_total_tax+master_total}{Style.reset}
1364
+ {Fore.light_green}Total Product Value Taxed({master_total_tax}) w/ CRV({master_total_crv})
1365
+ {Fore.orange_red_1}= {Style.bold}{Fore.slate_blue_1}{actual}{Style.reset}
1366
1366
  """
1367
1367
  if page:
1368
1368
  reviewRecieptLines=Prompt.__init2__(None,func=FormBuilderMkText,ptext="Review Reciept Lines[y/N]",helpText="review line details for reciept to double check values",data="boolean")
@@ -1375,16 +1375,16 @@ class Prompt(object):
1375
1375
  pass
1376
1376
  else:
1377
1377
  msg+=f"""
1378
- {Fore.spring_green_3a}'Total Items'={Style.bold}{Fore.light_cyan}{TotalItems}{Style.reset}
1379
- {Fore.spring_green_3a}Total 'CRV Items' (each crv adds an xtra 1)={Fore.light_cyan}{TotalCRVItems}{Style.reset}
1380
- {Fore.spring_green_3a}Total 'CRV Items QTY Purchased' (each crv adds an xtra for total qty)={Fore.light_cyan}{TTLQtyCrvItem}{Style.reset}
1378
+ {Fore.spring_green_3a}'Total Items'={Style.bold}{Fore.light_cyan}{TotalItems}{Style.reset}
1379
+ {Fore.spring_green_3a}Total 'CRV Items' (each crv adds an xtra 1)={Fore.light_cyan}{TotalCRVItems}{Style.reset}
1380
+ {Fore.spring_green_3a}Total 'CRV Items QTY Purchased' (each crv adds an xtra for total qty)={Fore.light_cyan}{TTLQtyCrvItem}{Style.reset}
1381
1381
 
1382
- {Fore.light_sea_green}'Total Items' + 'CRV Items' ={Fore.light_magenta}{TotalCRVItems+TotalItems}{Style.reset}
1383
- {Fore.light_sea_green}'Total Items' + 'CRV Items QTY Purchased' ={Fore.light_magenta}{TTLQtyCrvItem+TotalItems}{Style.reset}
1382
+ {Fore.light_sea_green}'Total Items' + 'CRV Items' ={Fore.light_magenta}{TotalCRVItems+TotalItems}{Style.reset}
1383
+ {Fore.light_sea_green}'Total Items' + 'CRV Items QTY Purchased' ={Fore.light_magenta}{TTLQtyCrvItem+TotalItems}{Style.reset}
1384
1384
 
1385
- {Fore.light_blue}'Total Lines'={Style.bold}{Fore.grey_70}{TotalLines}{Style.reset}
1386
- {Fore.light_blue}'Total Lines' + 'CRV Items'={Style.bold}{Fore.grey_70}{TotalLines+TotalCRVItems}{Style.reset}
1387
- {Fore.light_blue}'Total Lines' + 'CRV Items QTY Purchased'={Style.bold}{Fore.grey_70}{TotalLines+TotalCRVItems}{Style.reset}
1385
+ {Fore.light_blue}'Total Lines'={Style.bold}{Fore.grey_70}{TotalLines}{Style.reset}
1386
+ {Fore.light_blue}'Total Lines' + 'CRV Items'={Style.bold}{Fore.grey_70}{TotalLines+TotalCRVItems}{Style.reset}
1387
+ {Fore.light_blue}'Total Lines' + 'CRV Items QTY Purchased'={Style.bold}{Fore.grey_70}{TotalLines+TotalCRVItems}{Style.reset}
1388
1388
  {Style.reset}"""
1389
1389
  else:
1390
1390
  msg=f"{Fore.orange_red_1}You need to re-run lsbld to recalculate properly!{Style.reset}"
@@ -2469,6 +2469,18 @@ class Prompt(object):
2469
2469
  print(helpText)
2470
2470
  continue
2471
2471
  elif cmd.lower() in generate_cmds(startcmd=['precision','prcsn'],endCmd=['set','st','=']):
2472
+ toplvl=Control(func=FormBuilderMkText,ptext="Is this for everything globally(False)?",helpText="boolean",data="boolean")
2473
+ if toplvl in ['NaN',None]:
2474
+ continue
2475
+ elif toplvl in ['d',]:
2476
+ toplvl=False
2477
+
2478
+ saveIt=Control(func=FormBuilderMkText,ptext="Save to settings(False)?",helpText="boolean",data="boolean")
2479
+ if saveIt in ['NaN',None]:
2480
+ continue
2481
+ elif saveIt in ['d',]:
2482
+ saveIt=False
2483
+
2472
2484
  value=Control(func=FormBuilderMkText,ptext="How many digits of precision?",helpText=f"1-{decimal.MAX_PREC}",data="integer")
2473
2485
  if value in ['NaN',None]:
2474
2486
  continue
@@ -2477,7 +2489,12 @@ class Prompt(object):
2477
2489
  elif value < 1:
2478
2490
  print("invalid value")
2479
2491
  continue
2480
- PROMPT_CONTEXT.prec=value
2492
+ if not toplvl:
2493
+ PROMPT_CONTEXT.prec=value
2494
+ else:
2495
+ getcontext().prec=value
2496
+ if saveIt:
2497
+ PROMPT_CONTEXT.prec=int(db.detectGetOrSet("lsbld ROUNDTO default",value,setValue=True,literal=False))
2481
2498
  continue
2482
2499
  elif cmd.lower() in generate_cmds(startcmd=['simple','smpl'],endCmd=['scanner','scanr','scnnr','scnr']):
2483
2500
  TM.Tasks.TasksMode(parent=self,engine=db.ENGINE,init_only=True).simple_scanner()
@@ -0,0 +1,377 @@
1
+ #Prompt.py
2
+ from colored import Fore,Style,Back
3
+ import random
4
+ import re,os,sys
5
+ from radboy.DB.db import *
6
+ from radboy.DB.Prompt import *
7
+ from radboy.DB.DatePicker import *
8
+ from radboy import VERSION
9
+ import inspect,string
10
+ import json
11
+ from pathlib import Path
12
+ from datetime import date,time,datetime
13
+ from radboy.FB.FBMTXT import *
14
+ from copy import copy
15
+ from radboy.DB import db as DB
16
+ from decimal import localcontext
17
+
18
+ def findAndSelectKey(options=None):
19
+ if options is None:
20
+ options=[]
21
+ with Session(ENGINE) as session:
22
+ cmd=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"{Fore.light_red}[FindAndUse2]{Fore.light_yellow}what cmd are your looking for?",helpText="type the cmd",data="string")
23
+ if cmd in ['d',None]:
24
+ return
25
+ else:
26
+ options=copy(options)
27
+
28
+ session.query(DB.db.FindCmd).delete()
29
+ session.commit()
30
+ for num,k in enumerate(options):
31
+ stage=0
32
+ if isinstance(options,dict):
33
+ cmds=options[k]['cmds']
34
+ l=[]
35
+ l.extend(cmds)
36
+ l.append(options[k]['desc'])
37
+ else:
38
+ l=[]
39
+ l.extend(options)
40
+ cmdStr=' '.join(l)
41
+ cmd_string=DB.db.FindCmd(CmdString=cmdStr,CmdKey=k)
42
+ session.add(cmd_string)
43
+ if num % 50 == 0:
44
+ session.commit()
45
+ session.commit()
46
+ session.flush()
47
+
48
+ results=session.query(DB.db.FindCmd).filter(DB.db.FindCmd.CmdString.icontains(cmd)).all()
49
+
50
+
51
+ ct=len(results)
52
+ if ct == 0:
53
+ print(f"No Cmd was found by {Fore.light_red}{cmd}{Style.reset}")
54
+ return
55
+ for num,x in enumerate(results):
56
+ msg=DB.db.std_colorize(x.CmdKey,num,ct)
57
+ print(msg)
58
+ select=Prompt.__init2__(None,func=FormBuilderMkText,ptext="which index?",helpText="the number farthest to the left before the /",data="integer")
59
+ if select in [None,'d']:
60
+ return
61
+ try:
62
+ if select in list(i for i in range(len(options))):
63
+ return results[select].CmdKey
64
+ except Exception as e:
65
+ print(e)
66
+
67
+ def FormBuilder(data,extra_tooling=False,passThruText=None):
68
+ with localcontext() as ctx:
69
+ ctx.prec=ROUNDTO=int(db.detectGetOrSet("lsbld ROUNDTO default",4,setValue=False,literal=True))
70
+ if passThruText != None:
71
+ passThruText=f"{Fore.light_green}{passThruText}: {Fore.light_yellow}"
72
+ GOTOK=None
73
+ def keys_index(data):
74
+ for num,k in enumerate(data.keys()):
75
+ msg=f"{Fore.light_cyan}{num}/{Fore.light_magenta}{num+1}{Fore.light_steel_blue} of {Fore.light_red}{len(data.keys())}{Fore.medium_violet_red} as {Fore.light_green}{k}:{Fore.cyan}{data[k]['type']}={Fore.magenta}{data[k]['default']}{Style.reset}"
76
+ print(msg)
77
+
78
+ def setGOTOK(GOTOK):
79
+ gotoi=Prompt.__init2__(None,func=FormBuilderMkText,ptext="What index do you wish to goto?",helpText=f"please type an integer between 0 to {len(data.keys())-1}",data="integer")
80
+ if gotoi in [None,]:
81
+ return
82
+ elif gotoi in ['d',]:
83
+ pass
84
+ else:
85
+ try:
86
+ keys=data.keys()
87
+ GOTOK=list(keys)[gotoi]
88
+ print(GOTOK)
89
+ return GOTOK
90
+ except Exception as e:
91
+ print(e)
92
+ print(f"Index {gotoi} not found in {data} in its keys-list indexes: {data.keys()}")
93
+
94
+ def setGOTOK_str(data):
95
+ while True:
96
+ gotoi=Prompt.__init2__(None,func=FormBuilderMkText,ptext="What key do you wish to goto?",helpText=f"please type the key you want to goto",data="string")
97
+ if gotoi in [None,]:
98
+ return
99
+ elif gotoi in ['d',]:
100
+ pass
101
+ else:
102
+ try:
103
+ test=data[gotoi]
104
+ return gotoi
105
+ except Exception as e:
106
+ print(e)
107
+ print(f"Key {gotoi} not found in {data} in its keys {data.keys()}")
108
+ index=None
109
+ item={}
110
+ for num,k in enumerate(data.keys()):
111
+ item[k]=data[k]['default']
112
+ review=False
113
+ finalize=False
114
+ finish=False
115
+ while True:
116
+ if finalize:
117
+ break
118
+ while True:
119
+ if finalize:
120
+ break
121
+ for num,k in enumerate(data.keys()):
122
+ if GOTOK != None:
123
+ print(k,GOTOK)
124
+ if k != GOTOK:
125
+ continue
126
+ else:
127
+ GOTOK=None
128
+ if isinstance(index,int):
129
+ if num < index:
130
+ continue
131
+ else:
132
+ index=None
133
+ ht=''
134
+ if data[k]['type'].lower() in ['date','datetime','time']:
135
+ ht="type 'y' or 'n' to start"
136
+ elif data[k]['type'].lower() in ['list']:
137
+ ht="type your $DELIMITED list, the you will be asked for $DELIMITED character to use!"
138
+ elif data[k]['type'].lower() in ['bool','boolean']:
139
+ ht="type y|yes|t|true|1 for yes/True, and n|no|0|false|f for no/False"
140
+ ht2=f"""{Style.bold}{Fore.dark_blue}{Back.grey_70} FormBuilder {Fore.dark_red_1}Options {Style.reset}
141
+ {Fore.light_yellow}#b{Fore.light_green} will restart {Fore.light_red}[If it is wired to, might be reverse of 'b']{Style.reset}
142
+ {Fore.light_yellow}b{Fore.light_green} will return to previous menu{Fore.light_red}[If it is wired to, might be reverse of '#b']{Style.reset}
143
+ {Fore.light_yellow}f{Fore.light_green} will proceeds to review, where 'f' finishes,'y/yes/1' will review,'<Enter>/<Return>/n/f/0' will act as finish{Style.reset}
144
+ {Fore.light_yellow}p{Fore.light_green} at field filling lines goes to previous field{Style.reset}
145
+ {Fore.light_yellow}d{Fore.light_green} use default{Style.reset}
146
+ {Fore.light_yellow}m{Fore.light_green} use manually entered data present under m key option{Style.reset}
147
+ {Fore.light_yellow}#done#{Fore.light_green} to finish a str+(MultiLine) Input{Style.reset}
148
+ {Fore.grey_70}*{Fore.light_cyan}{num}/{Fore.light_magenta}{num+1}{Fore.light_steel_blue} of {Fore.light_red}{len(data.keys())}{Fore.medium_violet_red} as {Fore.light_green}{k}:{Fore.cyan}{data[k]['type']}={Fore.magenta}{data[k]['default']}{Style.reset}
149
+ {Fore.grey_70}*{Fore.light_yellow}goto {Fore.light_cyan}i{Fore.light_yellow}/goto{Fore.light_cyan}i{Fore.light_green} - go to {Fore.light_cyan}index{Style.reset}
150
+ {Fore.grey_70}*{Fore.light_yellow}goto{Fore.light_cyan}k{Fore.light_yellow},goto {Fore.light_cyan}k{Fore.light_green} goto {Fore.light_cyan}key{Fore.light_green} for field in Form {Style.reset}
151
+ {Fore.grey_70}*{Fore.light_yellow}showkeys{Fore.light_green} to see indexes refering to form keys{Style.reset}
152
+ {Fore.grey_70}*{Fore.light_yellow}'schk','search keys','sch ky{Fore.light_green} to search select and goto key{Style.reset}
153
+ {Fore.grey_70}* {Fore.grey_50}These cmds only work with fields that return str/VARCHAR/TEXT/str+/list of str's, i.e. [str,]
154
+ {Fore.grey_70}*{Fore.grey_50}['na','not_a_number','nan']{Fore.light_green}set a field to None{Style.reset}
155
+ {Style.reset}"""
156
+ print(ht2)
157
+ FormBuilderHelpText()
158
+ cmd=None
159
+ if data[k]['type']=='str+':
160
+ done=False
161
+ while not done:
162
+ lines=[]
163
+ skip_review=False
164
+ while True:
165
+ line=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"{passThruText}You(m):{item.get(k)}|Default(d):{data[k]['default']} Field:{str(k)}",helpText=f'{ht}\nuse {Fore.light_red}{Style.bold}{Back.grey_50}#done#{Style.reset} to stop.',data=data[k]['type'][:-1])
166
+ if line in [None,]:
167
+ return
168
+ elif line.lower() in ['#done#',]:
169
+ break
170
+ elif isinstance(line,list) and [i.lower() for i in line] in [['gotoi',],['goto i']]:
171
+ GOTOK=setGOTOK(data)
172
+ while GOTOK not in list(data.keys()):
173
+ GOTOK=setGOTOK(data)
174
+ if GOTOK in [None,]:
175
+ return
176
+ done=True
177
+ finalize=True
178
+ skip_review=True
179
+ break
180
+ elif isinstance(line,list) and [i.lower() for i in line] in [['gotok',],['goto k']]:
181
+ GOTOK=setGOTOK_str(data)
182
+ while GOTOK not in list(data.keys()):
183
+ GOTOK=setGOTOK_str(data)
184
+ if GOTOK in [None,]:
185
+ return
186
+ done=True
187
+ finalize=True
188
+ skip_review=True
189
+ break
190
+ elif isinstance(line,str) and line.lower() in ['gotoi','goto i']:
191
+ GOTOK=setGOTOK(GOTOK)
192
+ while GOTOK not in list(data.keys()):
193
+ GOTOK=setGOTOK(GOTOK)
194
+ if GOTOK in [None,]:
195
+ return
196
+ done=True
197
+ finalize=True
198
+ skip_review=True
199
+ break
200
+ elif isinstance(line,str) and line.lower() in ['gotok','goto k']:
201
+ GOTOK=setGOTOK_str(data)
202
+ while GOTOK not in list(data.keys()):
203
+ GOTOK=setGOTOK(GOTOK)
204
+ if GOTOK in [None,]:
205
+ return
206
+ done=True
207
+ finalize=True
208
+ skip_review=True
209
+ break
210
+ elif isinstance(line,str) and line.lower() in ['schk','search keys','sch ky']:
211
+ DATA={str(i):{'cmds':[i,],'desc':''} for i in data}
212
+ GOTOK=findAndSelectKey(options=DATA)
213
+ while GOTOK not in list(data.keys()):
214
+ GOTOK=setGOTOK_str(GOTOK)
215
+ if GOTOK in [None,]:
216
+ return
217
+ done=True
218
+ finalize=True
219
+ skip_review=True
220
+ break
221
+ elif isinstance(line,str) and line.lower() in ['showkeys','show keys']:
222
+ keys_index(data)
223
+ '''
224
+ done=True
225
+ finalize=True
226
+ skip_review=True
227
+ '''
228
+ continue
229
+ elif line.lower() == 'd':
230
+ line='\n'
231
+ else:
232
+ if len(line) in [i for i in range(7,14)]:
233
+ with Session(ENGINE) as session:
234
+ possible=session.query(Entry).filter(or_(Entry.Barcode==line,Entry.Barcode.icontains(line),Entry.Code==line,Entry.Code.icontains(line))).all()
235
+ if len(possible) > 0:
236
+ line+="\nBarcode/Code Matches found Below\n"+f"{'-'*len('Barcode/Code Matches found Below')}\n"
237
+ for num,i in enumerate(possible):
238
+ line+=i.seeShortRaw()+"\n"
239
+
240
+ lines.append(line)
241
+ cmd='\n'.join(lines)
242
+ if not skip_review:
243
+ use=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"{passThruText}{cmd}\nUse? [y/n]",helpText="type something that can be represented as a boolean, this includes boolean formulas used in if/if-then statements(True=y/1/t/true/yes/1==1,False=n/no/0/f/false/1==0)",data="boolean")
244
+ if use in [None,]:
245
+ return
246
+ elif use:
247
+ done=True
248
+ finalize=True
249
+ break
250
+ else:
251
+ continue
252
+ else:
253
+ if_continue=False
254
+ while True:
255
+ passThru=['gotoi','goto i','gotok','goto k','showkeys','show keys','ff','finalize','finish','schk','search keys','sch ky']
256
+ cmd=Prompt.__init2__(None,func=lambda text,data:FormBuilderMkText(text,data,passThru=passThru,PassThru=True),ptext=f"{passThruText} You(m):{item.get(k)}|Default(d):{data[k]['default']} Field:{str(k)}",helpText=f'{ht}',data=data[k]['type'])
257
+ if cmd in [None,]:
258
+ return
259
+ elif isinstance(cmd,list) and [i.lower() for i in cmd] in [['gotoi',],['goto i']]:
260
+ GOTOK=setGOTOK(data)
261
+ while GOTOK not in list(data.keys()):
262
+ GOTOK=setGOTOK(data)
263
+ if_continue=True
264
+ break
265
+
266
+ elif isinstance(cmd,list) and [i.lower() for i in cmd] in [['gotok',],['goto k']]:
267
+ GOTOK=setGOTOK_str(data)
268
+ while GOTOK not in list(data.keys()):
269
+ GOTOK=setGOTOK_str(data)
270
+ if_continue=True
271
+ break
272
+
273
+ elif isinstance(cmd,str) and cmd.lower() in ['gotoi','goto i']:
274
+ GOTOK=setGOTOK(GOTOK)
275
+ while GOTOK not in list(data.keys()):
276
+ GOTOK=setGOTOK(GOTOK)
277
+ if_continue=True
278
+ break
279
+
280
+ elif isinstance(cmd,str) and cmd.lower() in ['gotok','goto k']:
281
+ GOTOK=setGOTOK_str(data)
282
+ while GOTOK not in list(data.keys()):
283
+ GOTOK=setGOTOK_str(data)
284
+ if_continue=True
285
+ break
286
+ elif isinstance(cmd,str) and cmd.lower() in ['schk','search keys','sch ky']:
287
+ DATA={str(i):{'cmds':[i,],'desc':''} for i in data}
288
+ GOTOK=findAndSelectKey(options=DATA)
289
+ print(GOTOK)
290
+ while GOTOK not in list(data.keys()):
291
+ GOTOK=findAndSelectKey(options=DATA)
292
+ #GOTOK=setGOTOK_str(GOTOK)
293
+ if GOTOK in [None,]:
294
+ return
295
+ if_continue=True
296
+ break
297
+ elif isinstance(cmd,str) and cmd.lower() in ['showkeys','show keys']:
298
+ keys_index(data)
299
+ continue
300
+ break
301
+ if if_continue:
302
+ continue
303
+ if cmd in [None,]:
304
+ return
305
+ elif isinstance(cmd,str):
306
+ if cmd.lower() in ['p',]:
307
+ if num == 0:
308
+ index=len(data.keys())-1
309
+ else:
310
+ index=num-1
311
+ break
312
+ elif cmd.lower() in ['d',]:
313
+ item[k]=data[k]['default']
314
+ elif cmd.lower() in ['f','finalize']:
315
+ finalize=True
316
+ break
317
+ elif cmd.lower() in ['ff','finish']:
318
+ finalize=True
319
+ finish=True
320
+ break
321
+ elif cmd.lower() in ['na','not_a_number','nan']:
322
+ item[k]=None
323
+ elif cmd.lower() in ['m',]:
324
+ print(f"Not changing User set value '{k}':'{item.get(k)}'")
325
+ pass
326
+ else:
327
+ item[k]=cmd
328
+ else:
329
+ item[k]=cmd
330
+ if not finish:
331
+ review=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"{passThruText}review?",helpText="",data="bool")
332
+ #print(review)
333
+ if review in ['f',]:
334
+ review=False
335
+ if review in [None,]:
336
+ return
337
+ elif review in [True,'d']:
338
+ finalize=False
339
+ continue
340
+ else:
341
+ break
342
+ else:
343
+ review=False
344
+ break
345
+
346
+ if extra_tooling == True:
347
+ tmp_item={str(num):item[i] for num,i in enumerate(item)}
348
+ #ask if extra data is needed
349
+ count=len(tmp_item)
350
+ while True:
351
+ nkv=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"{passThruText}New Key:Value Pair",helpText="yes or no",data="boolean")
352
+ if nkv in ['d',True]:
353
+ key=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"{passThruText}default[{count}] Key",helpText="yes or no",data="string")
354
+ if key in [None,]:
355
+ continue
356
+ elif key in ['d',]:
357
+ key=str(count)
358
+ value=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"{passThruText}Value",helpText="data text",data="string")
359
+ if value in [None,]:
360
+ continue
361
+ tmp_item[key]=value
362
+ count+=1
363
+ else:
364
+ break
365
+ #loop through lines for removal
366
+ final_result={}
367
+ for k in tmp_item:
368
+ keep=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"{passThruText}['{tmp_item[k]}'] keep?",helpText="yes or no",data="boolean")
369
+ if keep in ['d',True]:
370
+ final_result[k]=tmp_item[k]
371
+ return final_result
372
+ return item
373
+
374
+ '''
375
+ form=FormBuilder(data=fm_data)
376
+ print(form)
377
+ '''
@@ -0,0 +1 @@
1
+ VERSION='0.0.714'