-
-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
API #34
Labels
Comments
edemaine
added a commit
that referenced
this issue
Aug 13, 2022
* Support mapping defined by `Map` or `WeakMap` * All function mappings are now automatically dynamic; no need to wrap in a second layer of function. * Can force old static behavior (for efficiency) via `svgtiler.static` wrapper, cached at `Mapping` level. * Function mappings get `context` second argument in addition to `this`. * `Context` object now shared throughout each drawing (so you could store extra drawing-specific data there). * API change: `Context` no longer has `symbols`, `symbol`, `data`, `filename`, or `subname` attributes. For the latter three, use `drawing.data`, `drawing.filename`, or `drawing.subname`. * API change: No more `Symbol`, `StaticSymbol`, or `DynamicSymbol` class (in particular, there was a name conflict with JS's `Symbol`) * API change: `Input` constructor supports direct loading of data (for easy manual creation) or immediate parsing of file data, as well as option setting. This will help with #34. * New `Tile` class represents an expanded (and possibly parsed) tile `<symbol>` (roughly what `Symbol` was before). * Tile caching/deduplication now within the renderer, not by `Symbol` (fix #50), enabling re-use when multiple symbols expand to the same SVG. * Fix: Don't fill in `<image>` `width`/`height` when both already set. * Fix: Use `hasOwnProperty` and `Set`s to avoid accidentally matching e.g. `toString`.
edemaine
added a commit
that referenced
this issue
Aug 13, 2022
* Support mapping defined by `Map` or `WeakMap` * All function mappings are now automatically dynamic; no need to wrap in a second layer of function. * Can force old static behavior (for efficiency) via `svgtiler.static` wrapper, cached at `Mapping` level. * Function mappings get `context` second argument in addition to `this`. * `Context` object now shared throughout each drawing (so you could store extra drawing-specific data there). * API change: `Context` no longer has `symbols` or `symbol` attributes. * API change: No more `Symbol`, `StaticSymbol`, or `DynamicSymbol` class (in particular, there was a name conflict with JS's `Symbol`) * API change: `Input` constructor supports direct loading of data (for easy manual creation) or immediate parsing of file data, as well as option setting. This will help with #34. * New `Tile` class represents an expanded (and possibly parsed) tile `<symbol>` (roughly what `Symbol` was before). * Tile caching/deduplication now within the renderer, not by `Symbol` (fix #50), enabling re-use when multiple symbols expand to the same SVG. * Fix: Don't fill in `<image>` `width`/`height` when both already set. * Fix: Use `hasOwnProperty` and `Set`s to avoid accidentally matching e.g. `toString`.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
It's time to have/document a NodeJS/browser API for SVG Tiler. Example applications:
At the minimum, we want to load some mappings (from data or files), and apply them to drawings (in data or in files). In particular, need to formalize the internal mapping and drawing formats (which shouldn't be difficult).
At this point (Oct. 28, 2022), this is mainly a documentation issue, as the APIs have been substantially improved.
The text was updated successfully, but these errors were encountered: