0
Fork 0
mirror of https://github.com/penpot/penpot-exporter-figma-plugin.git synced 2024-12-22 21:53:27 -05:00
penpot-exporter-figma-plugin/ui-src/parser/libraries/UiComponents.ts
Alex Sánchez 7b3192936e
Component Instances (#124)
* wip

* wip

* wipo

* more structure

* wip

* id library wip

* wip

* main instance working

* improvements

* fix node order

* refactor

* remove not used method

* refactor

* fix component set translation

* refactor

* add changelog

* penpot lib update

---------

Co-authored-by: Jordi Sala Morales <jordism91@gmail.com>
2024-05-30 17:54:37 +02:00

30 lines
619 B
TypeScript

import { Uuid } from '@ui/lib/types/utils/uuid';
type UiComponent = {
componentId: Uuid;
mainInstancePage?: Uuid;
mainInstanceId: Uuid;
componentFigmaId: string;
};
class UiComponents {
private components: Record<string, UiComponent> = {};
public register(id: string, component: UiComponent) {
this.components[id] = component;
}
public get(id: string): UiComponent | undefined {
return this.components[id];
}
public all(): UiComponent[] {
return Object.values(this.components);
}
public init() {
this.components = {};
}
}
export const uiComponents = new UiComponents();