radboy 0.0.509__py3-none-any.whl → 0.0.511__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.
radboy/DB/Prompt.py CHANGED
@@ -2513,9 +2513,14 @@ degress fahrenheite - degF
2513
2513
  elif cmd.lower() in ["bldls","build","buildls","build list","bld ls",'lsbld','list build','ls bld','bld']:
2514
2514
  bldls()
2515
2515
  elif cmd.lower() in ['quick price','qprc','price']:
2516
- t=TM.Tasks.TasksMode.pricing(None)
2516
+ t=TM.Tasks.pricing(None)
2517
2517
  if t is not None:
2518
- return func(str(t),data)
2518
+ print("returned")
2519
+ try:
2520
+ return func(str(t),data)
2521
+ except:
2522
+ return func(t,data)
2523
+
2519
2524
  elif cmd.lower() in ["bldlse","builde","buildlse","build list export ","bld ls exp",'elsbld','export list build','exp ls bld','ebld']:
2520
2525
  bldls(bldlse=True)
2521
2526
  elif cmd.lower() in ['sbld','search build','search_build','scan build','scan_bld']:
@@ -417,12 +417,35 @@ class HealthLogUi:
417
417
 
418
418
  def showAllField(self,fields=[],not_none=[]):
419
419
  try:
420
+ useDateRange=Prompt.__init2__(None,func=FormBuilderMkText,ptext="use a date range?",helpText="yes or no",data="boolean")
421
+ if useDateRange is None:
422
+ return
423
+ elif useDateRange in ['d',]:
424
+ useDateRange=True
425
+
420
426
  gf=fields
421
427
  fields.extend(["DTOE","HLID","Comments"])
422
428
  fields=[i for i in HealthLog.__table__.columns if str(i.name) in fields]
423
429
  not_none=[i for i in HealthLog.__table__.columns if str(i.name) in not_none]
424
430
  with Session(ENGINE) as session:
425
431
  results=session.query(HealthLog).filter(or_(*[i!=None for i in not_none]))
432
+ if useDateRange:
433
+ default_sd=datetime.now()-timedelta(days=30)
434
+ start_date=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Start Date(default = {default_sd}):",helpText="start date",data="datetime")
435
+ if start_date is None:
436
+ return
437
+ elif start_date in ['d',]:
438
+ start_date=default_sd
439
+
440
+ default_ed=datetime.now()
441
+ end_date=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"End Date(default = {default_ed}):",helpText="end date",data="datetime")
442
+ if end_date is None:
443
+ return
444
+ elif end_date in ['d',]:
445
+ end_date=default_ed
446
+
447
+ results=results.filter(and_(HealthLog.DTOE>=start_date,HealthLog.DTOE<=end_date))
448
+
426
449
  results=orderQuery(results,HealthLog.DTOE)
427
450
 
428
451
  graph_it=Prompt.__init2__(None,func=FormBuilderMkText,ptext="Graph Results (if possible)[y/N]:",helpText="yes or no; default is No.",data="boolean")
radboy/TasksMode/Tasks.py CHANGED
@@ -288,7 +288,358 @@ def td(time_string):
288
288
  def save(value):
289
289
  detectGetOrSet("InLineResult",value,setValue=True,literal=True)
290
290
 
