Riichi/backend/src/api.py
2026-02-18 16:20:30 +01:00

44 lines
1.1 KiB
Python

from flask import Flask, jsonify, request
from flask_cors import CORS
from game.tile import *
from game.error import *
app = Flask(__name__)
CORS(app)
tiles = Tile.generateAll()
# ============= GET ================
@app.route('/api/tiles', methods=['GET'])
def get_all_tiles():
"""Récupère toutes les tuiles"""
tiles_data = [
{
'id': tile.id,
'family': str(tile.family),
'value': str(tile.value),
'svg': tile.get_img()
}
for tile in tiles
]
return jsonify({'tiles': tiles_data})
@app.route('/api/tiles/<int:tile_id>', methods=['GET'])
def get_tile(tile_id):
if tile_id < 0 or tile_id >= len(tiles):
return jsonify({'error': 'Tuile non trouvée'}), 404
tile = tiles[tile_id]
svg = f'<svg viewBox="0 0 500 700" width="100" height="140">{tile.get_img()}</svg>'
return jsonify({
'id': tile.id,
'family': str(tile.family),
'value': str(tile.value),
'svg': svg
})
# ============== POST ================
if __name__ == '__main__':
app.run(debug=True, port=5000)