Compare commits

..
2 Commits
Author SHA1 Message Date
Alexander Kalinovsky 4364c2c175 rename project
Build Docs / changes (push) Successful in 6s
Build Docs / build-docs (push) Successful in 1m5s
Build Docs / deploy-docs (push) Successful in 5s
2025-03-27 15:48:55 +07:00
Alexander Kalinovsky 5db09d0fd1 rename project 2025-03-27 15:48:00 +07:00
57 changed files with 64 additions and 58 deletions

No files matched your search

+21 -13
View File
@@ -9,7 +9,10 @@
id="svg1"
xml:space="preserve"
inkscape:version="1.4 (e7c3feb1, 2024-10-09)"
sodipodi:docname="qbot.svg"
sodipodi:docname="quickbot.svg"
inkscape:export-filename="quickbot.png"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
@@ -23,16 +26,21 @@
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:document-units="px"
inkscape:zoom="0.52452521"
inkscape:cx="704.4466"
inkscape:cy="297.41182"
inkscape:zoom="0.29812844"
inkscape:cx="1061.623"
inkscape:cy="-147.5874"
inkscape:window-width="1608"
inkscape:window-height="1007"
inkscape:window-x="8"
inkscape:window-y="52"
inkscape:window-y="44"
inkscape:window-maximized="0"
inkscape:current-layer="layer1" /><defs
id="defs1"><rect
x="620.53792"
y="0"
width="879.46208"
height="218.02683"
id="rect1" /><rect
x="80.81143"
y="115.09507"
width="901.16989"
@@ -46,14 +54,10 @@
inkscape:label="Слой 1"
inkscape:groupmode="layer"
id="layer1"><g
id="g18"
transform="translate(118.93657)"><path
style="font-size:266.667px;font-family:'Arial Rounded MT Bold';-inkscape-font-specification:'Arial Rounded MT Bold, Normal';fill:#404040"
d="m 685.86904,314.58341 q 8.46355,5.72918 18.4896,11.19793 10.02606,5.33854 13.28127,8.59377 3.25521,3.125 3.25521,8.98437 0,4.16668 -3.90625,8.33335 -3.77605,4.16668 -9.24481,4.16668 -4.42708,0 -10.8073,-2.8646 -6.25001,-2.86459 -14.84377,-8.33334 -8.46355,-5.46876 -18.61981,-12.76044 -18.88023,9.63543 -46.35423,9.63543 -22.26565,0 -39.974,-7.03126 -17.57815,-7.16146 -29.55733,-20.44273 -11.97918,-13.41147 -18.09898,-31.77087 -5.98959,-18.3594 -5.98959,-39.97401 0,-22.00523 6.25001,-40.36463 6.38021,-18.3594 18.35939,-31.25004 11.97918,-12.89064 29.16671,-19.66148 17.18752,-6.90105 39.06254,-6.90105 29.68754,0 50.91152,12.10939 21.3542,11.97918 32.29171,34.24483 10.93751,22.13545 10.93751,52.0834 0,45.44276 -24.6094,72.0053 z m -30.33858,-21.09377 q 8.07293,-9.2448 11.84897,-21.87503 3.90626,-12.63022 3.90626,-29.29691 0,-20.96358 -6.77084,-36.32817 -6.77085,-15.3646 -19.40107,-23.17711 -12.50002,-7.94273 -28.77608,-7.94273 -11.58855,0 -21.4844,4.42709 -9.76563,4.29688 -16.9271,12.63022 -7.03126,8.33335 -11.19793,21.3542 -4.03647,12.89064 -4.03647,29.0365 0,32.94274 15.36461,50.78131 15.3646,17.70836 38.80213,17.70836 9.63543,0 19.79169,-4.03647 -6.1198,-4.55729 -15.3646,-9.11459 -9.1146,-4.5573 -12.50002,-7.03126 -3.38542,-2.47396 -3.38542,-7.03126 0,-3.90625 3.25521,-6.90105 3.25521,-2.99479 7.16147,-2.99479 11.84897,0 39.71359,19.79169 z m 169.53146,44.79172 h -58.3334 q -12.63023,0 -18.09898,-5.59898 -5.33855,-5.72917 -5.33855,-18.09897 V 171.09366 q 0,-12.63023 5.46876,-18.09898 5.59896,-5.59897 17.96877,-5.59897 h 61.84903 q 13.67189,0 23.69795,1.69271 10.02605,1.69271 17.96877,6.51043 6.77084,4.03646 11.97918,10.28647 5.20834,6.1198 7.94272,13.67189 2.73438,7.42188 2.73438,15.75523 0,28.64586 -28.64587,41.92713 37.63025,11.97918 37.63025,46.61464 0,16.01564 -8.20313,28.90629 -8.20314,12.76043 -22.13545,18.88023 -8.72396,3.64583 -20.0521,5.20834 -11.32814,1.43229 -26.43233,1.43229 z m -2.86458,-84.76574 h -40.23443 v 55.72924 h 41.53651 q 39.19276,0 39.19276,-28.25524 0,-14.45315 -10.15627,-20.96357 -10.15626,-6.51043 -30.33857,-6.51043 z m -40.23443,-77.08343 v 49.34902 h 35.41671 q 14.45314,0 22.26565,-2.73438 7.94272,-2.73437 12.10939,-10.41667 3.25522,-5.46876 3.25522,-12.2396 0,-14.45315 -10.28647,-19.14065 -10.28648,-4.81772 -31.38025,-4.81772 z m 283.98469,92.83866 q 0,15.88544 -4.9479,29.29691 -4.9479,13.41148 -14.3229,23.0469 -9.375,9.63543 -22.3959,14.84377 -13.0208,5.07813 -29.29688,5.07813 -16.14586,0 -29.0365,-5.20834 -12.89064,-5.20834 -22.39586,-14.84377 -9.37501,-9.76563 -14.32293,-22.91669 -4.81772,-13.28127 -4.81772,-29.29691 0,-16.14585 4.94793,-29.55733 4.94792,-13.41147 14.19272,-22.91669 9.2448,-9.50522 22.39586,-14.58335 13.15106,-5.20834 29.0365,-5.20834 16.14588,0 29.29688,5.20834 13.1511,5.20834 22.5261,14.84376 9.375,9.63543 14.1927,22.9167 4.9479,13.28126 4.9479,29.29691 z m -35.6771,0 q 0,-21.74482 -9.6354,-33.85421 -9.5052,-12.10939 -25.65108,-12.10939 -10.41668,0 -18.3594,5.46876 -7.94272,5.33855 -12.2396,15.88544 -4.29688,10.54689 -4.29688,24.60941 0,13.93231 4.16667,24.34899 4.29688,10.41668 12.10939,16.01564 7.94272,5.46876 18.61982,5.46876 16.14588,0 25.65108,-12.10939 9.6354,-12.2396 9.6354,-33.72401 z m 65.6251,-69.14071 h 3.9062 v -21.35419 q 0,-8.59376 0.3906,-13.41148 0.5209,-4.94792 2.6042,-8.46355 2.0833,-3.64584 5.9896,-5.85938 3.9063,-2.34375 8.724,-2.34375 6.7708,0 12.2396,5.07813 3.6458,3.38542 4.5573,8.33334 1.0416,4.81771 1.0416,13.8021 v 24.21878 h 13.0209 q 7.5521,0 11.4583,3.64584 4.0365,3.51563 4.0365,9.11459 0,7.16147 -5.7292,10.02606 -5.5989,2.86458 -16.1458,2.86458 h -6.6407 v 65.36467 q 0,8.33334 0.5209,12.89064 0.651,4.42709 3.125,7.29167 2.6041,2.73438 8.3333,2.73438 3.125,0 8.4636,-1.04167 5.3385,-1.17187 8.3333,-1.17187 4.2969,0 7.6823,3.51563 3.5156,3.38542 3.5156,8.46355 0,8.59376 -9.375,13.15106 -9.375,4.55729 -26.9531,4.55729 -16.6667,0 -25.2605,-5.59896 -8.5937,-5.59897 -11.3281,-15.49481 -2.6042,-9.89585 -2.6042,-26.43233 v -68.22924 h -4.6875 q -7.6823,0 -11.7188,-3.64584 -4.0364,-3.64583 -4.0364,-9.2448 0,-5.59896 4.1667,-9.11459 4.2968,-3.64584 12.3698,-3.64585 z"
id="text17"
aria-label="QBot" /><g
id="g2"
transform="translate(118.3711,30.188331)"><g
id="g17"
transform="matrix(1.195598,0,0,1.195598,-52.1047,-71.699942)"><path
transform="matrix(0.94873996,0,0,0.98304435,-83.800507,-44.696394)"><path
id="path17"
style="-inkscape-font-specification:'Arial Rounded MT Bold, ';opacity:1;fill:#a587c9;fill-opacity:1"
d="m 272.44727,142.82422 c -6.05914,0.0153 -11.03743,2.03697 -14.95508,6.0293 -3.98025,4.51096 -6.09057,11.66026 -6.47657,21.24218 v 3.72461 c -0.0471,-0.0706 -0.0973,-0.13474 -0.14453,-0.20508 v 52.01758 18.20703 57.11524 c 0.0477,-0.0476 0.0968,-0.0871 0.14453,-0.13477 v 64.16602 c 2e-5,8.38844 1.13695,15.11813 3.29102,20.36523 0.73739,1.28016 1.58937,2.4395 2.56445,3.46875 3.62458,3.92663 8.21734,6.0553 13.75782,6.42383 0.5993,0.0286 1.18235,0.0711 1.8125,0.0723 6.05823,-0.0157 11.0359,-2.03742 14.95312,-6.0293 3.98025,-4.51096 6.09057,-11.66026 6.47656,-21.24219 v -3.72461 c 0.0471,0.0706 0.0974,0.13474 0.14453,0.20508 v -52.01953 -18.20508 -57.11523 c -0.0477,0.0476 -0.0968,0.0871 -0.14453,0.13476 V 173.1543 c 0,-8.38703 -1.13767,-15.11654 -3.29101,-20.36328 -0.73758,-1.28076 -1.58899,-2.44105 -2.56446,-3.47071 -3.6877,-3.99502 -8.37983,-6.1256 -14.05078,-6.4375 -0.50595,-0.0202 -0.99001,-0.0576 -1.51757,-0.0586 z" /><path
@@ -62,4 +66,8 @@
id="path13" /><path
d="m 294.01562,237.18555 v 57.11523 c 0.79416,-8.72281 2.70075,-16.33307 5.73633,-22.81445 4.1111,-8.77777 9.55426,-15.33269 16.33203,-19.66602 6.77777,-4.22221 14.22288,-6.33398 22.33399,-6.33398 7.44443,0 14.38954,2.11177 20.83398,6.33398 6.44444,4.33333 11.66602,10.88825 15.66602,19.66602 3.88888,8.88888 5.83398,19.4438 5.83398,31.66601 0,18.55553 -4.05687,32.88889 -12.16797,43 -8.1111,10.1111 -18.27779,15.16797 -30.5,15.16797 -6,0 -11.66668,-1.22353 -17,-3.66797 -5.33333,-2.33333 -10.05491,-5.94314 -14.16601,-10.83203 -4.11111,-4.77777 -7.33269,-10.83464 -9.66602,-18.16797 -1.6545,-4.96351 -2.70166,-10.36855 -3.23633,-16.14648 v 52.01953 c 6.86067,10.22655 15.08688,17.82909 24.6875,22.79492 9.66665,5.11111 20.61178,7.66602 32.83399,7.66602 14.44443,0 27.61113,-3.61178 39.5,-10.83399 11.77777,-7.22221 20.99936,-17.77713 27.66601,-31.66601 6.66667,-13.77776 10,-30.3327 10,-49.66602 10e-6,-18.88887 -3.27648,-35.33399 -9.83203,-49.33398 -6.66666,-13.88887 -15.77843,-24.55556 -27.33398,-32 -11.66665,-7.44444 -24.55492,-11.16602 -38.66602,-11.16602 -11.55555,0 -22.05557,2.27844 -31.5,6.83399 -9.50364,4.64131 -18.62118,11.32337 -27.35547,20.03125 z"
style="-inkscape-font-specification:'Arial Rounded MT Bold, ';opacity:1;fill:#a7a7fa;fill-opacity:1"
id="path15" /></g></g></g></svg>
id="path15" /></g><path
style="font-size:192px;font-family:'Arial Rounded MT Bold';-inkscape-font-specification:'Arial Rounded MT Bold, Normal';white-space:pre;opacity:0.9;fill:#404040;stroke-width:5.66929"
d="m 499.58029,266.31166 q 6.09375,4.125 13.3125,8.0625 7.21875,3.84375 9.5625,6.1875 2.34375,2.25 2.34375,6.46875 0,3 -2.8125,6 -2.71875,3 -6.65625,3 -3.1875,0 -7.78125,-2.0625 -4.5,-2.0625 -10.6875,-6 -6.09375,-3.9375 -13.40625,-9.1875 -13.59375,6.9375 -33.375,6.9375 -16.03125,0 -28.78125,-5.0625 -12.65625,-5.15625 -21.28125,-14.71875 -8.625,-9.65625 -13.03125,-22.875 -4.3125,-13.21875 -4.3125,-28.78125 0,-15.84375 4.5,-29.0625 4.59375,-13.21875 13.21875,-22.5 8.625,-9.28125 21,-14.15625 12.375,-4.96875 28.125,-4.96875 21.375,0 36.65625,8.71875 15.375,8.625 23.25,24.65625 7.875,15.9375 7.875,37.5 0,32.71875 -17.71875,51.84375 z m -21.84375,-15.1875 q 5.8125,-6.65625 8.53125,-15.75 2.8125,-9.09375 2.8125,-21.09375 0,-15.09375 -4.875,-26.15625 -4.875,-11.0625 -13.96875,-16.6875 -9,-5.71875 -20.71875,-5.71875 -8.34375,0 -15.46875,3.1875 -7.03125,3.09375 -12.1875,9.09375 -5.0625,6 -8.0625,15.375 -2.90625,9.28125 -2.90625,20.90625 0,23.71875 11.0625,36.5625 11.0625,12.75 27.9375,12.75 6.9375,0 14.25,-2.90625 -4.40625,-3.28125 -11.0625,-6.5625 -6.5625,-3.28125 -9,-5.0625 -2.4375,-1.78125 -2.4375,-5.0625 0,-2.8125 2.34375,-4.96875 2.34375,-2.15625 5.15625,-2.15625 8.53125,0 28.59375,14.25 z m 128.0625,20.15625 v -3.28125 q -4.59375,5.8125 -9.65625,9.75 -5.0625,3.9375 -11.0625,5.8125 -6,1.96875 -13.6875,1.96875 -9.28125,0 -16.6875,-3.84375 -7.3125,-3.84375 -11.34375,-10.59375 -4.78125,-8.15625 -4.78125,-23.4375 v -50.71875 q 0,-7.6875 3.46875,-11.4375 3.46875,-3.84375 9.1875,-3.84375 5.8125,0 9.375,3.84375 3.5625,3.84375 3.5625,11.4375 v 40.96875 q 0,8.90625 1.5,15 1.5,6 5.34375,9.46875 3.9375,3.375 10.59375,3.375 6.46875,0 12.1875,-3.84375 5.71875,-3.84375 8.34375,-10.03125 2.15625,-5.4375 2.15625,-23.8125 v -31.125 q 0,-7.59375 3.5625,-11.4375 3.5625,-3.84375 9.28125,-3.84375 5.71875,0 9.1875,3.84375 3.46875,3.75 3.46875,11.4375 v 74.15625 q 0,7.3125 -3.375,10.96875 -3.28125,3.65625 -8.53125,3.65625 -5.25,0 -8.71875,-3.75 -3.375,-3.84375 -3.375,-10.6875 z m 75.09375,-75.09375 v 73.96875 q 0,7.6875 -3.65625,11.625 -3.65625,3.9375 -9.28125,3.9375 -5.625,0 -9.1875,-4.03125 -3.46875,-4.03125 -3.46875,-11.53125 v -73.21875 q 0,-7.59375 3.46875,-11.4375 3.5625,-3.84375 9.1875,-3.84375 5.625,0 9.28125,3.84375 3.65625,3.84375 3.65625,10.6875 z m -12.65625,-26.4375 q -5.34375,0 -9.1875,-3.28125 -3.75,-3.28125 -3.75,-9.28125 0,-5.4375 3.84375,-8.90625 3.9375,-3.5625 9.09375,-3.5625 4.96875,0 8.8125,3.1875 3.84375,3.1875 3.84375,9.28125 0,5.90625 -3.75,9.28125 -3.75,3.28125 -8.90625,3.28125 z m 130.87499,84.28125 q 0,4.78125 -2.9062,10.21875 -2.8125,5.4375 -8.7188,10.40625 -5.8125,4.875 -14.7187,7.875 -8.9063,3 -20.06254,3 -23.71875,0 -37.03125,-13.78125 -13.3125,-13.875 -13.3125,-37.125 0,-15.75 6.09375,-27.84375 6.09375,-12.09375 17.625,-18.65625 11.53125,-6.65625 27.56254,-6.65625 9.9375,0 18.1875,2.90625 8.3437,2.90625 14.0625,7.5 5.8125,4.59375 8.8125,9.84375 3.0937,5.15625 3.0937,9.65625 0,4.59375 -3.4687,7.78125 -3.375,3.1875 -8.25,3.1875 -3.1875,0 -5.3438,-1.59375 -2.0625,-1.6875 -4.6875,-5.34375 -4.6875,-7.125 -9.8437,-10.6875 -5.0625,-3.5625 -12.93754,-3.5625 -11.34375,0 -18.28125,8.90625 -6.9375,8.8125 -6.9375,24.1875 0,7.21875 1.78125,13.3125 1.78125,6 5.15625,10.3125 3.375,4.21875 8.15625,6.46875 4.78125,2.15625 10.50004,2.15625 7.6875,0 13.125,-3.5625 5.5312,-3.5625 9.75,-10.875 2.3437,-4.3125 5.0625,-6.75 2.7187,-2.4375 6.6562,-2.4375 4.6875,0 7.7813,3.5625 3.0937,3.5625 3.0937,7.59375 z m 78.75,19.96875 -22.5937,-37.125 -13.875,13.125 v 20.34375 q 0,7.40625 -3.9375,11.4375 -3.8438,3.9375 -8.9063,3.9375 -5.9062,0 -9.2812,-3.9375 -3.375,-3.9375 -3.375,-11.625 v -109.125 q 0,-8.53125 3.2812,-12.9375 3.2813,-4.5 9.375,-4.5 5.9063,0 9.375,4.03125 3.4688,4.03125 3.4688,11.90625 v 62.0625 l 28.7812,-30.1875 q 5.3438,-5.625 8.1563,-7.6875 2.8125,-2.0625 6.8437,-2.0625 4.7813,0 7.9688,3.09375 3.1875,3 3.1875,7.59375 0,5.625 -10.4063,15 l -13.5937,12.46875 26.25,41.25 q 2.9062,4.59375 4.125,7.03125 1.3125,2.34375 1.3125,4.5 0,6.09375 -3.375,9.65625 -3.2813,3.46875 -8.7188,3.46875 -4.6875,0 -7.2187,-2.53125 -2.5313,-2.53125 -6.8438,-9.1875 z m 106.7813,9.375 h -42 q -9.0938,0 -13.0313,-4.03125 -3.8437,-4.125 -3.8437,-13.03125 v -103.3125 q 0,-9.09375 3.9375,-13.03125 4.0312,-4.03125 12.9375,-4.03125 h 44.5312 q 9.8438,0 17.06247,1.21875 7.2188,1.21875 12.9375,4.6875 4.875,2.90625 8.625,7.40625 3.75,4.40625 5.7188,9.84375 1.9687,5.34375 1.9687,11.34375 0,20.625 -20.625,30.1875 27.0938,8.625 27.0938,33.5625 0,11.53125 -5.9063,20.8125 -5.9062,9.1875 -15.9375,13.59375 -6.2812,2.625 -14.4375,3.75 -8.15617,1.03125 -19.03117,1.03125 z m -2.0625,-61.03125 h -28.9688 v 40.125 h 29.9063 q 28.21867,0 28.21867,-20.34375 0,-10.40625 -7.3125,-15.09375 -7.31247,-4.6875 -21.84367,-4.6875 z m -28.9688,-55.5 v 35.53125 h 25.5 q 10.4063,0 16.0313,-1.96875 5.71867,-1.96875 8.71867,-7.5 2.3438,-3.9375 2.3438,-8.8125 0,-10.40625 -7.40627,-13.78125 -7.4062,-3.46875 -22.5937,-3.46875 z m 204.46877,66.84375 q 0,11.4375 -3.5625,21.0Line truncated
id="text1"
aria-label="QuickBot" /></g></g></svg>

