Skip to content

Releases: gramiojs/scenes

v0.5.2

19 Mar 23:09

Choose a tag to compare

feat: allow passing params to context.scene.reenter()
Full Changelog: v0.5.1...v0.5.2

v0.5.1

06 Mar 22:32

Choose a tag to compare

  • Add exact reproduction test for issue #5 (context.scene undefined bug)

  • Test shared storage with scenes plugin, multi-step flows, and duplicate validation

  • Test context.scene availability, enter/exit methods, withCurrentScene option

  • Add comprehensive test suite for scenesDerives functionality

  • Remove unused Composer import

fix: replace Composer with Plugin in scenesDerives for proper deduplication #5 Change scenesDerives to use Plugin instead of Composer

chore: bump version to 0.5.1
Full Changelog: v0.5.0...v0.5.1

v0.5.0

04 Mar 22:36

Choose a tag to compare

feat(scene): add enter function

fix(scene): async logic in scene enter

Merge pull request #3 from fdmafhgs/mainfeat(scene): add enter function

chore: add CLAUDE.md documentation for AI-assisted development

chore: add CLAUDE.md with repository guidance

  • Add onInvalidInput option to ask() for custom validation error messages

  • Add users_shared to events list

  • Replace composer.composed() with composer.run()

  • Encode scene names in plugin/composer names for gramio's name-based deduplication

  • Use Composer instead of Plugin for derives to enable proper deduplication

  • Remove middleware-io dependency (now integrated in gramio)

chore: upgrade to gramio 0.5.0 and refactor plugin deduplication- Bump gramio from 0.2.0 to 0.5.0

  • Bump @gramio/storage to ^2.0.0

  • Update gramio peer dependency to >=0.5.0

  • Add null check for sceneData after storage.get()

  • Remove unnecessary generic type parameters from storage.get() calls

  • Add ScenesStorage type with proper key-value typing

chore: improve type safety for storage keys and scene data- Constrain storage key type to @gramio/scenes:${string | number}

Merge branch 'main' of https://github.com/gramiojs/scenes

Merge branch 'main' of https://github.com/gramiojs/scenes

  • Update type definitions to merge global exposed properties and derives

  • Preserve existing Plugin extend functionality

  • Check for compose/run methods and absence of _ property to identify EventComposer

  • Implement runtime detection to distinguish EventComposer from Plugin

feat(scene): add EventComposer support to extend method- Add EventComposer overload to extend() for proper type inference

  • Test bot+scene extend pattern, scope isolation, and Plugin support

  • Add comprehensive test suite covering type safety, runtime behavior, and deduplication

  • Add @gramio/test dev dependency for testing

  • Filter out duplicate middlewares before composing scene chain

  • Check bot.updates.composer["~"].extended set for plugin names

feat(scene): add cross-chain deduplication for bot-level and scene-level extends- Skip scene-level middleware if already applied in bot's main chain

  • Add scene.reenter() tests: restart from step 0, state reset, params

  • Add scene.exit() tests: scene termination, re-entry behavior, flow interruption

  • Add state persistence tests: cross-step availability, accumulation via update(), empty updates

  • Add Scene.params() tests: access in handlers, stability across steps, type safety

test(core): add comprehensive test suite for scene functionality- Add Scene.onEnter() tests: execution order, single invocation, async support, context initialization

  • Pass allScenes array through

  • Add parentStack to ScenesStorageData for scene nesting

  • Add ParentSceneFrame type to track parent scene state in stack

  • Add enterSub() and exitSub() methods for nested scene support

  • Bump pkgroll from ^2.6.0 to ^2.27.0

  • Bump @types/bun from ^1.1.14 to ^1.3.10

  • Bump @gramio/test from ^0.3.0 to ^0.3.1

  • Bump @gramio/storage-redis from ^1.0.2 to ^1.0.5

chore: upgrade dependencies and add sub-scene support- Bump gramio from ^0.5.0 to ^0.7.0 and update peer dependency

  • Add sub-scenes section covering

  • Document context API: ctx.scene.state, params, step methods, update(), enter(), exit(), reenter()

  • Add complete Scene builder API reference: params(), state(), onEnter(), step(), ask(), extend()

  • Document core concepts: Scene, step handler contract, firstTime pattern

  • Add installation instructions and quick start example

docs: replace placeholder README with comprehensive plugin documentation- Replace "follow official documentation" link with full inline guide

chore: bump version to 0.5.0

What's Changed

New Contributors

Full Changelog: v0.3.4...v0.5.0

v0.3.4

21 Aug 16:37
d5fc83c

Choose a tag to compare

fix: again

Full Changelog: v0.3.3...v0.3.4

v0.3.3

21 Aug 14:16
2682b89

Choose a tag to compare

fix: bug with allowedScenes

chore: bump

Full Changelog: v0.3.2...v0.3.3

v0.3.2

17 Aug 11:27
c2fadb4

Choose a tag to compare

chore: allow formattable string at ask api

Full Changelog: v0.3.1...v0.3.2

v0.3.1

08 Aug 08:21
ba7b0ab

Choose a tag to compare

fix

Full Changelog: v0.3.0...v0.3.1

v0.3.0

19 May 20:56
be59b99

Choose a tag to compare

chore: require storage at ScenesDerivesOptions

chore: remove exit from types

throw error when scene is unregistered but user wants to join it

chore: throw on duplicate name scenes

chore: throw

feat: implement ask api

chore: text lockfile

chore: fix tsc and bump

fix: tsc error

Full Changelog: v0.2.4...v0.3.0

v0.2.4

30 Dec 11:11

Choose a tag to compare

chore: remove sceneData logs

chore: bump

Full Changelog: v0.2.3...v0.2.4

v0.2.3

30 Dec 10:55

Choose a tag to compare

fix: scene exit handling

Full Changelog: v0.2.2...v0.2.3