figspec

Unofficial static Figma frame/file viewer available as HTML CustomElement

Commits at 46ed6677870e70d50b0460d4589f6d787bbcf941

  1. 46ed6677 components/v0.1.7 Shota Fuji authored at Shota Fuji comitted at
  2. cb642645 chore: Run tests and lint on PR as well Shota Fuji authored at Shota Fuji comitted at
  3. 82051efe style(components): Format with Prettier Shota Fuji authored at Shota Fuji comitted at
  4. 34a8ee8a misc(components): Add link for PR in TODO comment Shota Fuji authored at Shota Fuji comitted at
  5. 15584f99 Merge pull request #23 from yannbf/fix/component-variants fix: add check for component variant node type Shota Fuji authored at GitHub comitted at
  6. e24510cf Merge pull request #21 from yannbf/feature/figma-footer Feat: add Figma metadata footer Shota Fuji authored at GitHub comitted at
  7. dc7defad components/v0.1.6 Shota Fuji authored at Shota Fuji comitted at
  8. bd44a995 deps: Mark copy-to-clipboard as direct dependency https://github.com/pocka/figspec/issues/19 Added "copy-to-clipboard" package to "dependencies" section. It's added locally by @storybook/ui so builds passed. Shota Fuji authored at Shota Fuji comitted at
  9. 8d453f8d components/v0.1.5 Shota Fuji authored at Shota Fuji comitted at
  10. 02758bb8 feat: Support for MacOS Safari pinch gesture This commit adds support for MacOS Safari's non-standard GestureEvent. See more for GestureEvent at: https://developer.apple.com/documentation/webkitjs/gestureevent NOTE: The gesture does not perform zoom-at-point due to lack of offset point in the events https://github.com/pocka/figspec/issues/2 close #2 Shota Fuji authored at Shota Fuji comitted at
  11. d12f56b2 fix: "Fix" ugly error UI https://github.com/pocka/figspec/issues/10 Previous error UI is not clearly different than normal views. This commit "fixes" the UI and improve readability. Added a new CSS variable: --figspec-viewer-error-color close #10 Shota Fuji authored at Shota Fuji comitted at
  12. 0b8cf9f2 components/v0.1.4 Shota Fuji authored at Shota Fuji comitted at
  13. 061f2204 fix(components): Specify z-index on page selector Prevent canvas contents overlapping control UI, which visible for <figspec-file-viewer/>. Shota Fuji authored at Shota Fuji comitted at
  14. 669eb592 fix(components): Disable canvas interaction on inspector https://github.com/pocka/figspec/pull/12#issuecomment-754766352 Since event handlers listens at a root of the CustomElement, gestures working even on the inspector panel. This commit prevents these gestures from working on the inspector panel by adding `stopPropagation`. The "space+drag" functionallity, on the other hand, can't be prevented because it's registered via `onmouse~` but I don't think it's critical for UX. I also fixed some elements' sizing so they could scroll and be sized properly. Shota Fuji authored at Shota Fuji comitted at
  15. dfd433cc Merge pull request #12 from yannbf/feature/inspector-view Feature/inspector view Shota Fuji authored at GitHub comitted at
  16. bdca799c Merge pull request #18 from pocka/fix/react-jsx-transform Do not use new JSX transform Shota Fuji authored at GitHub comitted at
  17. 0d60d5f2 components/v0.1.3 Shota Fuji authored at Shota Fuji comitted at
  18. a17b8bd8 react/v0.1.4 Shota Fuji authored at Shota Fuji comitted at
  19. 7389f4ba chore: Fix cjs distribution Shota Fuji authored at Shota Fuji comitted at
  20. 5fdfd745 react/v0.1.3 Shota Fuji authored at Shota Fuji comitted at
  21. bd000198 fix(react): Mark optional properties optional Shota Fuji authored at Shota Fuji comitted at
  22. bf64254e react/v0.1.2 Shota Fuji authored at Shota Fuji comitted at
  23. 66e1651b components/v0.1.2 Shota Fuji authored at Shota Fuji comitted at
  24. fe98003d chore: Fix distribution Shota Fuji authored at Shota Fuji comitted at
  25. 593c1f69 chore: Explicitly specify typing files Even though TypeScript catches typing files, npmjs.com cannot detect whether the package has TypeScript typings. Shota Fuji authored at Shota Fuji comitted at
  26. 61c8c7be chore: Fix version commit message Shota Fuji authored at Shota Fuji comitted at
  27. 4ba2027a components/v0.1.1 Shota Fuji authored at Shota Fuji comitted at
  28. 2082d618 components/v0.1.1 Shota Fuji authored at Shota Fuji comitted at
  29. c8702d95 chore: Add prepublishOnly hooks Shota Fuji authored at Shota Fuji comitted at
  30. 126d01e5 chore: Include package name in version commit message Shota Fuji authored at Shota Fuji comitted at
  31. 9c57e527 v0.1.0 Shota Fuji authored at Shota Fuji comitted at
  32. 8b7b6f14 v0.1.0 Shota Fuji authored at Shota Fuji comitted at
  33. 4dd6427e chore: Add .yarnrc Shota Fuji authored at Shota Fuji comitted at
  34. 68ca1f28 Merge pull request #16 from pocka/feature/figma-file Figma file support Shota Fuji authored at GitHub comitted at
  35. 4c6e54c3 Merge pull request #15 from pocka/feature/events Custom Events Shota Fuji authored at GitHub comitted at
  36. def2c3a6 Merge pull request #14 from pocka/feature/cache-heavy-computation Cache tree node related things Shota Fuji authored at GitHub comitted at
  37. 9882ccad docs: Add CONTRIBUTING.md Shota Fuji authored at GitHub comitted at
  38. 1e1fa1e7 docs: Add CODE_OF_CONDUCT.md Shota Fuji authored at GitHub comitted at
  39. 82fa4961 chore: Lint files on push Shota Fuji authored at Shota Fuji comitted at
  40. 497e5f77 docs: README for an internal script Shota Fuji authored at Shota Fuji comitted at
  41. 30934c6d docs: Update README Wrote at-least-meaningful things. Shota Fuji authored at Shota Fuji comitted at
  42. dfe5a51a Merge pull request #13 from pocka/feature/react-binding React bindings Shota Fuji authored at GitHub comitted at
  43. 3524be23 Merge pull request #11 from pocka/feature/initial-zoom-level Initial zoom level Shota Fuji authored at GitHub comitted at
  44. 1f3fdd1f chore: Do not flag src/index.ts as pure Without specifying the file in package.json#sideEffects, webpack used by build-storybook marks the file as side-effect free and omits it! Shota Fuji authored at Shota Fuji comitted at
  45. 569c3f80 Merge pull request #9 from yannbf/feature/add-drag Feature: add drag functionality like figma Shota Fuji authored at GitHub comitted at
  46. d8991c59 refactor: Use single customElement for preview Use only <figspec-viewer> instead of with <figma-viewer-guide>. This reduces maintenance costs and makes modifying the codebase more easy. I also changed the DOM structure to rendering guides and tooltips inside one single <svg> container for simplicity (and for performance, hopefully). Shota Fuji authored at Shota Fuji comitted at
  47. 2a57a999 refactor: figma-viewer -> figspec-viewer To match the package name. Also avoids conflict with future (possible) official custom elements. Shota Fuji authored at Shota Fuji comitted at
  48. 063bdb78 Initial commit Shota Fuji authored at Shota Fuji comitted at
  49. 0182f0c6 chore(storybook): set stories to use fullscreen Yann Braga authored at Yann Braga comitted at
  50. f06f1246 feature: add drag like figma Figma provides drag functionality when holding space, so does other tools. Functionality is added to match that. Yann Braga authored at Yann Braga comitted at
  51. 8901f50d misc: Remove unnecessary default value from story Shota Fuji authored at Shota Fuji comitted at
  52. 55c50936 chore: Fix preview height on Docs page Shota Fuji authored at Shota Fuji comitted at
  53. c53ff5fe misc: Mark non-public properties as private Almost every public accesible properties are caught by web-component-analyzer and appears on Docs table. Some getters and inherited public properties are not intended to be used by users. Shota Fuji authored at Shota Fuji comitted at
  54. b6d4e733 feat: Initial zoom level https://github.com/pocka/figspec/issues/1 Sets initial zoom level based on element's size. This might not be same as Figma's behavior, but it's convenient. Shota Fuji authored at Shota Fuji comitted at
  55. 4184ab6e feat(react): React bindings You can use WebComponents (custom elements) in React, but the experience is not great. No props binding (React uses setAttribute), Poor type definition (JSX does great job though), Imperative event handling, etc... This bindings aim to solve these inconveniencies. Shota Fuji authored at Shota Fuji comitted at
  56. af9a7942 perf: Does not compute node related stuff each render https://github.com/pocka/figspec/issues/7 Only performe flattening the node tree, determining outermost bounding rect and construct distance-lines when related values have updated. From what I saw, this change stabilizes an average FPS and makes a memory usage more mild (less GC sweep). Shota Fuji authored at Shota Fuji comitted at
  57. 825ba0bc feat(react): Add event bindings Shota Fuji authored at Shota Fuji comitted at
  58. a6428c1f feat(components): Add custom events https://github.com/pocka/figspec/issues/5 Added `scalechange`, `positionchange` and `nodeselect` events. Shota Fuji authored at Shota Fuji comitted at
  59. 704cd1a8 docs(react): Update README Shota Fuji authored at Shota Fuji comitted at
  60. 5124aaa1 docs(components): Update README Shota Fuji authored at Shota Fuji comitted at
  61. d3024f17 feat(react): Figma file support Shota Fuji authored at Shota Fuji comitted at
  62. 4439e63f feat(components): Figma File support Shota Fuji authored at Shota Fuji comitted at
  63. 1f79281a refactor(components): Delegate viewer functionalitty into mixin Shota Fuji authored at Shota Fuji comitted at
  64. cc281367 refactor(components): Slim down figspec-viewer In order to add file viewer feature, I needed to split non-nodes related codes out from <figspec-viewer>. This commit does: 1. Make error UI as component (View function) 2. Move pan/scale related things out as a mixin With a little more cleanup, I can add file viewer feature without a bunch of duplicated code :) Shota Fuji authored at Shota Fuji comitted at
  65. dfa1d215 chore(scripts): Save images as well Shota Fuji authored at Shota Fuji comitted at
  66. 22478c88 chore(scripts): Support file fetching https://github.com/pocka/figspec/issues/8 Shota Fuji authored at Shota Fuji comitted at
  67. 90a93012 fix(react): Do not use new JSX transform https://github.com/pocka/figspec/issues/17 Shota Fuji authored at Shota Fuji comitted at
  68. 4996f1cb fix(components): stop click propagation on inspector view Yann Braga authored at Yann Braga comitted at
  69. d8378333 feat(components): deselect node when clicking outside of canvas Yann Braga authored at Yann Braga comitted at
  70. 551276fc feat(components): improve color calculation and property extraction Yann Braga authored at Yann Braga comitted at
  71. 24013dd3 feat(components): add inspector view to main viewer Yann Braga authored at Yann Braga comitted at
  72. f22f68dc feat(components): extract more properties in inspector view Yann Braga authored at Yann Braga comitted at
  73. 4ba33817 feat: add inspector view Yann Braga authored at Yann Braga comitted at
  74. db85e596 chore(deps): upgrade storybook to 6.2 Yann Braga authored at Yann Braga comitted at
  75. 50c3e78b feat: add figma footer - Present a footer with metadata of the figma file such as title, timestamp and a link to open on Figma Yann Braga authored at Yann Braga comitted at
  76. be5a37be fix: add check for component variant node type Yann Braga authored at Yann Braga comitted at