cabstar_mobile_core (0.2.0)

Published 2026-06-06 21:58:09 +03:00 by anton

Installation

dart pub add cabstar_mobile_core:0.2.0 --hosted-url=

About this package

Shared Dart/Flutter library for Cabstar mobile clients.

cabstar-mobile-core

Общая Dart/Flutter-библиотека для Cabstar mobile (client, partner).

Типы соответствуют @cabstar/protocol@0.3.2 и wire-эндпоинтам cabstar-api.

Установка

Path (разработка):

dependencies:
  cabstar_mobile_core:
    path: ../cabstar-mobile-core

Из Gitea pub registry:

dart pub token add https://git.serverbox.dev/api/packages/anton/pub --env-var PUB_TOKEN
# или: ../scripts/setup-pub-token.sh

dart pub add cabstar_mobile_core \
  --hosted-url=https://git.serverbox.dev/api/packages/anton/pub

API

ApiConfig

Базовый URL и путь api/v0.1 (из ApiConstants).

CabstarApi

Типизированный HTTP-клиент. JWT передаётся через AuthTokenProvider / AuthSession.

Метод Route
getHealth GET /health
getAppInfo GET /
getLocales GET /locales
getServiceCatalog GET /service-items
getFleetItems GET /fleet-items
getFleetTariffs GET /fleet-tariffs
getFleetCategories GET /fleet-categories
getTenants GET /tenants
getCurrencies GET /currencies
getRateUnits GET /rate-units
getServiceModes GET /service-modes
getServiceLevels GET /service-levels
register POST /auth/register
login POST /auth/login
getProfile GET /auth/me
getOperatorAvailability GET /operator/availability
setOperatorAvailability PATCH /operator/availability

AuthSession

In-memory JWT-сессия: accessToken + UserDto, hasRole / requireRole.

Роли: CabstarRoles.user (публичная регистрация), manager, admin.

Пример (client)

final session = AuthSession();
final api = CabstarApi(authTokenProvider: session);

final login = await api.register(
  RegisterRequest(email: 'user@example.com', password: 'secret12'),
);
session.setFromLogin(login);
session.requireRole(CabstarRoles.user);

final catalog = await api.getServiceCatalog();

Protocol DTOs

import 'package:cabstar_mobile_core/protocol.dart';

Codegen

После изменения @freezed моделей:

dart run build_runner build

Публикация

./scripts/pub-push.sh
Details
Pub
2026-06-06 21:58:09 +03:00
1
32 KiB
Assets (1)
0.2.0.tar.gz 32 KiB
Versions (3) View all
0.3.0 2026-06-06
0.2.0 2026-06-06
0.1.0 2026-06-06