936b33cc80
CI / Generate TypeScript types (push) Successful in 18s
CI / Generate TypeScript types (pull_request) Successful in 9s
CI / Server unit tests (push) Successful in 21s
CI / Build client (push) Successful in 40s
CI / Server unit tests (pull_request) Successful in 21s
CI / Build server (pull_request) Successful in 24s
CI / Build server (push) Has been cancelled
CI / Playwright E2E tests (push) Has been cancelled
CI / Build and push Docker image (push) Has been cancelled
CI / Notify (push) Has been cancelled
CI / Build client (pull_request) Has been cancelled
CI / Playwright E2E tests (pull_request) Has been cancelled
CI / Build and push Docker image (pull_request) Has been cancelled
CI / Notify (pull_request) Has been cancelled
Nahrazuje /vecere novou stránkou /objednani. Místo jednoho OBJEDNAVAM bucketu umožňuje vytvářet více skupin, kde každá objednává z jiného obchodu. - Skupiny mají stavový automat: open → locked → ordered - Obchody spravuje admin heslem (ADMIN_PASSWORD env var) přes modal „Správa obchodů" - Při stavu ordered zakladatel generuje QR kódy platby (nový PayForGroupModal – volné částky bez menu) - PayForAllModal (oběd) upraven: plátce nyní vidí svůj vlastní díl jako informační řádek - Nové testy: stores.test.ts + groups.test.ts (36 testů)
129 lines
3.2 KiB
YAML
129 lines
3.2 KiB
YAML
openapi: 3.0.4
|
|
info:
|
|
title: Luncher API
|
|
version: 1.0.0
|
|
servers:
|
|
- url: /api
|
|
paths:
|
|
# Obecné (/api)
|
|
/login:
|
|
$ref: "./paths/login.yml"
|
|
/qr:
|
|
$ref: "./paths/getPizzaQr.yml"
|
|
/qr/generate:
|
|
$ref: "./paths/qr/generate.yml"
|
|
/data:
|
|
$ref: "./paths/getData.yml"
|
|
|
|
# Restaurace a jídla (/api/food)
|
|
/food/addChoice:
|
|
$ref: "./paths/food/addChoice.yml"
|
|
/food/removeChoice:
|
|
$ref: "./paths/food/removeChoice.yml"
|
|
/food/updateNote:
|
|
$ref: "./paths/food/updateNote.yml"
|
|
/food/removeChoices:
|
|
$ref: "./paths/food/removeChoices.yml"
|
|
/food/changeDepartureTime:
|
|
$ref: "./paths/food/changeDepartureTime.yml"
|
|
/food/jdemeObed:
|
|
$ref: "./paths/food/jdemeObed.yml"
|
|
/food/updateBuyer:
|
|
$ref: "./paths/food/updateBuyer.yml"
|
|
|
|
# Pizza day (/api/pizzaDay)
|
|
/pizzaDay/create:
|
|
$ref: "./paths/pizzaDay/create.yml"
|
|
/pizzaDay/delete:
|
|
$ref: "./paths/pizzaDay/delete.yml"
|
|
/pizzaDay/lock:
|
|
$ref: "./paths/pizzaDay/lock.yml"
|
|
/pizzaDay/unlock:
|
|
$ref: "./paths/pizzaDay/unlock.yml"
|
|
/pizzaDay/finishOrder:
|
|
$ref: "./paths/pizzaDay/finishOrder.yml"
|
|
/pizzaDay/finishDelivery:
|
|
$ref: "./paths/pizzaDay/finishDelivery.yml"
|
|
/pizzaDay/add:
|
|
$ref: "./paths/pizzaDay/addPizza.yml"
|
|
/pizzaDay/remove:
|
|
$ref: "./paths/pizzaDay/removePizza.yml"
|
|
/pizzaDay/updatePizzaDayNote:
|
|
$ref: "./paths/pizzaDay/updatePizzaDayNote.yml"
|
|
/pizzaDay/updatePizzaFee:
|
|
$ref: "./paths/pizzaDay/updatePizzaFee.yml"
|
|
/pizzaDay/dismissQr:
|
|
$ref: "./paths/pizzaDay/dismissQr.yml"
|
|
|
|
# Notifikace (/api/notifications)
|
|
/notifications/settings:
|
|
$ref: "./paths/notifications/settings.yml"
|
|
|
|
# Easter eggy (/api/easterEggs)
|
|
/easterEggs:
|
|
$ref: "./paths/easterEggs/easterEggs.yml"
|
|
/easterEggs/{url}:
|
|
$ref: "./paths/easterEggs/easterEgg.yml"
|
|
|
|
# Statistiky (/api/stats)
|
|
/stats:
|
|
$ref: "./paths/stats/stats.yml"
|
|
|
|
# Hlasování (/api/voting)
|
|
/voting/getVotes:
|
|
$ref: "./paths/voting/getVotes.yml"
|
|
/voting/updateVote:
|
|
$ref: "./paths/voting/updateVote.yml"
|
|
/voting/stats:
|
|
$ref: "./paths/voting/getVotingStats.yml"
|
|
|
|
# Changelog (/api/changelogs)
|
|
/changelogs:
|
|
$ref: "./paths/changelogs/getChangelogs.yml"
|
|
|
|
# Skupiny objednávek (/api/groups)
|
|
/groups/create:
|
|
$ref: "./paths/groups/createGroup.yml"
|
|
/groups/delete:
|
|
$ref: "./paths/groups/deleteGroup.yml"
|
|
/groups/addMember:
|
|
$ref: "./paths/groups/addMember.yml"
|
|
/groups/removeMember:
|
|
$ref: "./paths/groups/removeMember.yml"
|
|
/groups/updateMember:
|
|
$ref: "./paths/groups/updateMember.yml"
|
|
/groups/setState:
|
|
$ref: "./paths/groups/setState.yml"
|
|
|
|
# Správa obchodů (/api/stores)
|
|
/stores:
|
|
$ref: "./paths/stores/listStores.yml"
|
|
/stores/add:
|
|
$ref: "./paths/stores/addStore.yml"
|
|
/stores/delete:
|
|
$ref: "./paths/stores/deleteStore.yml"
|
|
|
|
# DEV endpointy (/api/dev)
|
|
/dev/generate:
|
|
$ref: "./paths/dev/generate.yml"
|
|
/dev/clear:
|
|
$ref: "./paths/dev/clear.yml"
|
|
|
|
components:
|
|
schemas:
|
|
$ref: "./schemas/_index.yml"
|
|
responses:
|
|
ClientDataResponse:
|
|
description: Aktuální data pro klienta
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "./schemas/_index.yml#/ClientData"
|
|
securitySchemes:
|
|
bearerAuth:
|
|
type: http
|
|
scheme: bearer
|
|
bearerFormat: JWT
|
|
security:
|
|
- bearerAuth: []
|