From 945b6714bc8bc32b92a6ac7f9c82f69b2747b48a Mon Sep 17 00:00:00 2001 From: softmarshmallow Date: Mon, 19 Jul 2021 18:26:44 +0900 Subject: [PATCH 1/3] init --- packages/design-sdk | 2 +- ui/editor-ui | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/design-sdk b/packages/design-sdk index 35bdec7c..e1497330 160000 --- a/packages/design-sdk +++ b/packages/design-sdk @@ -1 +1 @@ -Subproject commit 35bdec7c8d83217c5c9c07149fd860fd432c1921 +Subproject commit e149733021f44af91953366a0fc35d3cc8722011 diff --git a/ui/editor-ui b/ui/editor-ui index 46361de8..526f26ba 160000 --- a/ui/editor-ui +++ b/ui/editor-ui @@ -1 +1 @@ -Subproject commit 46361de82de98626debbac15feaf12add214b026 +Subproject commit 526f26baf670758eb67b408693297f44b6ebd2f0 From 629878ebedbee647768a7c7c5084f82edbc3aceb Mon Sep 17 00:00:00 2001 From: softmarshmallow Date: Mon, 19 Jul 2021 18:27:10 +0900 Subject: [PATCH 2/3] migrated figma personal access token utils to @design-sdk/figma-auth-store --- editor/package.json | 3 +- editor/utils/figma/figma-access-token.ts | 47 ------------------------ editor/utils/figma/index.ts | 1 - yarn.lock | 16 ++++---- 4 files changed, 10 insertions(+), 57 deletions(-) delete mode 100644 editor/utils/figma/figma-access-token.ts delete mode 100644 editor/utils/figma/index.ts diff --git a/editor/package.json b/editor/package.json index e30d79af..2a31547e 100644 --- a/editor/package.json +++ b/editor/package.json @@ -10,6 +10,7 @@ "dependencies": { "@babel/runtime": "^7.14.0", "@base-sdk/base": "^0.1.0-5", + "@design-sdk/figma-auth-store": "^0.0.1", "@designto/code": "0.0.1", "@emotion/core": "^11.0.0", "@emotion/react": "^11.1.5", @@ -51,4 +52,4 @@ "next-transpile-modules": "^7.0.0", "typescript": "^4.2.3" } -} \ No newline at end of file +} diff --git a/editor/utils/figma/figma-access-token.ts b/editor/utils/figma/figma-access-token.ts deleted file mode 100644 index 38ce1a1e..00000000 --- a/editor/utils/figma/figma-access-token.ts +++ /dev/null @@ -1,47 +0,0 @@ -export function figmaPersonalAccessToken(): string { - // todo - add local storage handling - if (process.env.FIGMA_PERSONAL_ACCESS_TOKEN) { - return process.env.FIGMA_PERSONAL_ACCESS_TOKEN; - } - - const _local = _getFigmaPersonalAccessToken_LocalDev(); - if (_local) { - return _local; - } - - throw "no valid figma accesstoken configuration found. please set it on /_development/access-tokens"; -} - -export function figmaPersonalAccessToken_safe(): string | undefined { - try { - return figmaPersonalAccessToken(); - } catch (_) {} - return undefined; -} - -const __FIGMA_PERSONAL_ACCESS_TOKEN_DANGER_LOCAL_DEV = - "__NOT_SECURE_FIGMA_PERSONAL_ACCESS_TOKEN_DANGER_LOCAL_DEV"; -export function setFigmaPersonalAccessToken_LocalDev(token: string) { - if (process.browser) { - window.localStorage.setItem( - __FIGMA_PERSONAL_ACCESS_TOKEN_DANGER_LOCAL_DEV, - token - ); - } -} - -export function clearToken() { - if (process.browser) { - window.localStorage.removeItem( - __FIGMA_PERSONAL_ACCESS_TOKEN_DANGER_LOCAL_DEV - ); - } -} - -function _getFigmaPersonalAccessToken_LocalDev() { - if (process.browser) { - return window.localStorage.getItem( - __FIGMA_PERSONAL_ACCESS_TOKEN_DANGER_LOCAL_DEV - ); - } -} diff --git a/editor/utils/figma/index.ts b/editor/utils/figma/index.ts deleted file mode 100644 index 861f8de4..00000000 --- a/editor/utils/figma/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from "./figma-access-token"; diff --git a/yarn.lock b/yarn.lock index e23a8f6f..ec897589 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1282,11 +1282,6 @@ exec-sh "^0.3.2" minimist "^1.2.0" -"@design-sdk/figma-url@0.0.2": - version "0.0.2" - resolved "https://registry.yarnpkg.com/@design-sdk/figma-url/-/figma-url-0.0.2.tgz#6cdac717440def04f419efea080f95dae23e9d6f" - integrity sha512-BHxiY5OlX8OQNr/81NGo6pI8bm4c9M6s5vV+IJlQf9NFMKIoxv8fUZl0cuDvmQBloOC0HdVL09fPgIi0etVEvQ== - "@design-sdk/figma-url@^0.0.4": version "0.0.4" resolved "https://registry.yarnpkg.com/@design-sdk/figma-url/-/figma-url-0.0.4.tgz#a522d5aea17dcae92e849497c74d5f85fea42b1f" @@ -3007,7 +3002,7 @@ dependencies: "@types/istanbul-lib-report" "*" -"@types/jest@^26.0.23": +"@types/jest@^26.0.23", "@types/jest@^26.0.24": version "26.0.24" resolved "https://registry.yarnpkg.com/@types/jest/-/jest-26.0.24.tgz#943d11976b16739185913a1936e0de0c4a7d595a" integrity sha512-E/X5Vib8BWqZNRlDxj9vYXhsDwPYbPINqKF9BsnSoon4RQ0D9moEuLD8txgyypFLH7J4+Lho9Nr/c8H0Fi+17w== @@ -6338,6 +6333,11 @@ dotenv-webpack@^1.8.0: dependencies: dotenv-defaults "^1.0.2" +dotenv@^10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-10.0.0.tgz#3d4227b8fb95f81096cdd2b66653fb2c7085ba81" + integrity sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q== + dotenv@^6.2.0: version "6.2.0" resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-6.2.0.tgz#941c0410535d942c8becf28d3f357dbd9d476064" @@ -9471,7 +9471,7 @@ jest-worker@^27.0.6: merge-stream "^2.0.0" supports-color "^8.0.0" -jest@^27.0.3, jest@^27.0.4: +jest@^27.0.3, jest@^27.0.4, jest@^27.0.6: version "27.0.6" resolved "https://registry.yarnpkg.com/jest/-/jest-27.0.6.tgz#10517b2a628f0409087fbf473db44777d7a04505" integrity sha512-EjV8aETrsD0wHl7CKMibKwQNQc3gIRBXlTikBmmHUeVMKaPFxdcUIBfoDqTSXDoGJIivAYGqCWVlzCSaVjPQsA== @@ -14157,7 +14157,7 @@ ts-essentials@^2.0.3: resolved "https://registry.yarnpkg.com/ts-essentials/-/ts-essentials-2.0.12.tgz#c9303f3d74f75fa7528c3d49b80e089ab09d8745" integrity sha512-3IVX4nI6B5cc31/GFFE+i8ey/N2eA0CZDbo6n0yrz0zDX8ZJ8djmU1p+XRz7G3is0F3bB3pu2pAroFdAWQKU3w== -ts-jest@^27.0.2: +ts-jest@^27.0.2, ts-jest@^27.0.3: version "27.0.3" resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-27.0.3.tgz#808492f022296cde19390bb6ad627c8126bf93f8" integrity sha512-U5rdMjnYam9Ucw+h0QvtNDbc5+88nxt7tbIvqaZUhFrfG4+SkWhMXjejCLVGcpILTPuV+H3W/GZDZrnZFpPeXw== From 707786a7b0494a244e61a0a3a72736558c4ba878 Mon Sep 17 00:00:00 2001 From: softmarshmallow Date: Mon, 19 Jul 2021 18:32:45 +0900 Subject: [PATCH 3/3] update with figma-auth-store api --- editor/components/figma/screen-importer.tsx | 6 +++--- editor/pages/figma/to-token.tsx | 4 ++-- editor/pages/preferences/access-tokens.tsx | 8 ++++---- editor/query/from-figma/index.ts | 4 ++-- editor/query/to-code/index.ts | 4 ++-- editor/utils/index.ts | 1 - packages/design-sdk | 2 +- 7 files changed, 14 insertions(+), 15 deletions(-) diff --git a/editor/components/figma/screen-importer.tsx b/editor/components/figma/screen-importer.tsx index a50a4b3a..6f39b326 100644 --- a/editor/components/figma/screen-importer.tsx +++ b/editor/components/figma/screen-importer.tsx @@ -5,8 +5,8 @@ import { parseFileAndNodeId, FigmaTargetNodeConfig, } from "@design-sdk/figma-url"; -import { utils_figma } from "../../utils"; import { UserInputCache } from "../../utils/user-input-value-cache"; +import { personal } from "@design-sdk/figma-auth-store"; export type OnImportedCallback = (reflect: nodes.ReflectSceneNode) => void; type _OnPartiallyLoadedCallback = (pack: fetch.FigmaRemoteImportPack) => void; @@ -58,7 +58,7 @@ function _DefaultImporterSegment(props: { const handleOnLoadDefaultDesignClick = () => { fetch .fetchDemo({ - personalAccessToken: utils_figma.figmaPersonalAccessToken_safe(), + personalAccessToken: personal.get_safe(), }) .then((d) => { // it's okay to force cast here. since the typings are the same (following official figma remote api spec) @@ -99,7 +99,7 @@ function _UrlImporterSegment(props: { setLoadState("loading"); fetch .fetchTarget(figmaTargetConfig.file, figmaTargetConfig.node, { - personalAccessToken: utils_figma.figmaPersonalAccessToken_safe(), + personalAccessToken: personal.get_safe(), }) .then((d) => { setLoadState("complete"); diff --git a/editor/pages/figma/to-token.tsx b/editor/pages/figma/to-token.tsx index dca54347..d915ee2b 100644 --- a/editor/pages/figma/to-token.tsx +++ b/editor/pages/figma/to-token.tsx @@ -14,12 +14,12 @@ import { useRouter } from "next/router"; import { extractFromFigmaQueryParams } from "../../query/from-figma"; import { Figma } from "@design-sdk/figma"; import { fetch } from "@design-sdk/figma-remote"; +import { personal } from "@design-sdk/figma-auth-store"; import { DefaultEditorWorkspaceLayout } from "../../layout/default-editor-workspace-layout"; import { LayerHierarchy } from "../../components/editor-hierarchy"; import { WorkspaceContentPanelGridLayout } from "../../layout/panel/workspace-content-panel-grid-layout"; import { WorkspaceContentPanel } from "../../layout/panel"; import { WorkspaceBottomPanelDockLayout } from "../../layout/panel/workspace-bottom-panel-dock-layout"; -import { utils_figma } from "../../utils"; export default function FigmaToReflectWidgetTokenPage() { const [figmaNode, setFigmaNode] = useState(); @@ -40,7 +40,7 @@ export default function FigmaToReflectWidgetTokenPage() { setTargetnodeConfig(targetnodeconfig); fetch .fetchTargetAsReflect(targetnodeconfig.file, targetnodeconfig.node, { - personalAccessToken: utils_figma.figmaPersonalAccessToken_safe(), + personalAccessToken: personal.get_safe(), }) .then((res) => { setReflect(res.reflect); diff --git a/editor/pages/preferences/access-tokens.tsx b/editor/pages/preferences/access-tokens.tsx index 43023b01..006391af 100644 --- a/editor/pages/preferences/access-tokens.tsx +++ b/editor/pages/preferences/access-tokens.tsx @@ -1,7 +1,7 @@ import React, { useState } from "react"; import styled from "@emotion/styled"; import { TextField } from "@material-ui/core"; -import { utils_figma } from "../../utils"; +import { personal } from "@design-sdk/figma-auth-store"; export default function AccessTokenConfigurationPage_Dev() { return ( @@ -19,7 +19,7 @@ export default function AccessTokenConfigurationPage_Dev() { } function FigmaSection() { - const initialToken = utils_figma.figmaPersonalAccessToken_safe(); + const initialToken = personal.get_safe(); const [token, setToken] = useState(initialToken); // this get set by input later @@ -39,7 +39,7 @@ function FigmaSection() {