Skip to content

Commit

Permalink
fix: change regex
Browse files Browse the repository at this point in the history
  • Loading branch information
bart-krakowski committed Jun 1, 2021
1 parent bde00a5 commit 55acdc3
Show file tree
Hide file tree
Showing 10 changed files with 52 additions and 118 deletions.
1 change: 0 additions & 1 deletion p1/.gitignore

This file was deleted.

23 changes: 8 additions & 15 deletions p1/code.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,19 +7,18 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
figma.showUI(__html__);
function traverse(node, name, actionType) {
function traverse(node) {
return __awaiter(this, void 0, void 0, function* () {
if ("children" in node) {
if (node.type !== "INSTANCE") {
for (const child of node.children) {
traverse(child, name, actionType);
traverse(child);
}
}
else if (node.name === name) {
const spaceComp = node.children.find((element) => element.name === "Line" || element.name === "Space");
const textNode = node.children.find((element) => element.type === "TEXT");
const valueToDisplay = actionType === "width" ? spaceComp.width : spaceComp.height;
else if (node.name === '_Specification') {
const spaceComp = node.children.find(element => /^(size|space)\/(width|height)/.test(element.name));
const textNode = node.children.find(element => element.type === "TEXT");
const valueToDisplay = /^(size|space)\/(width)/.test(spaceComp.name) ? spaceComp === null || spaceComp === void 0 ? void 0 : spaceComp.width : spaceComp === null || spaceComp === void 0 ? void 0 : spaceComp.height;
const textToDisplay = String(`${valueToDisplay}px`);
let len = textNode.characters.length;
yield figma.loadFontAsync(textNode.getRangeFontName(0, 1));
Expand All @@ -29,11 +28,5 @@ function traverse(node, name, actionType) {
}
});
}
figma.ui.onmessage = (msg) => {
if (msg.type === "init") {
for (const selectedComp of figma.currentPage.selection) {
traverse(figma.root, selectedComp.name, msg.actionType);
}
}
figma.closePlugin();
};
traverse(figma.root);
figma.closePlugin();
39 changes: 13 additions & 26 deletions p1/code.ts
Original file line number Diff line number Diff line change
@@ -1,36 +1,23 @@
figma.showUI(__html__);

async function traverse(node: BaseNode, name: string, actionType: 'width' | 'height') {
async function traverse(node) {
if ("children" in node) {
if (node.type !== "INSTANCE") {
for (const child of node.children) {
traverse(child, name, actionType);
traverse(child)
}
} else if (node.name === name) {
const spaceComp = node.children.find(
(element) => element.name === "Line" || element.name === "Space"
);
const textNode = node.children.find((element) => element.type === "TEXT") as TextNode
const valueToDisplay =
actionType === "width" ? spaceComp.width : spaceComp.height;

const textToDisplay = String(`${valueToDisplay}px`);
} else if (node.name === '_Specification') {
const spaceComp = node.children.find(element => /^(size|space)\/(width|height)/.test(element.name))
const textNode = node.children.find(element => element.type === "TEXT")
const valueToDisplay = /^(size|space)\/(width)/.test(spaceComp.name) ? spaceComp?.width : spaceComp?.height
const textToDisplay = String(`${valueToDisplay}px`)

let len = textNode.characters.length;
await figma.loadFontAsync(textNode.getRangeFontName(0, 1) as FontName);
let len = textNode.characters.length
await figma.loadFontAsync(textNode.getRangeFontName(0, 1))

textNode.deleteCharacters(0, len);
textNode.insertCharacters(0, textToDisplay);
textNode.deleteCharacters(0, len)
textNode.insertCharacters(0, textToDisplay)
}
}
}

figma.ui.onmessage = (msg) => {
if (msg.type === "init") {
for (const selectedComp of figma.currentPage.selection) {
traverse(figma.root, selectedComp.name, msg.actionType);
}
}

figma.closePlugin();
};
traverse(figma.root)
figma.closePlugin()
5 changes: 2 additions & 3 deletions p1/manifest.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
{
"name": "p1",
"id": "981182363879439354",
"id": "981247913119685663",
"api": "1.0.0",
"main": "code.js",
"ui": "ui.html"
"main": "code.js"
}
12 changes: 9 additions & 3 deletions p1/node_modules/.yarn-integrity

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

55 changes: 13 additions & 42 deletions p1/node_modules/@figma/plugin-typings/package.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions p1/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "Tonik P1",
"version": "0.3",
"description": "",
"name": "p1",
"version": "1.0.0",
"description": "Your Figma plugin",
"main": "code.js",
"scripts": {
"build": "tsc -p tsconfig.json"
Expand Down
2 changes: 0 additions & 2 deletions p1/tsconfig.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
{
"compilerOptions": {
"module": "esnext",
"target": "es6",
"lib": ["es2016", "dom"],
"typeRoots": [
"./node_modules/@types",
"./node_modules/@figma"
Expand Down
23 changes: 0 additions & 23 deletions p1/ui.html

This file was deleted.

4 changes: 4 additions & 0 deletions p1/yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,7 @@
# yarn lockfile v1


"@figma/plugin-typings@^1.23.0":
version "1.23.0"
resolved "https://registry.yarnpkg.com/@figma/plugin-typings/-/plugin-typings-1.23.0.tgz#e82774264d2f72604856562cd7b021bd32e60852"
integrity sha512-hKSQSyE4Lwb9GI0sL92YX8QvBAwsCkKGSIxLkEn3CDLSTtOjtTs/GKsQ8zUAFtcrr0KQLEYW0rBkGU3UVpPq/Q==

0 comments on commit 55acdc3

Please sign in to comment.