mirror of
https://github.com/pezkuwichain/pezkuwi-telegram-miniapp.git
synced 2026-04-21 23:37:55 +00:00
fix: use Kurdish terminology (Xal instead of Puanlar)
This commit is contained in:
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "pezkuwi-telegram-miniapp",
|
||||
"version": "1.0.124",
|
||||
"version": "1.0.125",
|
||||
"type": "module",
|
||||
"description": "Pezkuwichain Telegram Mini App - Forum, Announcements, Rewards",
|
||||
"author": "Pezkuwichain Team",
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
import { ApiPromise, WsProvider } from '@pezkuwi/api';
|
||||
|
||||
async function main() {
|
||||
console.log('Connecting to People Chain...');
|
||||
const api = await ApiPromise.create({
|
||||
provider: new WsProvider('wss://people-rpc.pezkuwichain.io')
|
||||
});
|
||||
await api.isReady;
|
||||
console.log('Connected!\n');
|
||||
|
||||
const pallets = ['trust', 'referral', 'stakingScore', 'tiki'];
|
||||
|
||||
for (const pallet of pallets) {
|
||||
console.log(`========== ${pallet} ==========`);
|
||||
|
||||
if (api.tx[pallet]) {
|
||||
console.log('Extrinsics (tx):');
|
||||
const txMethods = Object.keys(api.tx[pallet]);
|
||||
for (const method of txMethods) {
|
||||
const fn = api.tx[pallet][method];
|
||||
console.log(` - ${pallet}.${method}`);
|
||||
// Try to get method info
|
||||
if (fn.meta) {
|
||||
const args = fn.meta.args.map(a => `${a.name}: ${a.type}`).join(', ');
|
||||
console.log(` Args: (${args})`);
|
||||
if (fn.meta.docs.length > 0) {
|
||||
console.log(` Docs: ${fn.meta.docs[0].toString().substring(0, 100)}...`);
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
console.log('No extrinsics available');
|
||||
}
|
||||
|
||||
if (api.query[pallet]) {
|
||||
console.log('\nStorage:');
|
||||
const storageMethods = Object.keys(api.query[pallet]);
|
||||
console.log(` ${storageMethods.join(', ')}`);
|
||||
}
|
||||
console.log('');
|
||||
}
|
||||
|
||||
await api.disconnect();
|
||||
process.exit(0);
|
||||
}
|
||||
|
||||
main().catch(console.error);
|
||||
@@ -0,0 +1,70 @@
|
||||
import { ApiPromise, WsProvider } from '@pezkuwi/api';
|
||||
|
||||
const ADDRESS = '5CyuFfbF95rzBxru7c9yEsX4XmQXUxpLUcbj9RLg9K1cGiiF';
|
||||
|
||||
async function checkChain(name, endpoint) {
|
||||
console.log(`\n========== ${name} ==========`);
|
||||
console.log(`Connecting to ${endpoint}...`);
|
||||
|
||||
try {
|
||||
const provider = new WsProvider(endpoint);
|
||||
const api = await ApiPromise.create({ provider });
|
||||
await api.isReady;
|
||||
console.log('Connected!\n');
|
||||
|
||||
// List all available pallets
|
||||
console.log('Available Pallets:');
|
||||
const pallets = Object.keys(api.query);
|
||||
console.log(pallets.join(', '));
|
||||
console.log('');
|
||||
|
||||
// Check specific pallets
|
||||
const checkPallets = ['trust', 'referral', 'stakingScore', 'tiki', 'assetRewards', 'staking'];
|
||||
|
||||
for (const pallet of checkPallets) {
|
||||
if (api.query[pallet]) {
|
||||
console.log(`✓ ${pallet} pallet exists`);
|
||||
console.log(` Storage: ${Object.keys(api.query[pallet]).join(', ')}`);
|
||||
|
||||
// Try to query user data
|
||||
if (pallet === 'trust' && api.query.trust.trustScores) {
|
||||
const score = await api.query.trust.trustScores(ADDRESS);
|
||||
console.log(` Your trust score: ${score.toString()}`);
|
||||
}
|
||||
if (pallet === 'referral' && api.query.referral.referralCount) {
|
||||
const count = await api.query.referral.referralCount(ADDRESS);
|
||||
console.log(` Your referral count: ${count.toString()}`);
|
||||
}
|
||||
if (pallet === 'stakingScore') {
|
||||
for (const storage of Object.keys(api.query.stakingScore)) {
|
||||
try {
|
||||
const val = await api.query.stakingScore[storage](ADDRESS);
|
||||
console.log(` ${storage}: ${val.toString()}`);
|
||||
} catch {
|
||||
console.log(` ${storage}: (requires different args)`);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (pallet === 'staking' && api.query.staking.ledger) {
|
||||
const ledger = await api.query.staking.ledger(ADDRESS);
|
||||
console.log(` Your staking ledger: ${ledger.toString()}`);
|
||||
}
|
||||
} else {
|
||||
console.log(`✗ ${pallet} pallet NOT available`);
|
||||
}
|
||||
}
|
||||
|
||||
await api.disconnect();
|
||||
} catch (error) {
|
||||
console.error(`Error: ${error.message}`);
|
||||
}
|
||||
}
|
||||
|
||||
async function main() {
|
||||
await checkChain('Relay Chain', 'wss://rpc.pezkuwichain.io');
|
||||
await checkChain('People Chain', 'wss://people-rpc.pezkuwichain.io');
|
||||
await checkChain('Asset Hub', 'wss://asset-hub-rpc.pezkuwichain.io');
|
||||
process.exit(0);
|
||||
}
|
||||
|
||||
main().catch(console.error);
|
||||
+1
-1
@@ -389,7 +389,7 @@ export async function getAllScoresWithFallback(
|
||||
const stakingScore = stakingResult.score;
|
||||
const referralScore = calculateReferralScore(referralCount);
|
||||
|
||||
// If staking score is 0, trust score is 0 (matches pallet logic)
|
||||
// Ger staking 0 be, trust jî 0 be (matches pallet logic)
|
||||
if (stakingScore === 0) {
|
||||
return {
|
||||
...emptyResult,
|
||||
|
||||
@@ -207,7 +207,7 @@ export function RewardsSection() {
|
||||
{[
|
||||
{ id: 'overview' as const, label: 'Geşbîn' },
|
||||
{ id: 'referrals' as const, label: 'Referral' },
|
||||
{ id: 'scores' as const, label: 'Puanlar' },
|
||||
{ id: 'scores' as const, label: 'Xal' },
|
||||
].map(({ id, label }) => (
|
||||
<button
|
||||
key={id}
|
||||
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": "1.0.124",
|
||||
"buildTime": "2026-02-06T22:20:16.985Z",
|
||||
"buildNumber": 1770416416986
|
||||
"version": "1.0.125",
|
||||
"buildTime": "2026-02-06T22:33:15.711Z",
|
||||
"buildNumber": 1770417195712
|
||||
}
|
||||
|
||||
@@ -2,18 +2,12 @@ import { serve } from 'https://deno.land/std@0.177.0/http/server.ts';
|
||||
import { createClient } from 'https://esm.sh/@supabase/supabase-js@2';
|
||||
import { createHmac } from 'https://deno.land/std@0.177.0/node/crypto.ts';
|
||||
|
||||
// CORS - Production domain only
|
||||
const ALLOWED_ORIGINS = [
|
||||
'https://telegram.pezkuwichain.io',
|
||||
'https://t.me', // Telegram WebApp iframe
|
||||
];
|
||||
// CORS - Only allow our Telegram MiniApp domain
|
||||
const ALLOWED_ORIGIN = 'https://telegram.pezkuwichain.io';
|
||||
|
||||
function getCorsHeaders(origin: string | null): Record<string, string> {
|
||||
const allowedOrigin =
|
||||
origin && ALLOWED_ORIGINS.some((o) => origin.startsWith(o)) ? origin : ALLOWED_ORIGINS[0];
|
||||
|
||||
return {
|
||||
'Access-Control-Allow-Origin': allowedOrigin,
|
||||
'Access-Control-Allow-Origin': ALLOWED_ORIGIN,
|
||||
'Access-Control-Allow-Headers':
|
||||
'authorization, x-client-info, apikey, content-type, x-supabase-client-platform',
|
||||
'Access-Control-Allow-Methods': 'POST, OPTIONS',
|
||||
@@ -145,8 +139,7 @@ function verifySessionToken(token: string, botToken: string): number | null {
|
||||
}
|
||||
|
||||
serve(async (req) => {
|
||||
const origin = req.headers.get('origin');
|
||||
const corsHeaders = getCorsHeaders(origin);
|
||||
const corsHeaders = getCorsHeaders(req.headers.get('origin'));
|
||||
|
||||
// Handle CORS preflight
|
||||
if (req.method === 'OPTIONS') {
|
||||
|
||||
Reference in New Issue
Block a user