inventory-framework

Minecraft Inventory API framework

MIT License

Stars
119
Committers
15

Bot releases are hidden (Show)

inventory-framework - v3.0.11 (09-11-2024)

Published by DevNatan about 1 month ago

πŸ› Bug fixes

inventory-framework - v3.0.10 (04-23-2022) Latest Release

Published by DevNatan 6 months ago

↩️ Revert

Full Changelog: https://github.com/DevNatan/inventory-framework/compare/v3.0.9...v3.0.10

inventory-framework - v3.0.9 + v3.1.0-beta (04-22-2024)

Published by DevNatan 6 months ago

This release is based on a stable version of v3.1.0-beta and brings some fixes that would come only in v3.1.0-rc2 without v3.1.0-rc changes.

🌟 What's New

πŸ› Bug fixes

🧩 API changes

πŸ”§ Other changes

Full Changelog: https://github.com/DevNatan/inventory-framework/compare/v3.1.0-beta...v3.0.9

inventory-framework - v3.1.0-rc (02-04-2024)

Published by DevNatan 9 months ago

🌟 What's New

πŸ› Bug fixes

🧩 API changes

πŸ”§ Other changes

Full Changelog: https://github.com/DevNatan/inventory-framework/compare/v3.1.0-beta...v3.1.0-rc

inventory-framework - v3.1.0-beta (12-15-2023)

Published by DevNatan 10 months ago

