LeCodesdocs

Справочник API

Полный справочник API для проектов le.codes. Всё здесь — глобальные значения без импортов: пользовательский код обращается к UIScreen, Scene, Sprite, fetch, … напрямую, а сборка подставляет реализацию и вырезает то, что проект не использует.

Начни со страницы Соглашения — единицы измерения, системы координат, семантика значений и правила жизненного цикла, на которые опирается каждая страница. Большинство приложений — UI-приложения: точка входа в UI-слой — Модель элементов (модель элементов плюс устройство типичного приложения: модуль токенов с theme(), экраны, каркас вкладок).

Заметка

Это справочник по поверхности API: сигнатуры, единицы, крайние случаи. Учиться удобнее по Гайду — он ведёт через сборку приложения и по дороге ссылается сюда.

Вся поверхность одним взглядом

Одна строка на глобал. Жирная ссылка — страница, которая его документирует.

UI

  • модель элементов: фабрики, цепочки, ссылки, условные дети, устройство приложения — Модель элементов
  • модель .style(): свойства, единицы, безопасные зоны, адаптивность, animateTo — Стилизация
  • theme — стилевые переменные на всё приложение (var()), системные значения, живая смена темы — Тема
  • классы стилей: блоки состояний $name, el.class, каскад, $pressed/$focusedКлассы стилей
  • UIRow, UIColumn, UIBox (устарел), UIScrollable, UISpacerКонтейнеры
  • UIText, UIImage, UIVideo, assetIconТекст, изображения, видео
  • UIButton, UIInput, UITextAreaКнопки и поля ввода
  • UIScreen, Router — экраны и навигация — UIScreen · Router
  • UIPager, UITabs — свайп-вкладки + свой стек навигации в каждой; UITabs — стандартный каркас нижних вкладок — UIPager · UITabs
  • UIWidget — плавающие оверлеи (+ диалоги UIModal, привязанные меню UIPopover, UIBottomSheet) — UIWidget
  • UIVirtualizedList — оконные списки для длинных данных — UIVirtualizedList
  • NativeView — платформенные вью, зарегистрированные хостом (карта, камера, …) — NativeView
  • font, registerFont — шрифты — Шрифты

3D-движок

  • Scene — 3D-мир: IBL, bloom, скайбокс, оверлеи — Scene
  • ARScene — AR-сессия: якоря, элементы размещения — ARScene
  • Node — базовый узел: трансформ, иерархия, события — Node
  • Camera — fov, лучи, направление взгляда (через scene.camera) — Camera
  • Mesh — фабрики box/sphere/cylinder/plane + своя геометрия — Mesh
  • Model, ModelAnimation — загрузка GLB; проигрывание клипов (model.anim) — Model
  • Geometry — сырые вершинные данные — Geometry
  • Material — lit/unlit/кастомные шейдерные материалы — Material
  • Texture — картинка 3D-материала (не взаимозаменяема с Texture2D) — Texture
  • Light — направленный свет Light.sun() + тени (ambient даёт IBL сцены) — Light
  • Shape, Physics, Trigger, CharacterController — тела Jolt, сенсоры, рейкасты — Физика 3D
  • Particles, dynamic, dynamicColor — GPU-системы частиц — Particles
  • Ray, Plane, Noise — пикинг и процедурные хелперы — Ray · Plane · Noise
  • defineScene, use — сцены как данные (файлы .scene.ts, формат редактора сцен) — Файлы сцен
  • MoveTo, FollowPath, Spin, LookAt, PlayAnimation — готовые no-code поведения — Сценарные аспекты
  • registerEditorWindow, registerEditorTool — плагины редактора сцен (*.editor.ts) — Плагины редактора

2D-движок

  • Scene2D — 2D-мир: фон, слои, Y-сортировка, пикинг — Scene2D
  • Node2D — базовый узел: трансформ, иерархия, события — Node2D
  • Camera2D — позиция, зум, экран↔мир (через scene.camera) — Camera2D
  • Sprite — узел с текстурой; кадры, tint, flip — Sprite
  • SpriteAnimation — аспект клипов по спрайт-листу (node.anim) — SpriteAnimation
  • Shape2D, Physics2D, Trigger2D, CharacterController2D — тела Box2D, сенсоры, запросы — Физика 2D
  • Tilemap — тайловая сетка по атласу, нативный каллинг — Tilemap
  • Texture2D — загрузка 2D-изображений — Texture2D