291
+ def pricing(self):
292
+ #needs to be refactored
293
+
294
+ while True:
295
+ try:
296
+ default_taxrate=Decimal(detectGetOrSet("Tax Rate",0.0925,setValue=False,literal=True))
297
+ default_price=Decimal(detectGetOrSet("pricing default price",1,setValue=False,literal=True))
298
+ default_bottle_qty=Decimal(detectGetOrSet("pricing default bottle_qty",1,setValue=False,literal=True))
299
+ default_bottle_size=Decimal(detectGetOrSet("pricing default bottle_size",16.9,setValue=False,literal=True))
300
+ default_purchased_qty=Decimal(detectGetOrSet("pricing default purchased_qty",1,setValue=False,literal=True))
301
+ defaults_msg=f"""
302
+ {Fore.orange_red_1}Default Settings [changeable under sysset]{Style.reset}
303
+ {Fore.light_sea_green}default_taxrate=={Fore.turquoise_4}{default_taxrate},
304
+ {Fore.grey_70}default_price=={Fore.light_yellow}{default_price},
305
+ {Fore.light_sea_green}default_bottle_qty=={Fore.turquoise_4}{default_bottle_qty},
306
+ {Fore.grey_70}default_bottle_size=={Fore.light_yellow}{default_bottle_size},
307
+ {Fore.light_sea_green}default_purchased_qty=={Fore.turquoise_4}{default_purchased_qty}
308
+ {Style.reset}"""
309
+
310
+ def beverage_PTCRV_base():
311
+ result=None
312
+ print('Beverage Total Price+Tax+CRV of Size')
313
+ price=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Price ($)(default={default_price}):",helpText="A float or integer",data="float")
314
+ if price is None:
315
+ return None
316
+ elif price in ['','d']:
317
+ price=default_price
318
+
319
+
320
+ bottle_size=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Size in FlOz(or eqivalent,oz assumed if not specified({default_bottle_size})):",helpText="a value plus its unit",data="string")
321
+ if bottle_size is None:
322
+ return None
323
+ elif bottle_size in ['d',]:
324
+ bottle_size=default_bottle_size
325
+ try:
326
+ bts=float(bottle_size)
327
+ bottle_size=f"{bts} floz"
328
+ except Exception as e:
329
+ print(e)
330
+ x=pint.UnitRegistry()
331
+ xx=x(bottle_size)
332
+ xxx=xx.to("floz")
333
+ bottle_qty=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Qty Of Containers({default_bottle_qty}):",helpText="A float or integer",data="float")
334
+ if bottle_qty is None:
335
+ return None
336
+ elif bottle_qty in ['d',]:
337
+ bottle_qty=default_bottle_qty
338
+
339
+ if xxx.magnitude < 24:
340
+ crv=float(Decimal(0.05)*Decimal(bottle_qty))
341
+ else:
342
+ crv=float(Decimal(0.10)*Decimal(bottle_qty))
343
+
344
+ tax_rate=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Tax Rate (0.01==1%(Default={default_taxrate})):",helpText="A float or integer",data="float")
345
+ if tax_rate is None:
346
+ return None
347
+ elif tax_rate == 'd':
348
+ tax_rate=default_taxrate
349
+
350
+ purchased_qty=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Qty purchased({default_purchased_qty})?",helpText=f"how much is being purchased for {price}",data="float")
351
+ if purchased_qty is None:
352
+ return None
353
+ elif purchased_qty in ['d',]:
354
+ purchased_qty=default_purchased_qty
355
+
356
+ price=(Decimal(price)*Decimal(purchased_qty))+Decimal(crv)
357
+ tax=price*Decimal(tax_rate)
358
+
359
+
360
+ result=round(float(Decimal(price)+tax),prec)
361
+ return result
362
+
363
+ def tax_with_crv():
364
+ result=None
365
+ print('Tax+CRV of Size')
366
+ price=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Price ($({default_price})):",helpText="A float or integer",data="float")
367
+ if price is None:
368
+ return None
369
+ elif price in ['','d']:
370
+ price=default_price
371
+
372
+
373
+ bottle_size=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Size in FlOz(or eqivalent,oz assumed if not specified({default_bottle_size})):",helpText="a value plus its unit",data="string")
374
+ if bottle_size is None:
375
+ return None
376
+ elif bottle_size in ['d',]:
377
+ bottle_size=default_bottle_size
378
+ try:
379
+ bts=float(bottle_size)
380
+ bottle_size=f"{bts} floz"
381
+ except Exception as e:
382
+ print(e)
383
+ x=pint.UnitRegistry()
384
+ xx=x(bottle_size)
385
+ xxx=xx.to("floz")
386
+ bottle_qty=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Qty Of Containers({default_bottle_qty}):",helpText="A float or integer",data="float")
387
+ if bottle_qty is None:
388
+ return None
389
+ elif bottle_qty in ['d',]:
390
+ bottle_qty=default_bottle_qty
391
+
392
+ if xxx.magnitude < 24:
393
+ crv=Decimal(0.05)*Decimal(bottle_qty)
394
+ else:
395
+ crv=Decimal(0.10)*Decimal(bottle_qty)
396
+
397
+ tax_rate=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Tax Rate (0.01==1%(Default={default_taxrate})):",helpText="A float or integer",data="float")
398
+ if tax_rate is None:
399
+ return None
400
+ elif tax_rate == 'd':
401
+ tax_rate=default_taxrate
402
+
403
+ purchased_qty=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Qty purchased({default_purchased_qty})?",helpText=f"how much is being purchased for {price}",data="float")
404
+ if purchased_qty is None:
405
+ return None
406
+ elif purchased_qty in ['d',]:
407
+ purchased_qty=default_purchased_qty
408
+
409
+ price=(Decimal(price)*Decimal(purchased_qty))+crv
410
+ tax=price*Decimal(tax_rate)
291
411
 
412
+ result=tax
413
+ return result
414
+
415
+ def crv_total():
416
+ result=None
417
+ print('Total CRV for Qty of Size')
418
+ bottle_size=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Size in FlOz(or eqivalent,oz assumed if not specified({default_bottle_size})):",helpText="a value plus its unit",data="string")
419
+ if bottle_size is None:
420
+ return None
421
+ elif bottle_size in ['d',]:
422
+ bottle_size=default_bottle_size
423
+ try:
424
+ bts=float(bottle_size)
425
+ bottle_size=f"{bts} floz"
426
+ except Exception as e:
427
+ print(e)
428
+ x=pint.UnitRegistry()
429
+ xx=x(bottle_size)
430
+ xxx=xx.to("floz")
431
+ bottle_qty=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Qty Of Containers({default_bottle_qty}):",helpText="A float or integer",data="float")
432
+ if bottle_qty is None:
433
+ return None
434
+ elif bottle_qty in ['d',]:
435
+ bottle_qty=default_bottle_qty
436
+
437
+ if xxx.magnitude < 24:
438
+ crv=Decimal(0.05)*Decimal(bottle_qty)
439
+ else:
440
+ crv=Decimal(0.10)*Decimal(bottle_qty)
441
+
442
+
443
+ result=crv
444
+ return result
445
+
446
+ def price_tax():
447
+ result=None
448
+ print('Price+Tax')
449
+ price=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Price ($({default_price})):",helpText="A float or integer",data="float")
450
+ if price is None:
451
+ return None
452
+ elif price in ['','d']:
453
+ price=default_price
454
+
455
+
456
+ bottle_qty=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Qty Of Containers/Product({default_bottle_qty}):",helpText="A float or integer",data="float")
457
+ if bottle_qty is None:
458
+ return None
459
+ elif bottle_qty in ['d',]:
460
+ bottle_qty=default_bottle_qty
461
+
462
+ tax_rate=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Tax Rate (0.01==1%(Default={default_taxrate})):",helpText="A float or integer",data="float")
463
+ if tax_rate is None:
464
+ return None
465
+ elif tax_rate == 'd':
466
+ tax_rate=default_taxrate
467
+
468
+ price=Decimal(price)*Decimal(bottle_qty)
469
+ tax=price*Decimal(tax_rate)
470
+
471
+ result=(price+tax)
472
+ return result
473
+
474
+ def tax_no_crv():
475
+ result=None
476
+ print('Tax without CRV')
477
+ price=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Price ($({default_price})):",helpText="A float or integer",data="float")
478
+ if price is None:
479
+ return None
480
+ elif price in ['','d']:
481
+ price=default_price
482
+
483
+
484
+ bottle_qty=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Qty Of Containers/Product({default_bottle_qty}):",helpText="A float or integer",data="float")
485
+ if bottle_qty is None:
486
+ return None
487
+ elif bottle_qty in ['d',]:
488
+ bottle_qty=default_bottle_qty
489
+
490
+ tax_rate=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Tax Rate (0.01==1%(Default={default_taxrate})):",helpText="A float or integer",data="float")
491
+ if tax_rate is None:
492
+ return None
493
+ elif tax_rate == 'd':
494
+ tax_rate=default_taxrate
495
+
496
+ price=Decimal(price)*Decimal(bottle_qty)
497
+ tax=price*Decimal(tax_rate)
498
+
499
+ result=tax
500
+ return result
501
+
502
+ def tax_rate_from_priceAndTax():
503
+ result=None
504
+ print('tax_rate_from_priceAndTax()')
505
+ price=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Price ($({default_price})):",helpText="A float or integer",data="float")
506
+ if price is None:
507
+ return None
508
+ elif price in ['','d']:
509
+ price=default_price
510
+
511
+
512
+ taxed=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Tax ($) (0.01==1%(Default={0})):",helpText="A float or integer",data="float")
513
+ if taxed is None:
514
+ return None
515
+ elif taxed == 'd':
516
+ taxed=0
517
+
518
+
519
+ tax_rate=Decimal(taxed)/Decimal(price)
520
+
521
+ result=tax_rate
522
+ return result
523
+
524
+ def tax_rate_from_oldPriceAndNewPrice():
525
+ result=None
526
+ print('tax_rate_from_oldPriceAndNewPrice()')
527
+ old_price=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Old Price ($({default_price})):",helpText="A float or integer",data="float")
528
+ if old_price is None:
529
+ return None
530
+ elif old_price in ['','d']:
531
+ old_price=default_price
532
+
533
+ new_price=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"New Price ($({default_price})):",helpText="A float or integer",data="float")
534
+ if new_price is None:
535
+ return None
536
+ elif new_price in ['','d']:
537
+ new_price=default_price
538
+
539
+ taxed=Decimal(new_price)-Decimal(old_price)
540
+ tax_rate=taxed/Decimal(old_price)
541
+ tax_rate=tax_rate
542
+
543
+ result=tax_rate
544
+ return result
545
+
546
+
547
+ options={
548
+ '0':{
549
+ 'cmds':['beverage price+tax+CRV','b-ptcrv','0'],
550
+ 'desc':f'{Fore.light_yellow}beverage Price+Tax+CRV{Fore.medium_violet_red} asking for base questions like bottle size and qty to get total cost with tax{Style.reset}',
551
+ 'exec':beverage_PTCRV_base
552
+ },
553
+ '1':{
554
+ 'cmds':['price+tax','p+t','1'],
555
+ 'desc':f'{Fore.light_yellow}Price+Tax{Fore.medium_violet_red} asking questions like price and qty to get total cost with tax{Style.reset}',
556
+ 'exec':price_tax
557
+ },
558
+ '2':{
559
+ 'cmds':['crvttl','crv total','crvtotal','crv_total','2'],
560
+ 'desc':f'{Fore.light_yellow}total crv{Fore.medium_violet_red} asking questions like price and qty to get total crv{Style.reset}',
561
+ 'exec':crv_total
562
+ },
563
+ '3':{
564
+ 'cmds':['tax+crv','t+c','tax crv','3'],
565
+ 'desc':f'{Fore.light_yellow}tax+crv{Fore.medium_violet_red} asking questions like price and qty to get total crv{Style.reset}',
566
+ 'exec':tax_with_crv
567
+ },
568
+ '4':{
569
+ 'cmds':['tax','tax no crv','tax 0 crv','4'],
570
+ 'desc':f'{Fore.light_yellow}tax w/o crv{Fore.medium_violet_red} asking questions like price and qty to get total tax without crv{Style.reset}',
571
+ 'exec':tax_no_crv
572
+ },
573
+ '5':{
574
+ 'cmds':['trfpt','tax_rate_from_price_and_tax','tax rate from price and tax','taxRateFromPriceAndTax','5'],
575
+ 'desc':f'{Fore.light_yellow}tax rate{Fore.medium_violet_red} from price and tax as a decimal{Style.reset}',
576
+ 'exec':tax_rate_from_priceAndTax
577
+ },
578
+ '6':{
579
+ 'cmds':['tax_rate_from_old_price_and_new_price','tax rate from old price and new price','taxRateFromOldPriceAndNewPrice','trfopnp','6'],
580
+ 'desc':f'{Fore.light_yellow}tax rate{Fore.medium_violet_red} from old price and new price{Style.reset}',
581
+ 'exec':tax_rate_from_oldPriceAndNewPrice
582
+ },
583
+ }
584
+ while True:
585
+ helpText=[]
586
+ for i in options:
587
+ msg=f"{Fore.light_green}{options[i]['cmds']}{Fore.light_red} -> {options[i]['desc']}{Style.reset}"
588
+ helpText.append(msg)
589
+ helpText='\n'.join(helpText)
590
+ print(helpText)
591
+ print(defaults_msg)
592
+ cmd=Prompt.__init2__(None,func=FormBuilderMkText,ptext="Pricing Analisys Tool|Do What?:",helpText=helpText,data="string")
593
+ if cmd is None:
594
+ return None
595
+ result=None
596
+ for i in options:
597
+ els=[ii.lower() for ii in options[i]['cmds']]
598
+ if cmd.lower() in els:
599
+ result=options[i]['exec']()
600
+ break
601
+ print(f"{result:.4f}")
602
+ returnResult=Prompt.__init2__(None,func=FormBuilderMkText,ptext="Return Result?[y/n]",helpText=f"result to return is '{result}'",data="boolean")
603
+ if returnResult in [True,]:
604
+ if result is None:
605
+ return None
606
+ else:
607
+ returnTypes=["float","Decimal","string"]
608
+ returnActor=[lambda x:round(float(x),4),lambda x:Decimal(x).quantize(Decimal("0.0000")),lambda x: f"{x:.4f}"]
609
+ ct=len(returnTypes)
610
+ returnType=None
611
+ htext='\n'.join([std_colorize(f"{i} - {returnActor[num](result)} ",num,ct) for num,i in enumerate(returnTypes)])
612
+ while returnType not in range(0,ct+1):
613
+ print(htext)
614
+ returnType=Prompt.__init2__(self,func=FormBuilderMkText,ptext="Return the value as?",helpText=f"{htext}\nwhich index?",data="integer")
615
+ if returnType is None:
616
+ return None
617
+ elif returnType in ['d',]:
618
+ returnType=1
619
+
620
+ if returnTypes[returnType] == 'float':
621
+ try:
622
+ return returnActor[returnType](result)
623
+ except Exception as e:
624
+ print(e)
625
+ continue
626
+ elif returnTypes[returnType] == 'Decimal':
627
+ try:
628
+ return returnActor[returnType](result)
629
+ except Exception as e:
630
+ print(e)
631
+ continue
632
+ elif returnTypes[returnType] == 'string':
633
+ try:
634
+ return returnActor[returnType](result)
635
+ except Exception as e:
636
+ print(e)
637
+ continue
638
+ else:
639
+ return result
640
+ return result
641
+ except Exception as e:
642
+ print(e,str(e),repr(e))
292
643
 
