-
-
Notifications
You must be signed in to change notification settings - Fork 33
LayerChart 2.0 (next) #449
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
Open
techniq
wants to merge
248
commits into
main
Choose a base branch
from
next
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Contributor
built with Refined Cloudflare Pages Action⚡ Cloudflare Pages Deployment
|
commit: |
* Initial migration to Tailwind 4 (and layerstack/svelte-ux @next) * Format project * Update all the non-transparent CSS variables to remove the hard coded `hsl()` (as variable now includes the color function) * fix(LinearGradient): Handle `tw-gradient-[from|to]` no longer inheriting * Cleanup * fix(Spline): Pass `fillOpacity` prop (instead of `fill-opacity`) to support Canvas * Update semi-transparent CSS variable usage to use `opacity`, `fillOpacity` or `color-mix()` depending on the usage * Add changeset * Use `1%` instead of `0%` opacity for gradient examples to workaround gray gradient issue due to TW4's use of `color-mix()` details: https://bsky.app/profile/techniq.dev/post/3lk6qr6e5b22t * Refine getting started * Restore prose heading styling (size/bold/margin) * fix: Support `opacity` prop/style when Canvas rendered for all primatives * docs(LineChart): Fix "Gradient threshold" highlight and tooltip color
🦋 Changeset detectedLatest commit: f594b57 The changes in this PR will be included in the next version bump. This PR includes no changesetsWhen changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
* Initial migration to Tailwind 4 (and layerstack/svelte-ux @next) * Format project * Update all the non-transparent CSS variables to remove the hard coded `hsl()` (as variable now includes the color function) * fix(LinearGradient): Handle `tw-gradient-[from|to]` no longer inheriting * Cleanup * fix(Spline): Pass `fillOpacity` prop (instead of `fill-opacity`) to support Canvas * Update semi-transparent CSS variable usage to use `opacity`, `fillOpacity` or `color-mix()` depending on the usage * Add changeset * Use `1%` instead of `0%` opacity for gradient examples to workaround gray gradient issue due to TW4's use of `color-mix()` details: https://bsky.app/profile/techniq.dev/post/3lk6qr6e5b22t * Refine getting started * Restore prose heading styling (size/bold/margin) * fix: Support `opacity` prop/style when Canvas rendered for all primatives * docs(LineChart): Fix "Gradient threshold" highlight and tooltip color
Merged
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Merged
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Initial migration to Tailwind 4 (and layerstack/svelte-ux @next) * Format project * Update all the non-transparent CSS variables to remove the hard coded `hsl()` (as variable now includes the color function) * fix(LinearGradient): Handle `tw-gradient-[from|to]` no longer inheriting * Cleanup * fix(Spline): Pass `fillOpacity` prop (instead of `fill-opacity`) to support Canvas * Update semi-transparent CSS variable usage to use `opacity`, `fillOpacity` or `color-mix()` depending on the usage * Add changeset * Use `1%` instead of `0%` opacity for gradient examples to workaround gray gradient issue due to TW4's use of `color-mix()` details: https://bsky.app/profile/techniq.dev/post/3lk6qr6e5b22t * Refine getting started * Restore prose heading styling (size/bold/margin) * fix: Support `opacity` prop/style when Canvas rendered for all primatives * docs(LineChart): Fix "Gradient threshold" highlight and tooltip color
* Initial migration to Tailwind 4 (and layerstack/svelte-ux @next) * Format project * Update all the non-transparent CSS variables to remove the hard coded `hsl()` (as variable now includes the color function) * fix(LinearGradient): Handle `tw-gradient-[from|to]` no longer inheriting * Cleanup * fix(Spline): Pass `fillOpacity` prop (instead of `fill-opacity`) to support Canvas * Update semi-transparent CSS variable usage to use `opacity`, `fillOpacity` or `color-mix()` depending on the usage * Add changeset * Use `1%` instead of `0%` opacity for gradient examples to workaround gray gradient issue due to TW4's use of `color-mix()` details: https://bsky.app/profile/techniq.dev/post/3lk6qr6e5b22t * Refine getting started * Restore prose heading styling (size/bold/margin) * fix: Support `opacity` prop/style when Canvas rendered for all primatives * docs(LineChart): Fix "Gradient threshold" highlight and tooltip color
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* fix imports * fix overrides * expose two way binding for chart context on simplified * document change * shutup svelte * remove unused * cleanups * more unused * enhanced labels * cleanup types * line chart line class * annoying aliases * rid some type errors * expose a bunch of useful information via snippet props * fix pie tween * initial ArcChart component * arc chart * arc chart tweened * remove unused * more * types * arc payload * consolidate context * more * overridable arcs * some more * lets try again * lets see * fix: highlight color based on tooltip regression * fix: tooltip * remove logs * fix compound * fix: y grid lines * fix tree html alignmnet * remove unused * bit better sankey * fix perf of forcetree * tried * tried * fix force drag sticky * fix: linear gradient canvas * fix: scatter chart highlighting * fix legend slot override * update title * fix pie and tooltip * more * faster globe * sankey node select * did this work * link:href -> href * motion overhaul * fixed things * wow that was so obvious * cleanup * simplify createMotion * temp * are you not entertained? * hm * perfs * changes doc * more * canvas context handling * fix brush context * canvas adjustments * padding works on pack but selected does not react * update sankey example * better than nothing * fix(AnimatedGlobe): Fix showing selection (geo feature and button) * pack * fix: parseMotionProp * remove logs * remove translate options from animated globe * cleanup: Pack example * use fetch from load function * make hierarchy required * fix partition horizontal and vertical * init text trunc * text truncation * canvas text rotation * canvas text transforms/rotates/anchors * cleanup example * arcchart * arcchart docs defaults * fix(ForceText): Update pointer node reactivity * remove unused * fix(ForceSimulation): Fix de-registering forces * fix(Link): Properly set curve via prop * fix(Treemap): Fix filterable example (in/out transitions) * fix(Partition): Fix filterable example (in/out transitions) * fix(Bar): Initialize x/y accessors from context, fixing valueAccessor when determining `rounded="edge"` * fix: tween path * types * docs(Spline): Fix motion default "tween" selection * fix: resolved motion types * cleanup: stop abusing unnecessary object spreads * force tree: connected nodes but a bit laggy * force tree: no need to structured clone * force tree: improve perf * chore: re-enable ssr * chore: re-disable ssr because weirdness * fix: imports * fix(ForceSimulation): Rename `cloneData` to `cloneNodes` (more representitive), apply on pull instead of push, which fixes ForceText example. Remove from Beeswarm and ForceGroup (no longer needed?) * grid: distinguish radial class names * chore: consolidate common series logic * chore: consolidate common legend logic * feat: default tooltip to stackable simplified charts * fix tick resolution * ticks unit tests * fix track arc range * fix: canvas context resetting issue * simplify chart.svelte * 1.5 way binding * fix: tooltip hide delay * docs(ArcChart): Add starting angle examples * fix: brush reset * fix: pie chart legend filter * fix(Spline): Handle "The element's path is empty" * feat: add `track*` props to `Arc` * feat: add `track*` props to `Arc` * chore: remove unused * docs(Text): Use unicode `…` by default * feat(ArcChart): Support using negative outer radius for single series charts * docs(ArcChart): Add radius examples for offset, percentage, and fixed values * Cleanup some typescript errors * Simplify * docs(AreaChart): Add Threshold example * fix(PieChart): Correct handling explcit colors per segment * docs(PieChart): Add Segments example * feat: initial text path * feat(text): arc truncate * feat(Arc): `arcTextPaths` and `trackTextPaths` * temp: for sean * flip * chore: remove red lines * renames * closer * tough * Separate and qualify sankey and dagre utils * Extract `dagreGraph()` util to easily build a `dagre.graphlib.Graph` from a `DagreGraphData` instance * wip: text path * Add label examples * types * chore: graph does not need to be in an $effect * Fix reversing text arc based on start angle and direction * Tighten up examples slightly * Fix imports * fix(BarChart): Pass `xDomain` via `restProps` (not used otherwise) * refactor: text path props * fix: arc text path corner radius adjustments * fix: arc corner radius adjustments * Fix(Calendar): Correct default cell class * docs(Arc): Improve playground defaults / cleanup * feat: handle custom startOffsets * chore: arc text include centroid * docs(ArcChart): add arcs label example * fix: types * feat: label naive outer radius padding option * feat: centroid reacts to offset for accurate centroid * Rename isGroupSeries / isStackSeries variables * feat: outer-radial labels for arcs * wip: Connector component * Begin to add support for radial BarChart * docs(Connector): cleanup demo * docs(Connector): cleanup demo * feat(Connector): add markers * feat(Connector): motion support * feat(connector): tree support * fix: Force Tree links * fix: ArcText types * More radial BarChart support * feat(TooltipContext): Support radial `band` mode via Arc * feat(Highlight): Add area radial support * fix(BarChart): Show y grid by default when radial * docs(BarChart): Add radial weather example * Add a few more examples (WIP) * docs(Tree): Tweak options layout * fix(Grid): Progress to support `bandAlign` for <BarChart radial>` * fix(Hightlight): Fix radial area highlights with defined min yRange (i.e. hole in middle) * fix(Axis): Center align radius labels * docs(LineChart): Add Preview around "Brush with series point events" example * fix(BrushContext): Update `isActive` when cleared or set externally * feat(BrushContext): Add `ignoreResetClick` prop. Useful to add click handlers to marks (requires externally resetting). * fix(BrushContext): Fix `ignoreResetClick` default and still hide brush if `resetOnEnd` set (just don't reset) * fix(Grid): Properly handle radial x-axis lines when using `bandAlign="between"` * feat(BrushContext/BarChart): WIP scaleBand brush support * docs(LinearGradient): Use children snippet with `gradient` prop for better readability (and typical use case) * breaking(Pattern): Align with LinearGradient and use `children` snippet to apply pattern and `patternContent` for the definition (will support simplier pattern definitions and canvas in future) * feat(Pattern): Add simplified line patterns * feat(Pattern): Simplify pattern definition further (use common `size` for `width`/`height`, removing spacing from each line (use pattern size). Support single lines as object and boolean for simple use cases * feat(Pattern): Add simplified circle patterns * feat(Pattern): Add support for `background` and update remaining examples (fill, gradient) * fix(AreaChart): Handle separate series data with `seriesLayout="stack"` * Update Connector docs * Add changesets * Add changeset * fix(ScatterChart): Support color scales based on value (such as threshold) * docs(LineChart): Fix data preview for brushing example * feat: Add Annotation components (AnnotationPoint, AnnotationLine, AnnotationRange) * Rename `description` to `details` and support any structure (not just string) * Split annotation components into separate docs pages and nav section * Resume Placement type in Legend, Tooltip, and TransformControls and export top-level * feat(AnnotationLine): Support label with placement/offset options * Remove default color-styling to labels. Add line with range example * Cleanup docs * feat(AnnotationRange): Support label with placement/offset options * Add default values for both defaultChartPadding() arguments (axis, legend) * feat(AnnotationPoint): Support label placement/offset and add explicit `r` (radius) * Place label side line when vertical and top/bottom or horizontal and left/right placement (i.e. in padding) * Fix imports * feat: Integrate `annotations` into LineChart (other simplified charts to follow) * Fix/workaround svelte-check errors * Improve annotation types * feat: Add `Layer` component to easily switch between Svg, Canavs, and Html layers * docs: Move gradients and pattern to "fill" category * Expose Layer in top-level exports * Use Layer in more docs * docs(LinearGradient): Add render context toggle * layer type * Cleanup * feat(Pattern): Initial canvas support * Cleanup * Cleanup * docs(Pattern): Change default back to svg * Add pattern canvas to DOM to allow computed styles to be read (`getComputedStyles()`) * fix(LineChart): Move ChartAnnotations back into primary Layer to fix interactivity (hover annotation point) now that Pattern supports Canvas * feat(AreaChart): Add `annotations` support * feat(ScatterChart): Add `annotations` support * feat(BarChart): Add `annotations` support * fix BarChart "Axis labels inside bars (using Labels)" example (using Points within Labels requires function accessor to return explicit value instead of being interrupted as index value) * Update packages * Downgrade mdsvex from 0.12.5 to 0.12.3 to fix "Cannot invoke `use` on a frozen processor" (will look at later or switch to mdsx) * Uninstall layercake dependency (no longer used) * Use new `@layerstack/svelte-state` instead of internal * Update @layerstack/svelte-state and use class-based SelectionState. Update `createHighlightKey()` and `createSeriesState()` to be class-based `HighlightKey` and `SeriesState` * Fix type * Fix import * Add `Connector` to top-level exports * Use movable action on Connector example. Move to common location (will update @layerstack/svelte-actions impl (event callbacks) * doc(Connector): Simplify * fix(Text): Respect font weight when canvas rendered --------- Co-authored-by: Sean Lynch <techniq35@gmail.com>
* Version Packages (next) * Update CHANGELOG.md --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Sean Lynch <techniq35@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Ignore content-collections (needed until #651 is merged) * fix(Calendar): Respect `start` instead of always start of year
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* BrushState WIP * Add missing import after merge * Fix some svelte/type checks * Update @layerstack/utils with improved clamp() types. Fix remaining type warnings * fix merge * Move BrushState to $lib/states * Fix CI * Fix CI
This reverts commit 8ce469f.
* Fix icon imports * fix(Highlight|TooltipContext): Support xInterval / yInterval
Merged
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.