🌟 What's New

  • Per-player state management for Shared Contexts (#411)
  • New isLayoutSlot() in click context to check if click was in a character of the layout (#562)
  • New "Proxy" feature prototype to use external inventories, like player inventory, as a extension of the view (#561)

πŸ› Bug fixes

  • Do not call methods in Shared Contexts that are not supported (#545)
  • Config maxSize() implementation (#584)

🧩 API changes

  • Human-friendly public Components API (#498, #599)

πŸ› οΈ Internal changes

  • Use Paper as inventory factory in inventory-framework-platform-paper module (#544)
  • A lot of changes regarding components rendering and pipelining (#558)
  • Remove reserved layout character restriction (#580)

Full Changelog: https://github.com/DevNatan/inventory-framework/compare/v3.0.8...v3.1.0-beta

inventory-framework - v3.0.8 (11-28-2023)

Published by DevNatan 11 months ago

πŸ› Bug fixes

  • Interaction delay intercepting re-propagated interactions (#543)

Full Changelog: https://github.com/DevNatan/inventory-framework/compare/v3.0.7...v3.0.8

inventory-framework - v3.0.7 (11-28-2023)

Published by DevNatan 11 months ago

πŸ› Bug fixes

  • Solve issues with click handlers not working in pagination by calling component interaction handler in core interceptors (#542)

Full Changelog: https://github.com/DevNatan/inventory-framework/compare/v3.0.6...v3.0.7

inventory-framework - v3.0.6 (11-27-2023)

Published by DevNatan 11 months ago

🌟 What's New

  • New createEndlessContext and openEndless to create shared views with multiple players that are never invalidated (#538)

πŸ› Bug Fixes

  • Re-propagate click interaction in pagination child - now cancelOnClick() works correctly in pagination items (#539)
  • Some components disappearing on global context update (#541)

Full Changelog: https://github.com/DevNatan/inventory-framework/compare/v3.0.5...v3.0.6

inventory-framework - v3.0.5 (11-26-2023)

Published by DevNatan 11 months ago

🌟 What's New

  • Experimental onViewerAdded and onViewerRemoved to manage viewers in shared contexts (#516)
  • New openActive(...) to allow players "join" an already created context (#516)

πŸ› Bug fixes

  • Now ComponentBuilder's closeOnClick() closes only for the player who clicked, not for everyone in Shared Context (#516)
  • Do not fill all available slots when availableSlot() is used (#533)
  • Fix "Pagination state can only be registered by RootView" (#536)

πŸ“˜ Documentation

πŸ› οΈ Internal changes

  • type(ViewType.ANVIL) is now automatically set when Anvil Input feature is applied (#523)

Full Changelog: https://github.com/DevNatan/inventory-framework/compare/v3.0.4...v3.0.5

inventory-framework - v3.0.4 (11-20-2023)

Published by DevNatan 11 months ago

πŸ› Bug fixes

  • Scheduled update now checks if a context is active before updating it (#517)
  • Now Anvil Input feature ingredient display name is updated when state value changes (#494)

🧩 API changes

  • Modify ComponentBuilder's updateOnStateChange to prohibit no-parameter usage (#520)

πŸ› οΈ Internal changes

  • Components now use unified update mechanism in show() and hide() to ensure consistency and behavior in relation to other components (#491)

Full Changelog: https://github.com/DevNatan/inventory-framework/compare/v3.0.3...v3.0.4

inventory-framework - v3.0.3 (11-19-2023)

Published by DevNatan 11 months ago

πŸŽ‰ New Features

  • Minecraft 1.20.2 support (#514)

πŸ› Bug fixes

  • Close context cancellation not working (#515)

🧩 API changes

  • Decouple state access from PlatformView to allow State Management API usage anywhere (#496)
  • ViewConfig with(Modifier) is now use(Modifier) (#513)

πŸ”§ Other changes

  • Bump junit from 5.10.0 to 5.10.1 (#502)
  • Bump org.jetbrains:annotations from 24.0.1 to 24.1.0 (#512)

Full Changelog: https://github.com/DevNatan/inventory-framework/compare/v3.0.2...v3.0.3

inventory-framework - v3.0.2 (10-05-2023)

Published by DevNatan about 1 year ago

πŸ› Bug fixes

  • Fix scheduled update start interceptor trying to restart on context close and throwing an exception (#497)

πŸ”§ Other changes

  • Kotlin stdlib from inventory-framework-platform-paper module runtime dependencies (#495)

Full Changelog: https://github.com/DevNatan/inventory-framework/compare/v3.0.1...v3.0.2

inventory-framework - v3.0.1 (10-04-2023)

Published by DevNatan about 1 year ago

πŸ› Bug fixes

  • Lock child interactions while pagination page is changing to prevent items be removed while asynchronous pagination is reloading (#488)
  • Option to enable data transitivity from one view to another automatically (#493)
  • Remove "multiple layoutSlot with same character" restriction, now multiple layoutSlot with the same character can be used alternating its visibility with hideIf and displayIf modifiers (#489)

Full Changelog: https://github.com/DevNatan/inventory-framework/compare/v3.0.0...v3.0.1

inventory-framework - v3.0.0 (09-21-2023)

Published by DevNatan about 1 year ago

πŸŽ‰ New Features

  • Refs API–create a direct component instance reference (see docs) (#476)
  • Component's hide() and show() to programmatically set component visibility state (#476)
  • Anvil Input feature–get anvil text field input (see docs) (#481)
  • Context back with initialData parameter (#482)
  • bStats metrics now can be disabled using disableMetrics() ViewFrame option (#485)

πŸ› Bug fixes

  • Inconsistent page index in pagination page switch handler (#478)
  • OpenContext and CloseContext now implements Bukkit platform Context (#479)
  • MC 1.8 inventory close handling exploit with F6 (Start Streaming) key (#480)

🧩 API changes

  • forceUpdate() was moved from Pagination API to Component API (#476)

πŸ› οΈ Internal changes

  • IN-GAME library conflict warning was removed (#484)

πŸ”§ Other changes

  • Kotlin stdlib was removed from runtime (#487)

Full Changelog: https://github.com/DevNatan/inventory-framework/compare/v3.0.0-rc.3...v3.0.0

inventory-framework - v3.0.0-rc.3 (09-13-2023)

Published by DevNatan about 1 year ago

πŸŽ‰ New Features

  • Now components overlap each other based on rendering priorities, basically, two items can now be placed in the same slot and they will render properly based on visibility conditions like displayIf or onRender/rendered result (#433)
  • New displayIf with context as parameter to be able to use displayIf(booleanState::get) (#436)
  • Better Kotlin interop and extensions to kotlin.time package (#439)
  • New back() to navigate back to the previous view. Use onResume to catch when "back" is used. See Creating Flows with back() and onResume on Wiki (#443)
  • Apply default configuration to all views. See Default Configuration on Wiki (#444)
  • New item updateOnStateChange(State) (that's the same as watch but more explicit) (#447)
    interactionDelay(Duration) allows set a interval between player interactions (#460)
  • Added context and index parameters to Pagination state (#456)
  • New hideIf (the opposite of displayIf) to hide items based on a condition (#467)
  • New computedPaginationState and lazyPaginationState (#458)

πŸ› Bug fixes

  • Inventory transition don't work in newer versions, now we close inventory before transitioning to others via open (#457)
  • Players being able to remove items from view inventory by clicking in their own inventory (#459)
  • Issues with pagination items updates also not being able to use displayIf or watch now fixed (#466)

πŸ“˜ Documentation

🧩 API changes

  • StateValue from API is now an interface also Pagination now extends StateValue (#434)
  • Better Kotlin interop & Bukkit platform View do not implement Bukkit's InventoryHolder anymore (#439)
  • New IndexSlotFunction<T> and IndexSlotConsumer<T> interfaces (#440)
  • ComponentBuilder's watch(State) is now deprecated and scheduled for removal in v3.1.0 (#447)
  • View's onInit(ViewConfigBuilder) moved to inventory-framework-platform module (#448)

πŸ› οΈ Internal changes

  • Move platform related code from API to inventory-framework-platform module (#445)
  • Errors while loading async pagination data sources are now propagated (#471)
inventory-framework - v3.0.0-rc.2 (08-15-2023)

Published by DevNatan about 1 year ago

πŸŽ‰ New Features

  • New openForPlayer() and openForEveryone() with initial data parameter, like in ViewFrame (#421)
  • Minecraft 1.19 and 1.20 support in dynamic title update (#423)
  • New updateTitleForPlayer(title, player) to update title for a specific player (#424)
  • Asynchronous Pagination (experimental) (#432)

πŸ› Bug fixes

  • Pagination items with dynamic rendering not reacting to global update (#425)
  • Update are no more called for static items (#425)

⚑Performance improvements

  • Pagination components are now registered lazily (#425)
  • Component updates triggered by watch(State) no more updates the entire view, just the component itself (#425)

πŸ“˜ Documentation

  • Pagination on Wiki had its structure reformulated to simplify the reading, go more straight to the point, added some missing topics to explain better about pagination with dynamic items and data source
  • Page "Inventory Title Programmatic Update" on Wiki reworked and renamed to Dynamic Title Update

🧩 API changes

  • Internal state and component management related methods were marked as Internal API

πŸ› οΈ Internal changes

  • Project module names changed now every module has "inventory-framework-" prefix
  • Removed kotlin-dsl and feature-event-bus modules

Full Changelog: https://github.com/DevNatan/inventory-framework/compare/v3.0.0-rc.1...v3.0.0-rc.2

inventory-framework - v3.0.0-rc.1 (08-07-2023)

Published by DevNatan about 1 year ago

πŸ› Bug fixes

  • Fix relocation warn being sent even in the wrong conditions. Now we check if IF's main class is available in runtime and plugin "InventoryFramework" is enabled (#412)
  • Null getPlayer() in RenderContext (#414)
  • An error thrown when a empty pagination source is provided (#415)
  • Dynamically rendered items in pagination being positioned in the wrong place (#416)

πŸŽ‰ New Features

  • New ViewFrame.open(view, player, data) overload (#417)
  • New item.updateOnClick() to trigger context update on item click (#418)

🧩 API changes

  • initialState() is now mutable so its value can be changed (#413)

πŸ”§ Other changes

  • Bump junit from 5.9.3 to 5.10.0 (#406)

Full Changelog: https://github.com/DevNatan/inventory-framework/compare/v3.0.0-beta...v3.0.0-rc.1

inventory-framework - v3.0.0-beta (08-04-2023)

Published by DevNatan about 1 year ago

Inventory Framework is now published to Maven Central!

This release introduces Shared Contexts (#409) preview also fixes with artifacts publication issues.

Full Changelog: https://github.com/DevNatan/inventory-framework/compare/v3.0.0-alpha...v3.0.0-beta

inventory-framework - v3.0.0-alpha (08-01-2023)

Published by DevNatan about 1 year ago

πŸ› Bug fixes

  • Infer container size automatically when layout is present (#377)
  • JDK and PaperSpigot versions compatibility issues (#384)
  • Change layout component registration order to ensure it works with PaginationState (#399)

πŸŽ‰ New Features

  • Item render and update handler shortcuts (#274)
  • Simplified way to conditional item rendering with displayIf(BooleanSupplier) (#338)
  • Support more inventory types (#343)
  • Allow to change component position while rendering (#395)

πŸ“˜ Documentation

  • Added GIF to Counter code sample
  • Added Per-player Data Source topic to Pagination feature documentation

🧩 API changes

  • Internal data used in initialState is now available in Internal API which allows Features System to use it (#326)
  • New unsetSlot to create items with unset slots (#395)
  • New item click handler onClick(Runnable) overload (#400)

πŸ› οΈ Internal changes

  • Lombok removed (#391)
  • Immutable LayoutSlot and layout components renderization order (#399)

πŸ”§ Other changes

Full Changelog: https://github.com/DevNatan/inventory-framework/compare/v3.0.0-EAP...v3.0.0-alpha

inventory-framework - v3.0.0-EAP (06-07-2023)

Published by DevNatan over 1 year ago

Version 3 Release Preview.
Please refer to Migrating to version 3 on Wiki and Installation for migration details.

This version is NOT production ready.

Full Changelog: https://github.com/DevNatan/inventory-framework/compare/2.5.4-rc.1...v3.0.0-EAP

Badges
Extracted from project README
Build CodeQL Publication FOSSA Status Maven Central FOSSA Status