293
644
  class TasksMode:
294
645
  def set_inList(self):
@@ -499,321 +850,7 @@ class TasksMode:
499
850
  else:
500
851
  return text
501
852
 
502
- def pricing(self):
503
- prec=int(detectGetOrSet("Price/Tax/CRV Calculator Precision",4,setValue=False,literal=True))
504
- getcontext().prec=prec
505
- while True:
506
- try:
507
- default_taxrate=float(Decimal(detectGetOrSet("Tax Rate",0.0925,setValue=False,literal=True)))
508
- default_price=float(Decimal(detectGetOrSet("pricing default price",1,setValue=False,literal=True)))
509
- default_bottle_qty=float(Decimal(detectGetOrSet("pricing default bottle_qty",1,setValue=False,literal=True)))
510
- default_bottle_size=float(Decimal(detectGetOrSet("pricing default bottle_size",16.9,setValue=False,literal=True)))
511
- default_purchased_qty=float(Decimal(detectGetOrSet("pricing default purchased_qty",1,setValue=False,literal=True)))
512
- defaults_msg=f"""
513
- {Fore.orange_red_1}Default Settings [changeable under sysset]{Style.reset}
514
- {Fore.light_sea_green}default_taxrate=={Fore.turquoise_4}{default_taxrate},
515
- {Fore.grey_70}default_price=={Fore.light_yellow}{default_price},
516
- {Fore.light_sea_green}default_bottle_qty=={Fore.turquoise_4}{default_bottle_qty},
517
- {Fore.grey_70}default_bottle_size=={Fore.light_yellow}{default_bottle_size},
518
- {Fore.light_sea_green}default_purchased_qty=={Fore.turquoise_4}{default_purchased_qty}
519
- {Fore.grey_70}Price/Tax/CRV Calculator Precision=={Fore.light_yellow}{prec}{Style.reset}"""
520
-
521
- def beverage_PTCRV_base():
522
- result=None
523
- print('Beverage Total Price+Tax+CRV of Size')
524
- price=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Price ($)(default={default_price}):",helpText="A float or integer",data="float")
525
- if price is None:
526
- return None
527
- elif price in ['','d']:
528
- price=default_price
529
-
530
-
531
- bottle_size=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Size in FlOz(or eqivalent,oz assumed if not specified({default_bottle_size})):",helpText="a value plus its unit",data="string")
532
- if bottle_size is None:
533
- return None
534
- elif bottle_size in ['d',]:
535
- bottle_size=default_bottle_size
536
- try:
537
- bts=float(bottle_size)
538
- bottle_size=f"{bts} floz"
539
- except Exception as e:
540
- print(e)
541
- x=pint.UnitRegistry()
542
- xx=x(bottle_size)
543
- xxx=xx.to("floz")
544
- bottle_qty=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Qty Of Containers({default_bottle_qty}):",helpText="A float or integer",data="float")
545
- if bottle_qty is None:
546
- return None
547
- elif bottle_qty in ['d',]:
548
- bottle_qty=default_bottle_qty
549
-
550
- if xxx.magnitude < 24:
551
- crv=float(Decimal(0.05)*Decimal(bottle_qty))
552
- else:
553
- crv=float(Decimal(0.10)*Decimal(bottle_qty))
554
-
555
- tax_rate=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Tax Rate (0.01==1%(Default={default_taxrate})):",helpText="A float or integer",data="float")
556
- if tax_rate is None:
557
- return None
558
- elif tax_rate == 'd':
559
- tax_rate=default_taxrate
560
-
561
- purchased_qty=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Qty purchased({default_purchased_qty})?",helpText=f"how much is being purchased for {price}",data="float")
562
- if purchased_qty is None:
563
- return None
564
- elif purchased_qty in ['d',]:
565
- purchased_qty=default_purchased_qty
566
-
567
- price=(Decimal(price)*Decimal(purchased_qty))+Decimal(crv)
568
- tax=price*Decimal(tax_rate)
569
-
570
-
571
- result=round(float(Decimal(price)+tax),prec)
572
- return result
573
-
574
- def tax_with_crv():
575
- result=None
576
- print('Tax+CRV of Size')
577
- price=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Price ($({default_price})):",helpText="A float or integer",data="float")
578
- if price is None:
579
- return None
580
- elif price in ['','d']:
581
- price=default_price
582
-
583
-
584
- bottle_size=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Size in FlOz(or eqivalent,oz assumed if not specified({default_bottle_size})):",helpText="a value plus its unit",data="string")
585
- if bottle_size is None:
586
- return None
587
- elif bottle_size in ['d',]:
588
- bottle_size=default_bottle_size
589
- try:
590
- bts=float(bottle_size)
591
- bottle_size=f"{bts} floz"
592
- except Exception as e:
593
- print(e)
594
- x=pint.UnitRegistry()
595
- xx=x(bottle_size)
596
- xxx=xx.to("floz")
597
- bottle_qty=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Qty Of Containers({default_bottle_qty}):",helpText="A float or integer",data="float")
598
- if bottle_qty is None:
599
- return None
600
- elif bottle_qty in ['d',]:
601
- bottle_qty=default_bottle_qty
602
-
603
- if xxx.magnitude < 24:
604
- crv=Decimal(0.05)*Decimal(bottle_qty)
605
- else:
606
- crv=Decimal(0.10)*Decimal(bottle_qty)
607
-
608
- tax_rate=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Tax Rate (0.01==1%(Default={default_taxrate})):",helpText="A float or integer",data="float")
609
- if tax_rate is None:
610
- return None
611
- elif tax_rate == 'd':
612
- tax_rate=default_taxrate
613
-
614
- purchased_qty=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Qty purchased({default_purchased_qty})?",helpText=f"how much is being purchased for {price}",data="float")
615
- if purchased_qty is None:
616
- return None
617
- elif purchased_qty in ['d',]:
618
- purchased_qty=default_purchased_qty
619
-
620
- price=Decimal(Decimal(price)*Decimal(purchased_qty))+crv
621
- tax=price*Decimal(tax_rate)
622
-
623
- result=round(float(tax),prec)
624
- return result
625
-
626
- def crv_total():
627
- result=None
628
- print('Total CRV for Qty of Size')
629
- bottle_size=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Size in FlOz(or eqivalent,oz assumed if not specified({default_bottle_size})):",helpText="a value plus its unit",data="string")
630
- if bottle_size is None:
631
- return None
632
- elif bottle_size in ['d',]:
633
- bottle_size=default_bottle_size
634
- try:
635
- bts=float(bottle_size)
636
- bottle_size=f"{bts} floz"
637
- except Exception as e:
638
- print(e)
639
- x=pint.UnitRegistry()
640
- xx=x(bottle_size)
641
- xxx=xx.to("floz")
642
- bottle_qty=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Qty Of Containers({default_bottle_qty}):",helpText="A float or integer",data="float")
643
- if bottle_qty is None:
644
- return None
645
- elif bottle_qty in ['d',]:
646
- bottle_qty=default_bottle_qty
647
-
648
- if xxx.magnitude < 24:
649
- crv=Decimal(0.05)*Decimal(bottle_qty)
650
- else:
651
- crv=Decimal(0.10)*Decimal(bottle_qty)
652
-
653
-
654
- result=round(float(crv),prec)
655
- return result
656
-
657
- def price_tax():
658
- result=None
659
- print('Price+Tax')
660
- price=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Price ($({default_price})):",helpText="A float or integer",data="float")
661
- if price is None:
662
- return None
663
- elif price in ['','d']:
664
- price=default_price
665
-
666
-
667
- bottle_qty=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Qty Of Containers/Product({default_bottle_qty}):",helpText="A float or integer",data="float")
668
- if bottle_qty is None:
669
- return None
670
- elif bottle_qty in ['d',]:
671
- bottle_qty=default_bottle_qty
672
-
673
- tax_rate=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Tax Rate (0.01==1%(Default={default_taxrate})):",helpText="A float or integer",data="float")
674
- if tax_rate is None:
675
- return None
676
- elif tax_rate == 'd':
677
- tax_rate=default_taxrate
678
-
679
- price=Decimal(price)*Decimal(bottle_qty)
680
- tax=price*Decimal(tax_rate)
681
-
682
- result=round(float(price+tax),3)
683
- return result
684
-
685
- def tax_no_crv():
686
- result=None
687
- print('Tax without CRV')
688
- price=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Price ($({default_price})):",helpText="A float or integer",data="float")
689
- if price is None:
690
- return None
691
- elif price in ['','d']:
692
- price=default_price
693
-
694
-
695
- bottle_qty=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Qty Of Containers/Product({default_bottle_qty}):",helpText="A float or integer",data="float")
696
- if bottle_qty is None:
697
- return None
698
- elif bottle_qty in ['d',]:
699
- bottle_qty=default_bottle_qty
700
-
701
- tax_rate=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Tax Rate (0.01==1%(Default={default_taxrate})):",helpText="A float or integer",data="float")
702
- if tax_rate is None:
703
- return None
704
- elif tax_rate == 'd':
705
- tax_rate=default_taxrate
706
-
707
- price=Decimal(price)*Decimal(bottle_qty)
708
- tax=price*Decimal(tax_rate)
709
-
710
- result=round(float(tax),prec)
711
- return result
712
-
713
- def tax_rate_from_priceAndTax():
714
- result=None
715
- print('tax_rate_from_priceAndTax()')
716
- price=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Price ($({default_price})):",helpText="A float or integer",data="float")
717
- if price is None:
718
- return None
719
- elif price in ['','d']:
720
- price=default_price
721
-
722
-
723
- taxed=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Tax ($) (0.01==1%(Default={0})):",helpText="A float or integer",data="float")
724
- if taxed is None:
725
- return None
726
- elif taxed == 'd':
727
- taxed=0
728
-
729
-
730
- tax_rate=Decimal(taxed)/Decimal(price)
731
-
732
- result=round(float(tax_rate),prec)
733
- return result
734
-
735
- def tax_rate_from_oldPriceAndNewPrice():
736
- result=None
737
- print('tax_rate_from_oldPriceAndNewPrice()')
738
- old_price=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Old Price ($({default_price})):",helpText="A float or integer",data="float")
739
- if old_price is None:
740
- return None
741
- elif old_price in ['','d']:
742
- old_price=default_price
743
-
744
- new_price=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"New Price ($({default_price})):",helpText="A float or integer",data="float")
745
- if new_price is None:
746
- return None
747
- elif new_price in ['','d']:
748
- new_price=default_price
749
-
750
- taxed=Decimal(new_price)-Decimal(old_price)
751
- tax_rate=taxed/Decimal(old_price)
752
- tax_rate=round(float(tax_rate),prec)
753
-
754
- result=tax_rate
755
- return result
756
-
757
- while True:
758
- options={
759
- '0':{
760
- 'cmds':['beverage price+tax+CRV','b-ptcrv','0'],
761
- 'desc':f'{Fore.light_yellow}beverage Price+Tax+CRV{Fore.medium_violet_red} asking for base questions like bottle size and qty to get total cost with tax{Style.reset}',
762
- 'exec':beverage_PTCRV_base
763
- },
764
- '1':{
765
- 'cmds':['price+tax','p+t','1'],
766
- 'desc':f'{Fore.light_yellow}Price+Tax{Fore.medium_violet_red} asking questions like price and qty to get total cost with tax{Style.reset}',
767
- 'exec':price_tax
768
- },
769
- '2':{
770
- 'cmds':['crvttl','crv total','crvtotal','crv_total','2'],
771
- 'desc':f'{Fore.light_yellow}total crv{Fore.medium_violet_red} asking questions like price and qty to get total crv{Style.reset}',
772
- 'exec':crv_total
773
- },
774
- '3':{
775
- 'cmds':['tax+crv','t+c','tax crv','3'],
776
- 'desc':f'{Fore.light_yellow}tax+crv{Fore.medium_violet_red} asking questions like price and qty to get total crv{Style.reset}',
777
- 'exec':tax_with_crv
778
- },
779
- '4':{
780
- 'cmds':['tax','tax no crv','tax 0 crv','4'],
781
- 'desc':f'{Fore.light_yellow}tax w/o crv{Fore.medium_violet_red} asking questions like price and qty to get total tax without crv{Style.reset}',
782
- 'exec':tax_no_crv
783
- },
784
- '5':{
785
- 'cmds':['trfpt','tax_rate_from_price_and_tax','tax rate from price and tax','taxRateFromPriceAndTax','5'],
786
- 'desc':f'{Fore.light_yellow}tax rate{Fore.medium_violet_red} from price and tax as a decimal{Style.reset}',
787
- 'exec':tax_rate_from_priceAndTax
788
- },
789
- '6':{
790
- 'cmds':['tax_rate_from_old_price_and_new_price','tax rate from old price and new price','taxRateFromOldPriceAndNewPrice','trfopnp','6'],
791
- 'desc':f'{Fore.light_yellow}tax rate{Fore.medium_violet_red} from old price and new price{Style.reset}',
792
- 'exec':tax_rate_from_oldPriceAndNewPrice
793
- },
794
- }
795
- helpText=[]
796
- for i in options:
797
- msg=f"{Fore.light_green}{options[i]['cmds']}{Fore.light_red} -> {options[i]['desc']}{Style.reset}"
798
- helpText.append(msg)
799
- helpText='\n'.join(helpText)
800
- print(helpText)
801
- print(defaults_msg)
802
- cmd=Prompt.__init2__(None,func=FormBuilderMkText,ptext="Pricing Analisys Tool|Do What?:",helpText=helpText,data="string")
803
- if cmd is None:
804
- return None
805
- result=None
806
- for i in options:
807
- els=[ii.lower() for ii in options[i]['cmds']]
808
- if cmd.lower() in els:
809
- result=options[i]['exec']()
810
- break
811
- print(result)
812
- returnResult=Prompt.__init2__(None,func=FormBuilderMkText,ptext="Return Result?[y/n]",helpText=f"result to return is '{result}'",data="boolean")
813
- if returnResult in [True,]:
814
- return result
815
- except Exception as e:
816
- print(e,str(e),repr(e))
853
+ pricing=lambda x:pricing(None)
817
854
 
