figspec

Unofficial static Figma frame/file viewer available as HTML CustomElement

Commits at 2082d618802047b38ddd958441d79ddd46ff0982

  1. 2082d618 components/v0.1.1 Shota Fuji authored at Shota Fuji comitted at
  2. c8702d95 chore: Add prepublishOnly hooks Shota Fuji authored at Shota Fuji comitted at
  3. 126d01e5 chore: Include package name in version commit message Shota Fuji authored at Shota Fuji comitted at
  4. 9c57e527 v0.1.0 Shota Fuji authored at Shota Fuji comitted at
  5. 8b7b6f14 v0.1.0 Shota Fuji authored at Shota Fuji comitted at
  6. 4dd6427e chore: Add .yarnrc Shota Fuji authored at Shota Fuji comitted at
  7. 68ca1f28 Merge pull request #16 from pocka/feature/figma-file Figma file support Shota Fuji authored at GitHub comitted at
  8. 4c6e54c3 Merge pull request #15 from pocka/feature/events Custom Events Shota Fuji authored at GitHub comitted at
  9. def2c3a6 Merge pull request #14 from pocka/feature/cache-heavy-computation Cache tree node related things Shota Fuji authored at GitHub comitted at
  10. 9882ccad docs: Add CONTRIBUTING.md Shota Fuji authored at GitHub comitted at
  11. 1e1fa1e7 docs: Add CODE_OF_CONDUCT.md Shota Fuji authored at GitHub comitted at
  12. 82fa4961 chore: Lint files on push Shota Fuji authored at Shota Fuji comitted at
  13. 497e5f77 docs: README for an internal script Shota Fuji authored at Shota Fuji comitted at
  14. 30934c6d docs: Update README Wrote at-least-meaningful things. Shota Fuji authored at Shota Fuji comitted at
  15. dfe5a51a Merge pull request #13 from pocka/feature/react-binding React bindings Shota Fuji authored at GitHub comitted at
  16. 3524be23 Merge pull request #11 from pocka/feature/initial-zoom-level Initial zoom level Shota Fuji authored at GitHub comitted at
  17. 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
  18. 569c3f80 Merge pull request #9 from yannbf/feature/add-drag Feature: add drag functionality like figma Shota Fuji authored at GitHub comitted at
  19. 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
  20. 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
  21. 063bdb78 Initial commit Shota Fuji authored at Shota Fuji comitted at
  22. 0182f0c6 chore(storybook): set stories to use fullscreen Yann Braga authored at Yann Braga comitted at
  23. 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
  24. 8901f50d misc: Remove unnecessary default value from story Shota Fuji authored at Shota Fuji comitted at
  25. 55c50936 chore: Fix preview height on Docs page Shota Fuji authored at Shota Fuji comitted at
  26. 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
  27. 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
  28. 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
  29. 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
  30. 825ba0bc feat(react): Add event bindings Shota Fuji authored at Shota Fuji comitted at
  31. 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
  32. 704cd1a8 docs(react): Update README Shota Fuji authored at Shota Fuji comitted at
  33. 5124aaa1 docs(components): Update README Shota Fuji authored at Shota Fuji comitted at
  34. d3024f17 feat(react): Figma file support Shota Fuji authored at Shota Fuji comitted at
  35. 4439e63f feat(components): Figma File support Shota Fuji authored at Shota Fuji comitted at
  36. 1f79281a refactor(components): Delegate viewer functionalitty into mixin Shota Fuji authored at Shota Fuji comitted at
  37. 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
  38. dfa1d215 chore(scripts): Save images as well Shota Fuji authored at Shota Fuji comitted at
  39. 22478c88 chore(scripts): Support file fetching https://github.com/pocka/figspec/issues/8 Shota Fuji authored at Shota Fuji comitted at