Ядро

  • signal, computed, effect — реактивное состояние; биндинги () => value в тексте и стилях UI — signal · computed · effect
  • Aspect — подключаемые способности узлов; node.aspect(Class, opts), фазы обновления — Aspect
  • Canvas, Bitmap — retained-2D-рисование, запекается в текстуры (2D/3D/UI) — Canvas
  • паттерн эмиттера событий (addEventListener) — общий для сцен/узлов/плееров — События

Рантайм

  • device — платформа, язык, размер, pixelRatio, событие resize, связность, точный touch — device
  • app, clipboard, openURL — жизненный цикл (pause/resume), диплинки, системный буфер, внешние URL — app
  • Input — опрос клавиатуры (Input.key(code)) — Input
  • ClickEvent, TouchStartEvent — события указателя + драги ev.track()События касаний
  • fetch, fetchLocal, FormData, File — HTTP через хост; синхронное чтение тела — fetch · WebSocket
  • WebSocket — сокеты как в браузере + свои заголовки — fetch · WebSocket
  • localStorage — персистентные строки ключ/значение — localStorage
  • AudioPlayer, VideoPlayer — воспроизведение медиа; видео-как-текстура — Аудио и видео
  • openFilePicker, share — выбор файлов, системный шеринг — Файлы и шеринг
  • toast, SvgSource — нативный тост; SVG как источник изображения — toast · SvgSource
  • date — даты в стиле dayjs: формат, относительное время, арифметика, сравнение (английский + русский) — date

Анимация

  • animate, animateMat4, stopAnimation, pauseAnimation, resumeAnimation — твины значений (длительность в мс) — animate
  • easeIn, easeOut, easeInOut, cubicBezier — функции сглаживания — Функции сглаживания

Математика

  • Mathf — скалярные хелперы: clamp, lerp, damp, remap, random — Mathf
  • Vec2, Vec3 — флюентные векторы; мутабельные поля, чистые методы, кортежи — Vec2 и Vec3
  • Quat — вращения: fromEuler, fromAxisAngle, slerp, lookRotation — Quat
  • Mat4 — матрица 4×4: compose/decompose, lookAt, perspective; открытый .mMat4
  • Color — парсинг и конвертация любых форм ColorInputColor

Плагины

  • CameraView — превью камеры устройства + фото — CameraView
  • QRScanner — сканирование QR (зависит от хоста) — QRScanner
  • Geolocation — позиция устройства (разово + наблюдение) — Geolocation
  • Push — удалённые push-уведомления (регистрация + события полезной нагрузки; отправку релеит le.codes) — Push
  • Service — сырой канал к headless-сервисам хоста (локальным и сторонним) — Service

Глобалы хоста — Глобалы хоста

  • setLoop / clearLoop — покадровый цикл; dt в секундах
  • setTimeout / setInterval / clearTimeout / clearInterval — таймеры (мс)
  • console — log / warn / info / error
  • asset() — compile-time-макрос: путь к файлу проекта → URL ресурса в бандле
  • DEG2RAD / RAD2DEG — compile-time-константы углов
  • Style<T> — вспомогательный тип для переиспользуемых объектов стилей (только для редактора)

Как читать сигнатуры

Сигнатуры записаны как упрощённый TypeScript — без шума перегрузок и вспомогательных дженериков. Значения по умолчанию показаны комментарием (// по умолчанию 1), необязательные параметры помечены ?, а единицы измерения всегда названы там, где число пересекает границу API: секунды или миллисекунды, градусы или радианы, логические пиксели или мировые единицы.

TypeScript
Mathf.lerp(a, b, t): number            // a + (b − a)·t
sprite.setFramePx(x, y, w, h): this    // под-прямоугольник в пикселях текстуры
animate(target, to, 300)               // длительность в миллисекундах
Совет

Слева — полное дерево навигации по всем разделам. Справочник переведён целиком — все страницы доступны на русском и английском.