818
855
  Lookup=Lookup2
819
856
  #extra is for future expansion
radboy/__init__.py CHANGED
@@ -1 +1 @@
1
- VERSION='0.0.509'
1
+ VERSION='0.0.511'
Binary file
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: radboy
3
- Version: 0.0.509
3
+ Version: 0.0.511
4
4
  Summary: A small example package
5
5
  Author: Carl Joseph Hirner III
6
6
  Author-email: Carl Hirner III <k.j.hirner.wisdom@gmail.com>
@@ -5,7 +5,7 @@ radboy/Holidays.txt,sha256=y-JZPihh5iaWKxMIHNXD39yVuVmf1vMs4FdNDcg0f1Y,3114
5
5
  radboy/InventoryGlossary.txt,sha256=018-Yqca6DFb10jPdkUY-5qhkRlQN1k3rxoTaERQ-LA,91008
6
6
  radboy/RecordMyCodes.py,sha256=Lt2reA6xchq3U7Y08DvkrHboZ25i1ts7X2E9gSIwcVg,41101
7
7
  radboy/Run.py,sha256=JUoCTHnzQBv7n8PB2_i93ANdAC_iW__RkAge8esCnk4,76
8
- radboy/__init__.py,sha256=5SFcglufx8WX4ui1Pqz-e1Gwv-liL1K2f-RmQAWBJ3Q,17
8
+ radboy/__init__.py,sha256=0bYqvxXNH-_PZLqmeCvb3zEhxhRySRS2pQWv7FAdRQM,17
9
9
  radboy/api_key,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
10
  radboy/case-export-2024-05-14-13-10-00.672971.xlsx,sha256=Wd592d_VLFmfUI9KKKSVjNwjV91euc1T7ATyvwvUhlg,5431
11
11
  radboy/case-export-2024-05-14-13-13-22.540614.xlsx,sha256=OnGrhmScHfGp_mVaWW-LNMsqrQgyZDpiU3wV-2s3U5Q,5556
@@ -85,7 +85,7 @@ radboy/DB/ExerciseTracker.py,sha256=CZ8jdKJiAE_QTAiJTRXi8ZOnS1NUiSvWVSKLHLpYVGk,
85
85
  radboy/DB/PayDay.py,sha256=H2kPGvBCDkMOz7lbxQhYtUt_oAInpxi37Q6MFrah98I,8710
86
86
  radboy/DB/PayModels.py,sha256=hjwWxP7PL33hmfzQl5YTf0HqzaMxXJxFknPdxFJXJc8,3499
87
87
  radboy/DB/PrintLogging.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
88
- radboy/DB/Prompt.py,sha256=Q0KWXkWDH1meNEASMRzZGhdLRLYNiuE4U7W75mYeEuo,148951
88
+ radboy/DB/Prompt.py,sha256=1FeELafoUmliQy8ywkjoFFDFH_rFVlgRktqBHsvP42g,149140
89
89
  radboy/DB/RandomStringUtil.py,sha256=eZCpR907WStgfbk4Evcghjv9hOkUDXH-iMXIq0-kXq8,24386
