pl-fe: fix type definitions
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
This commit is contained in:
@ -1,11 +1,61 @@
|
||||
import data from '@emoji-mart/data/sets/14/twitter.json';
|
||||
|
||||
import type { EmojiData } from './types';
|
||||
interface NativeEmoji {
|
||||
unified: string;
|
||||
native: string;
|
||||
x: number;
|
||||
y: number;
|
||||
}
|
||||
|
||||
interface CustomEmoji {
|
||||
src: string;
|
||||
}
|
||||
|
||||
interface Emoji<T> {
|
||||
id: string;
|
||||
name: string;
|
||||
keywords: string[];
|
||||
skins: T[];
|
||||
version?: number;
|
||||
}
|
||||
|
||||
interface EmojiCategory {
|
||||
id: string;
|
||||
emojis: string[];
|
||||
}
|
||||
|
||||
interface EmojiMap {
|
||||
[s: string]: Emoji<NativeEmoji>;
|
||||
}
|
||||
|
||||
interface EmojiAlias {
|
||||
[s: string]: string;
|
||||
}
|
||||
|
||||
interface EmojiSheet {
|
||||
cols: number;
|
||||
rows: number;
|
||||
}
|
||||
|
||||
interface EmojiData {
|
||||
categories: EmojiCategory[];
|
||||
emojis: EmojiMap;
|
||||
aliases: EmojiAlias;
|
||||
sheet: EmojiSheet;
|
||||
}
|
||||
|
||||
const emojiData = data as EmojiData;
|
||||
const { categories, emojis, aliases, sheet } = emojiData;
|
||||
|
||||
export {
|
||||
type NativeEmoji,
|
||||
type CustomEmoji,
|
||||
type Emoji,
|
||||
type EmojiCategory,
|
||||
type EmojiMap,
|
||||
type EmojiAlias,
|
||||
type EmojiSheet,
|
||||
type EmojiData,
|
||||
categories,
|
||||
emojis,
|
||||
aliases,
|
||||
|
||||
@ -2,7 +2,7 @@ import split from 'graphemesplit';
|
||||
|
||||
import unicodeMapping from './mapping';
|
||||
|
||||
import type { Emoji as EmojiMart, CustomEmoji as EmojiMartCustom } from './types';
|
||||
import type { Emoji as EmojiMart, CustomEmoji as EmojiMartCustom } from './data';
|
||||
import type { CustomEmoji as BaseCustomEmoji } from 'pl-api';
|
||||
|
||||
/*
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
import { createRequire } from 'node:module';
|
||||
|
||||
import type { EmojiData, UnicodeMap } from './types';
|
||||
import type { EmojiData } from './data';
|
||||
import type { UnicodeMap } from './mapping';
|
||||
|
||||
const require = createRequire(import.meta.url);
|
||||
const data = require('@emoji-mart/data/sets/14/twitter.json');
|
||||
|
||||
@ -1,3 +1,10 @@
|
||||
import type { UnicodeMap } from './types';
|
||||
interface UnicodeMap {
|
||||
[s: string]: {
|
||||
unified: string;
|
||||
shortcode: string;
|
||||
};
|
||||
}
|
||||
|
||||
export default import.meta.compileTime<UnicodeMap>('./mapping-compiletime.ts');
|
||||
|
||||
export type { UnicodeMap };
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import FlexSearch from 'flexsearch';
|
||||
|
||||
import type { EmojiData } from './data';
|
||||
import type { Emoji } from './index';
|
||||
import type { EmojiData } from './types';
|
||||
import type { CustomEmoji } from 'pl-api';
|
||||
|
||||
let emojis: EmojiData['emojis'] = {};
|
||||
|
||||
@ -1,62 +0,0 @@
|
||||
interface UnicodeMap {
|
||||
[s: string]: {
|
||||
unified: string;
|
||||
shortcode: string;
|
||||
};
|
||||
}
|
||||
|
||||
interface NativeEmoji {
|
||||
unified: string;
|
||||
native: string;
|
||||
x: number;
|
||||
y: number;
|
||||
}
|
||||
|
||||
interface CustomEmoji {
|
||||
src: string;
|
||||
}
|
||||
|
||||
interface Emoji<T> {
|
||||
id: string;
|
||||
name: string;
|
||||
keywords: string[];
|
||||
skins: T[];
|
||||
version?: number;
|
||||
}
|
||||
|
||||
interface EmojiCategory {
|
||||
id: string;
|
||||
emojis: string[];
|
||||
}
|
||||
|
||||
interface EmojiMap {
|
||||
[s: string]: Emoji<NativeEmoji>;
|
||||
}
|
||||
|
||||
interface EmojiAlias {
|
||||
[s: string]: string;
|
||||
}
|
||||
|
||||
interface EmojiSheet {
|
||||
cols: number;
|
||||
rows: number;
|
||||
}
|
||||
|
||||
interface EmojiData {
|
||||
categories: EmojiCategory[];
|
||||
emojis: EmojiMap;
|
||||
aliases: EmojiAlias;
|
||||
sheet: EmojiSheet;
|
||||
}
|
||||
|
||||
export type {
|
||||
UnicodeMap,
|
||||
NativeEmoji,
|
||||
CustomEmoji,
|
||||
Emoji,
|
||||
EmojiCategory,
|
||||
EmojiMap,
|
||||
EmojiAlias,
|
||||
EmojiSheet,
|
||||
EmojiData,
|
||||
};
|
||||
Reference in New Issue
Block a user