Interface for platform service names that gets augmented by each service module.

Each platform service extends this interface through module augmentation to add its service name. This pattern provides compile-time type safety for service names.

Example

// How services augment this interface (done internally by each service):
const SERVICE_NAME = 'http';
PlatformServiceName.Http = SERVICE_NAME;

declare module '@limetech/lime-web-components' {
interface PlatformServiceNameType {
Http: typeof SERVICE_NAME;
}

interface LimeWebComponentPlatform {
get(name: PlatformServiceNameType['Http']): HttpService;
}
}

Hierarchy

  • PlatformServiceNameType

Properties

Application: "state.application"
CommandBus: "commandBus"

See

Service | CommandBus

ConditionRegistry: "conditionRegistry"

See

Service | ConditionRegistry

ConfigRepository: "state.configs"

See

Service | ConfigRepository

DateTimeFormatter: "datetimeformatter"
Device: "state.device"

See

Service | Device

Dialog: "dialog"
EventDispatcher: "eventDispatcher"

See

Service | EventDispatcher

FilterRepository: "state.filters"

See

Service | FilterRepository

Http: "http"
KeybindingRegistry: "keybindingRegistry"

See

Service | KeybindingRegistry

Note

Work in progress, do not use!

LimeObjectRepository: "state.limeobjects"

See

Service | LimeObjectRepository

LimeTypeRepository: "state.limetypes"
Navigator: "navigator"

See

Service | Navigator

Notification: "notifications"
NotificationRepository: "state.notifications"
PollerFactory: "pollerFactory"

See

PollerFactoryService

Query: "query"
RouteRegistry: "routeRegistry"

See

Service | RouteRegistry

TaskRepository: "state.tasks"

See

Service | TaskRepository

Translate: "translate"
UserDataRepository: "state.user-data"
UserPreferencesRepository: "userPreferences"
ViewFactoryRegistry: "viewFactoryRegistry"
WebComponentRegistry: "webComponentRegistry"