feat: add ts export

This commit is contained in:
Sergey Onufrienko 2023-06-12 22:13:19 +02:00
parent b494b43496
commit cfc1856210
No known key found for this signature in database
GPG key ID: 3299873ECFD30CA3
3 changed files with 13 additions and 0 deletions

View file

@ -11,9 +11,12 @@ use serde::{
Deserialize, Deserializer,
};
use serde_json::json;
use ts_rs::TS;
#[derive(Clone, Copy, Default, PartialEq, Eq, Hash, PartialOrd, Ord)]
#[repr(transparent)]
#[derive(TS)]
#[ts(export, export_to = "theme/types/")]
pub struct Color(ColorU);
impl Color {

View file

@ -12,8 +12,11 @@ use std::{
ops::{Deref, DerefMut},
sync::Arc,
};
use ts_rs::TS;
#[derive(Copy, Clone, Debug, Eq, PartialEq, Hash)]
#[derive(TS)]
#[ts(export, export_to = "theme/types/")]
pub struct FamilyId(usize);
struct Family {

View file

@ -15,8 +15,11 @@ use schemars::JsonSchema;
use serde::{de, Deserialize, Serialize};
use serde_json::Value;
use std::{cell::RefCell, sync::Arc};
use ts_rs::TS;
#[derive(Copy, Clone, Debug, Eq, PartialEq, Hash)]
#[derive(TS)]
#[ts(export, export_to = "theme/types/")]
pub struct FontId(pub usize);
pub type GlyphId = u32;
@ -60,6 +63,8 @@ pub struct Features {
}
#[derive(Clone, Debug)]
#[derive(TS)]
#[ts(export, export_to = "theme/types/")]
pub struct TextStyle {
pub color: Color,
pub font_family_name: Arc<str>,
@ -82,6 +87,8 @@ pub struct HighlightStyle {
impl Eq for HighlightStyle {}
#[derive(Copy, Clone, Debug, Default, PartialEq, Eq)]
#[derive(TS)]
#[ts(export, export_to = "theme/types/")]
pub struct Underline {
pub color: Option<Color>,
pub thickness: OrderedFloat<f32>,