Forked from reversaal / OhmPi
Source project has a limited visibility.
jalhyd_object.ts 849 bytes
import { ParamFamily } from "./param/param-definition";
export interface IJalhydObject {
    readonly uid: string;
export interface INamedObject extends IJalhydObject {
    readonly name: string;
export interface IObjectWithFamily extends IJalhydObject {
    readonly family: ParamFamily;
export abstract class JalhydObject implements IJalhydObject {
    public get uid(): string {
        return this._uid;
    public static get nextUID(): string {
        return btoa(Math.random().toString(36).substring(2)).substring(0, 6);
    /** id numérique unique */
    private _uid: string;
    constructor() {
        this._uid = JalhydObject.nextUID;
    /**
     * @WARNING utiliser uniquement pour conserver l'ID lorsqu'on charge des sessions
    public setUid(uid: string) {
        this._uid = uid;