Repository navigation
chore: version packages - #179
Open
github-actions[bot] wants to merge 1 commit into
Open
github-actions[bot] wants to merge 1 commit into
github-actions[bot] wants to merge 1 commit into
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
October 13, 2026 23:54
809de55 to
2eded2e
Compare
pedroapfilho-release
Bot
force-pushed
the
changeset-release/main
branch
from
October 14, 2026 13:20
2eded2e to
d34b017
Compare
pedroapfilho-release
Bot
force-pushed
the
changeset-release/main
branch
from
October 14, 2026 19:03
d34b017 to
5922328
Compare
pedroapfilho-release
Bot
force-pushed
the
changeset-release/main
branch
from
October 14, 2026 19:17
5922328 to
bf26de4
Compare
pedroapfilho-release
Bot
force-pushed
the
changeset-release/main
branch
from
October 14, 2026 19:22
bf26de4 to
640fbf6
Compare
pedroapfilho-release
Bot
force-pushed
the
changeset-release/main
branch
from
October 15, 2026 13:27
640fbf6 to
a260b11
Compare
pedroapfilho-release
Bot
force-pushed
the
changeset-release/main
branch
from
October 15, 2026 13:58
a260b11 to
8f486f2
Compare
pedroapfilho-release
Bot
force-pushed
the
changeset-release/main
branch
from
October 15, 2026 19:40
8f486f2 to
f033c37
Compare
pedroapfilho-release
Bot
force-pushed
the
changeset-release/main
branch
from
October 15, 2026 20:27
f033c37 to
b018e5d
Compare
This branch was successfully deployed
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
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.
This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
@dashfoo/core@2.0.0
Major Changes
9eec182: Give the history functions explicit names:
dispatchis nowdispatchToHistory,undoisundoHistory,redoisredoHistory,canUndoiscanUndoHistoryandcanRedoiscanRedoHistory.createHistorynow normalizes the model it receives, so every history holds a canonical document.9eec182:
normalizeclamps every tabset'sselectedinto its strip.tabsetNodeSchemanow checks shape only, sotabsetNodeSchema.parseanddashfooSchema.parsekeep an out-of-rangeselectedfornormalize(andparseModel) to clamp.tabsetNodeObjectSchemais removed:tabsetNodeSchemahas no transform left to bypass.9eec182: Remove
dashfooMachine. It had one state and mapped each event onto a history function, so it added indirection without a lifecycle. Hold aHistoryfromcreateHistoryand step it withdispatchToHistory,undoHistoryandredoHistory.dragDockMachineis unchanged.9eec182: One responsive projection.
useResponsiveLayout(model, { maxWidth, orientation? })measures the layout's own container and returns the compact view of the model plus the lock that goes with it (restructurable: false, which also disables floating, andmaximizable: false).DashfooLayout'sresponsiveprop runs on the same hook, so a hand-builtLayout.Rootcompacts exactly like the built-in layout, keeping row ancestors so nested widget state survives the breakpoint.Breaking:
useResponsiveModel,useContainerWidth,matchBreakpoint,activeBreakpointand theBreakpoint,ResponsiveModelandUseResponsiveModelOptionstypes are removed from@dashfoo/react, andstackModelis removed from@dashfoo/core. Flattening reparented nested tabsets and remounted their content; useuseResponsiveLayoutinstead.9eec182: Remove exports nothing consumed:
findRootContaining, theTabContaineralias (TabLocation.containeris aTabsetNode), and the snap internalssnapSizes,resolveSnapTargets,DEFAULT_SNAP_THRESHOLDandSnapResult. Snap throughresolveSnapGrid,decideSnapandsettleSnap.Minor Changes
resolveDropIntentanddropIndicator: pure drop-intent resolution over a measured tabset. They decide self-drops from the drag subject, strip versus body, the insertion index and thesplitDockoverride, and derive the insertion line or split zone from the same measurement.fallbackSelectedIndex, and the tab strip's drag preview uses it instead of its own copy.Patch Changes
moveNode,moveTabsetandaddNodeonto a tabset's center used to leave focus where it was, so merging the active tabset away dropped focus to the first tabset.addNodewith a tab id already in the layout is ignored with a[dashfoo]warning instead of creating a duplicate.min,max,snaporconfig, no longer record an undo step or clear the redo stack.@dashfoo/react@0.10.0
Minor Changes
9eec182:
Layout.Rootnow mounts the drag root, so every layout gets exactly one drag manager and drag actor, shared by the main tree and its floats. Hand-built layouts withLayout.FloatLayercan now drag between floats and the main tree; before, each float mounted its own root and those drops failed silently. A root nested inside another (a layout underDashfooDragProvider, or a layout in a tab) reuses the outer one.Layout.DragLayerno longer mounts a root of its own: it must sit inside aLayout.Root, warns when it does not, and drops its undocumentedonCommitandsplitDockprops in favour of the layout store.9eec182: Remove the unused
globalprop fromLayout.FloatLayer. Floating panels already inherit their capabilities from the layout above them; dropglobal={...}from any hand-built<Layout.FloatLayer>.9eec182: One responsive projection.
useResponsiveLayout(model, { maxWidth, orientation? })measures the layout's own container and returns the compact view of the model plus the lock that goes with it (restructurable: false, which also disables floating, andmaximizable: false).DashfooLayout'sresponsiveprop runs on the same hook, so a hand-builtLayout.Rootcompacts exactly like the built-in layout, keeping row ancestors so nested widget state survives the breakpoint.Breaking:
useResponsiveModel,useContainerWidth,matchBreakpoint,activeBreakpointand theBreakpoint,ResponsiveModelandUseResponsiveModelOptionstypes are removed from@dashfoo/react, andstackModelis removed from@dashfoo/core. Flattening reparented nested tabsets and remounted their content; useuseResponsiveLayoutinstead.9eec182:
useDashfooStorenow owns the whole document lifecycle. It takes apersistoption (the samestring | { key, storage?, debounceMs? }thatDashfooLayoutaccepts) that loads once after hydration, restores without an undo entry or a save, debounce-saves every change and flushes on page hide and unmount. The store also returnsreset(), which clears the saved copy and restoresdefaultModel. Hand-built layouts get the same persistence asDashfooLayoutfrom the hook alone.Breaking:
usePersistenceand itsPersistenceandPersistConfigtypes are removed; passpersisttouseDashfooStoreinstead. The persist input type is exported asPersistInput. Withpersistset,setModelnow saves the replacement like any other change. The store no longer runs an XState actor.Patch Changes
resolveDropIntentanddropIndicatorin@dashfoo/core, so the insertion index and the insertion line always mark the same slot. The index is measured against whole tab items (label plus close button), the item wrapper (data-dashfoo="tab-item") carriesdata-tab-id, a layout nested in a tab no longer leaks its strip into the outer tabset's measurement, and only the layer that resolved a drop paints its indicator.useExternalTabSourcewarns once when it has no drag root above it instead of silently registering nothing.fallbackSelectedIndex, and the tab strip's drag preview uses it instead of its own copy.