90
90
  radboy/DB/ResetTools.py,sha256=RbI-Ua7UlsN0S9qLqtEkTWvzyTZ6R-hHR3CW4NHlUPE,6660
91
91
  radboy/DB/SMLabelImporter.py,sha256=eUoBDxVUUEKGL2g_PwkASM67ZB7FmXtSnn4bCagskhY,4013
@@ -109,7 +109,7 @@ radboy/DB/__pycache__/FormBuilder.cpython-312.pyc,sha256=p1o-5SMRL8OXP_XQ5liUpf-
109
109
  radboy/DB/__pycache__/PrintLogging.cpython-312.pyc,sha256=pIAFqTi6OiQQORSc-oMH1zAbsdH7sY1TifxrN_QOvnU,148
110
110
  radboy/DB/__pycache__/Prompt.cpython-311.pyc,sha256=P2uPRpeqfLFtxieZ0JHBG3X_HZzWUCsFSLb_fpRqky0,6407
111
111
  radboy/DB/__pycache__/Prompt.cpython-312.pyc,sha256=6CcQ1gE2hcz3cKPjo4f6d7xNM2PTDnl8NzQG0Pme5BE,142886
112
- radboy/DB/__pycache__/Prompt.cpython-313.pyc,sha256=OOjphTJL4QlfPMjT2RTN64o48ha7NE6-OU_YjJFQ5g8,225514
112
+ radboy/DB/__pycache__/Prompt.cpython-313.pyc,sha256=UABt9gvRQJamABeYQsZwKB1TTEECTRH7xDFpKk0FITQ,225622
113
113
  radboy/DB/__pycache__/RandomStringUtil.cpython-312.pyc,sha256=TrbEY89MuLmNlvoo5d8vOE6Dyshh5_EMlTZvk8MDVN4,48597
114
114
  radboy/DB/__pycache__/RandomStringUtil.cpython-313.pyc,sha256=MCcgVwV2Y-9rAY2FVaJZCKcou3HDX70EZudoiCigT0o,49217
115
115
  radboy/DB/__pycache__/ResetTools.cpython-311.pyc,sha256=4Vyc57iAAF0yRPjjglnVKovnTn8OoFIi6Zok3Wpj_YM,9292
@@ -210,10 +210,10 @@ radboy/GeoTools/__pycache__/GeoClass.cpython-313.pyc,sha256=eZ6hpLKoic1XCb7BKKg-
210
210
  radboy/GeoTools/__pycache__/OSMClass.cpython-312.pyc,sha256=5RoT8_wiI8R7yb_B9FWIC7mALdGNoqyWtkzsjM2pbh0,40387
211
211
  radboy/GeoTools/__pycache__/__init__.cpython-312.pyc,sha256=Y7Xtrzwm44-xuY_4NK8aDjYfVmXIzUFWOyexJu9le8A,1238
212
212
  radboy/GeoTools/__pycache__/__init__.cpython-313.pyc,sha256=-bk9eEIxWZgHYZHtNJbrpubDRWkbdYNkGr5J7sVhyIE,1238
213
- radboy/HealthLog/HealthLog.py,sha256=9tCpmi6u7N1zSCGCTf1f5NxKl0ht-lvHmUSVqnk8zh4,26664
213
+ radboy/HealthLog/HealthLog.py,sha256=2bj25RV5OnsctAnmNdWuczZywqSd2nFEofrqpqKIw-Q,27554
214
214
  radboy/HealthLog/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
215
215
  radboy/HealthLog/__pycache__/HealthLog.cpython-312.pyc,sha256=hTo4o7jo9L2yqPZgzuKUw_kon_PVcCuTRguELTuLrIo,27946
216
- radboy/HealthLog/__pycache__/HealthLog.cpython-313.pyc,sha256=tAS1OoGfGi-opNhHAI5Nn5YhiMPScE3ZqNj-H1jJkvs,42836
216
+ radboy/HealthLog/__pycache__/HealthLog.cpython-313.pyc,sha256=ecA8q5T7_ysyMNJM2jkecZYQv2Q_UekX6lKDog3NFxQ,43896
217
217
  radboy/HealthLog/__pycache__/__init__.cpython-312.pyc,sha256=yZrYKBk31pGSjCRqmqzpX409iw-muC1zsNO2ObqkGlY,272
218
218
  radboy/HealthLog/__pycache__/__init__.cpython-313.pyc,sha256=cqdZbEJKq9XVoVqDAwsW0pwwBBGSerJNWGlST3YVR3g,151
219
219
  radboy/InListRestore/ILR.py,sha256=s8fbbHLKQSVJX1VaeyGE-vdIUGBEbOPX29kRIG2j2WY,16847
@@ -342,7 +342,7 @@ radboy/SystemSettings/__pycache__/__init__.cpython-312.pyc,sha256=aIzp4Po0t8EhSA
342
342
  radboy/SystemSettings/__pycache__/__init__.cpython-313.pyc,sha256=QFDuoidxMWsGVLsy5lN-rDs6TP8nKJ4yyCyiamNOhwo,156
343
343
  radboy/TasksMode/ReFormula.py,sha256=REDRJYub-OEOE6g14oRQOLOQwv8pHqVJy4NQk3CCM90,2255
344
344
  radboy/TasksMode/SetEntryNEU.py,sha256=Gu0Z677tjpc7-9AQtLbIr7yzPx6ZJXGK33lOIgU0IRM,17432