Before

Width:  |  Height:  |  Size: 9.4 KiB

After

Width:  |  Height:  |  Size: 12 KiB

+8 -10
View File
@@ -3,13 +3,13 @@
</style>
<p align="center">
<a href="https://qbot.botforge.biz"><img src="img/qbot.svg" alt="QBot"></a>
<a href="https://quickbot.botforge.biz"><img src="img/qbot.svg" alt="QuickBot"></a>
</p>
<p align="center">
<em>Telegram Bots Rapid Application Development (RAD) Framework.</em>
</p>
**QBot** is a library for fast development of Telegram bots and mini-apps following the **RAD (Rapid Application Development)** principle in a **declarative style**.
**QuickBot** is a library for fast development of Telegram bots and mini-apps following the **RAD (Rapid Application Development)** principle in a **declarative style**.
## Key Features
@@ -20,13 +20,13 @@
- **Context Preservation** – Store navigation stacks and user interaction states in the database.
- **Internationalization Support** – Localizable UI and string fields for multilingual bots.
**QBot** powered by **[FastAPI](https://fastapi.tiangolo.com)**, **[SQLModel](https://sqlmodel.tiangolo.com)** & **[aiogram](https://aiogram.dev)** – Leverage the full capabilities of these frameworks for high performance and flexibility.
**QuickBot** powered by **[FastAPI](https://fastapi.tiangolo.com)**, **[SQLModel](https://sqlmodel.tiangolo.com)** & **[aiogram](https://aiogram.dev)** – Leverage the full capabilities of these frameworks for high performance and flexibility.
## Benefits
- **Faster Development** – Automate repetitive tasks and build bots in record time.
- **Highly Modular** – Easily extend and customize functionality.
- **Less Code Duplication** – Focus on core features while QBot handles the rest.
- **Less Code Duplication** – Focus on core features while QuickBot handles the rest.
- **Enterprise-Grade Structure** – Scalable, maintainable, and optimized for real-world usage.
## Example
@@ -42,12 +42,12 @@ class AppEntity(BotEntity):
)
name: str # entity field with default sqlmodel's FieldInfo descriptor
# and default qbot's field descriptor
# and default quickbot's field descriptor
description: str | None = Field( # field with sqlmodel's descriptor
sa_type = String, index = True) # and default qbot's descriptor
sa_type = String, index = True) # and default quickbot's descriptor
age: int = EntityField( # field with qbot's descriptor
age: int = EntityField( # field with quickbot's descriptor
caption = "Age",
)
@@ -96,6 +96,4 @@ async def menu(context: CommandCallbackContext):
```
## Result
<iframe width="100%" height="691" src="https://www.youtube.com/embed/ptTnoppkYfM" title="QBot Framework – The Open-Source RAD Tool for Telegram Bots" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
forced_change_
<iframe width="100%" height="691" src="https://www.youtube.com/embed/ptTnoppkYfM" title="QuickBot Framework – The Open-Source RAD Tool for Telegram Bots" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -2,7 +2,7 @@ from aiogram.types import Message, CallbackQuery
from typing import TYPE_CHECKING
if TYPE_CHECKING:
from qbot.main import QBotApp
from quickbot.main import QBotApp
from ..context import CallbackCommand
@@ -12,14 +12,14 @@ from ....utils.navigation import (
pop_navigation_context,
)
import qbot.bot.handlers.menu.main as menu_main
import qbot.bot.handlers.menu.settings as menu_settings
import qbot.bot.handlers.menu.parameters as menu_parameters
import qbot.bot.handlers.menu.language as menu_language
import qbot.bot.handlers.menu.entities as menu_entities
import qbot.bot.handlers.forms.entity_list as form_list
import qbot.bot.handlers.forms.entity_form as form_item
import qbot.bot.handlers.editors.main as editor
import quickbot.bot.handlers.menu.main as menu_main
import quickbot.bot.handlers.menu.settings as menu_settings
import quickbot.bot.handlers.menu.parameters as menu_parameters
import quickbot.bot.handlers.menu.language as menu_language
import quickbot.bot.handlers.menu.entities as menu_entities
import quickbot.bot.handlers.forms.entity_list as form_list
import quickbot.bot.handlers.forms.entity_form as form_item
import quickbot.bot.handlers.editors.main as editor
async def route_callback(message: Message | CallbackQuery, back: bool = True, **kwargs):
@@ -47,7 +47,7 @@ async def route_callback(message: Message | CallbackQuery, back: bool = True, **
elif context.command == CallbackCommand.FIELD_EDITOR:
await editor.field_editor(message, **kwargs)
elif context.command == CallbackCommand.USER_COMMAND:
import qbot.bot.handlers.user_handlers.main as user_handler
import quickbot.bot.handlers.user_handlers.main as user_handler
app: "QBotApp" = kwargs["app"]
cmd = app.bot_commands.get(context.user_command.split("&")[0])
File renamed without changes.
@@ -6,7 +6,7 @@ from aiogram.utils.keyboard import InlineKeyboardBuilder
from sqlmodel.ext.asyncio.session import AsyncSession
from typing import TYPE_CHECKING
from qbot.model.descriptors import EntityEventContext
from quickbot.model.descriptors import EntityEventContext
from ..context import ContextData, CallbackCommand
from ....model.user import UserBase
@@ -7,17 +7,17 @@ from ..context import ContextData, CallbackCommand
from ....utils.main import get_send_message
from ....utils.navigation import save_navigation_context, pop_navigation_context
import qbot.bot.handlers.menu.entities as entities
import qbot.bot.handlers.menu.settings as settings
import qbot.bot.handlers.menu.parameters as parameters
import qbot.bot.handlers.menu.language as language
import qbot.bot.handlers.editors.main as editor
import qbot.bot.handlers.editors.main_callbacks as editor_callbacks
import qbot.bot.handlers.forms.entity_list as entity_list
import qbot.bot.handlers.forms.entity_form as entity_form
import qbot.bot.handlers.forms.entity_form_callbacks as entity_form_callbacks
import qbot.bot.handlers.common.filtering_callbacks as filtering_callbacks
import qbot.bot.handlers.user_handlers.main as user_handlers_main
import quickbot.bot.handlers.menu.entities as entities
import quickbot.bot.handlers.menu.settings as settings
import quickbot.bot.handlers.menu.parameters as parameters
import quickbot.bot.handlers.menu.language as language
import quickbot.bot.handlers.editors.main as editor
import quickbot.bot.handlers.editors.main_callbacks as editor_callbacks
import quickbot.bot.handlers.forms.entity_list as entity_list
import quickbot.bot.handlers.forms.entity_form as entity_form
import quickbot.bot.handlers.forms.entity_form_callbacks as entity_form_callbacks
import quickbot.bot.handlers.common.filtering_callbacks as filtering_callbacks
import quickbot.bot.handlers.user_handlers.main as user_handlers_main
logger = getLogger(__name__)
File renamed without changes.
@@ -4,21 +4,21 @@ from aiogram.types import Message, CallbackQuery, InlineKeyboardButton
from inspect import iscoroutinefunction
from typing import TYPE_CHECKING
from qbot.utils.main import clear_state
from qbot.utils.navigation import (
from quickbot.utils.main import clear_state
from quickbot.utils.navigation import (
save_navigation_context,
get_navigation_context,
pop_navigation_context,
)
from qbot.bot.handlers.editors.main import field_editor
from qbot.bot.handlers.common.routing import route_callback
from qbot.utils.serialization import deserialize
from qbot.utils.main import get_send_message
from qbot.model.descriptors import BotCommand, CommandCallbackContext
from qbot.model.settings import Settings
from quickbot.bot.handlers.editors.main import field_editor
from quickbot.bot.handlers.common.routing import route_callback
from quickbot.utils.serialization import deserialize
from quickbot.utils.main import get_send_message
from quickbot.model.descriptors import BotCommand, CommandCallbackContext
from quickbot.model.settings import Settings
if TYPE_CHECKING:
from qbot.main import QBotApp
from quickbot.main import QBotApp
from ..context import ContextData, CallbackCommand, CommandContext
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
+4 -4
View File
@@ -1,4 +1,4 @@
from qbot import (
from quickbot import (
QBotApp,
BotEntity,
Entity,
@@ -10,9 +10,9 @@ from qbot import (
ContextData,
CallbackCommand,
)
from qbot.model.user import UserBase
from qbot.model.descriptors import Filter
from qbot.model.role import RoleBase
from quickbot.model.user import UserBase
from quickbot.model.descriptors import Filter
from quickbot.model.role import RoleBase
from aiogram.types import InlineKeyboardButton
from datetime import datetime