345
- radboy/TasksMode/Tasks.py,sha256=u7BTI3Mvcqf8eTfMjq1KCejsgGMbQjNriQ1XktpQ6QA,322012
345
+ radboy/TasksMode/Tasks.py,sha256=SkJO-5i7TRS06GPc81JJpmkI9AuKvbN-ccde08KDAdw,322682
346
346
  radboy/TasksMode/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
347
347
  radboy/TasksMode/__pycache__/ReFormula.cpython-311.pyc,sha256=QEG3PwVw-8HTd_Mf9XbVcxU56F1fC9yBqWXYPLC39DU,4865
348
348
  radboy/TasksMode/__pycache__/ReFormula.cpython-312.pyc,sha256=aX7BWm2PPjCTnxsbGUitR-2h9hq4AjaBiHMrUXvIl0Y,3967
@@ -351,7 +351,7 @@ radboy/TasksMode/__pycache__/SetEntryNEU.cpython-312.pyc,sha256=pCdFj61aPKkHL6Sv
351
351
  radboy/TasksMode/__pycache__/SetEntryNEU.cpython-313.pyc,sha256=UExwr8dN2STFEDE5t_YnQFMUX-wGv7JH10I1OyBDRtM,20212
352
352
  radboy/TasksMode/__pycache__/Tasks.cpython-311.pyc,sha256=6QOTJnLiXSKdF81hkhy3vyrz49PPhS20s5_0X52g3Hw,131120
353
353
  radboy/TasksMode/__pycache__/Tasks.cpython-312.pyc,sha256=hyJwdaYaaRLdcrNxgg36diJ5iijX5_3I0UAORsj-6LU,310295
354
- radboy/TasksMode/__pycache__/Tasks.cpython-313.pyc,sha256=u-cXjtxGpPcMLZxxKssnP9ywRrno26j7s_1Fs7qgK50,394855
354
+ radboy/TasksMode/__pycache__/Tasks.cpython-313.pyc,sha256=aW65VhVJpNzQlJERYQICBfvuPUkMuT2O8Gm6oRSivJQ,396024
355
355
  radboy/TasksMode/__pycache__/__init__.cpython-311.pyc,sha256=PKV1JbihEacm639b53bZozRQvcllSkjGP3q8STVMxF4,234
356
356
  radboy/TasksMode/__pycache__/__init__.cpython-312.pyc,sha256=ERgnEvRMiGSecWp1BpNzLdSq_SdKw7GvFWUvUM7bLVw,272
357
357
  radboy/TasksMode/__pycache__/__init__.cpython-313.pyc,sha256=lvsTxukyvGKB3C0rdF9dQi_bvVh6ceDVINfwcuIsd0s,151
@@ -398,7 +398,7 @@ radboy/__pycache__/Run.cpython-311.pyc,sha256=G_UEfMtkLRjR6ZpGA_BJzGenuaCcP469Y9
398
398
  radboy/__pycache__/Run.cpython-312.pyc,sha256=v4xolc3mHyla991XhpYBUbBHYT0bnJ1gE-lkFoQ4GFA,241
399
399
  radboy/__pycache__/__init__.cpython-311.pyc,sha256=R-DVbUioMOW-Fnaq7FpT5F1a5p0q3b_RW-HpLRArCAY,242
400
400
  radboy/__pycache__/__init__.cpython-312.pyc,sha256=FsFzLXOlTK8_7ixoPZzakkR8Wibt-DvXLFh-oG2QlPw,164
401
- radboy/__pycache__/__init__.cpython-313.pyc,sha256=8wvywsmXQr6G-Rv4NRNgGIutOR2Aqj-g907osbWTdEM,165
401
+ radboy/__pycache__/__init__.cpython-313.pyc,sha256=jGp54ci4ysdNJGXJt7Earfh7T7ZP4927RWZlQpfu28w,165
402
402
  radboy/__pycache__/__init__.cpython-39.pyc,sha256=D48T6x6FUeKPfubo0sdS_ZUut3FmBvPMP7qT6rYBZzU,275
403
403
  radboy/__pycache__/possibleCode.cpython-311.pyc,sha256=zFiHyzqD8gUnIWu4vtyMYIBposiRQqaRXfcT_fOl4rU,20882
404
404
  radboy/__pycache__/possibleCode.cpython-312.pyc,sha256=tk_CO-AcsO3YZj5j6vEsw3g37UmEzWc5YgeWEoJEUg4,27922
@@ -423,7 +423,7 @@ radboy/tkGui/Images/__pycache__/__init__.cpython-311.pyc,sha256=tXBYpqbOlZ24B1BI
423
423
  radboy/tkGui/__pycache__/BeginnersLuck.cpython-311.pyc,sha256=xLQOnV1wuqHGaub16mPX0dDMGU9ryCeLtNz5e517_GE,3004
424
424
  radboy/tkGui/__pycache__/Review.cpython-311.pyc,sha256=wKq24iM6Xe2OampgZ7-8U6Nvmgs2y-qWOrGwtWhc75k,4047
425
425
  radboy/tkGui/__pycache__/__init__.cpython-311.pyc,sha256=BX7DBn5qbvKTvlrKOP5gzTBPBTeTgSMjBW6EMl7N8e0,230
426
- radboy-0.0.509.dist-info/METADATA,sha256=m2UAppFNyzV_J7Q8p6CBekgV78DfLdfnu12ByUysDdU,1601
427
- radboy-0.0.509.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
428
- radboy-0.0.509.dist-info/top_level.txt,sha256=mlM0RWMUxGo1YHnlLmYrHOgGdK4XNRpr7nMFD5lR56c,7
429
- radboy-0.0.509.dist-info/RECORD,,
426
+ radboy-0.0.511.dist-info/METADATA,sha256=OJdSC4LnPUMeMIhHyT15jU33UXvgoYpknX9FXGhQhGg,1601
427
+ radboy-0.0.511.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
428
+ radboy-0.0.511.dist-info/top_level.txt,sha256=mlM0RWMUxGo1YHnlLmYrHOgGdK4XNRpr7nMFD5lR56c,7
429
+ radboy-0.0.511.dist-info/RECORD,,