CRBT-Team/Purplet

View on GitHub
packages/purplet/CHANGELOG.md

Summary

Maintainability
Test Coverage
# `purplet`

## 2.0.0-next.18

### Minor Changes

- feat: add `purplet/env` ([#55](https://github.com/CRBT-Team/Purplet/pull/55))

### Patch Changes

- fix: `$mentionCommand` now works ([#55](https://github.com/CRBT-Team/Purplet/pull/55))

- Updated dependencies
  [[`281b7dc`](https://github.com/CRBT-Team/Purplet/commit/281b7dcb853dea36ff0dbb8d129c44e21a5b10cb),
  [`8a57c60`](https://github.com/CRBT-Team/Purplet/commit/8a57c6051a5dd788536cbe924334d76aa4cd140f),
  [`8a57c60`](https://github.com/CRBT-Team/Purplet/commit/8a57c6051a5dd788536cbe924334d76aa4cd140f),
  [`bbbe1b1`](https://github.com/CRBT-Team/Purplet/commit/bbbe1b18de07dab0c4921a78f7b1ee6a1b63f293),
  [`e817d3d`](https://github.com/CRBT-Team/Purplet/commit/e817d3dc7a4fc5d019cae29d9a4eb5aff801fc13)]:
  - @purplet/rest@1.0.2-next.0

## 2.0.0-next.17

### Patch Changes

- move @davecode/types to be a required dependency
  ([`20b20d5`](https://github.com/CRBT-Team/Purplet/commit/20b20d564234091974bc0af18f1fe4d92152271c))

- Updated dependencies
  [[`20b20d5`](https://github.com/CRBT-Team/Purplet/commit/20b20d564234091974bc0af18f1fe4d92152271c)]:
  - @purplet/rest@1.0.1-next.0

## 2.0.0-next.16

### Patch Changes

- swap out `@discordjs/rest` with `@purplet/rest`
  ([#33](https://github.com/CRBT-Team/Purplet/pull/33))

* Extract `GatewayClient` to separate package `@purplet/gateway`
  ([#31](https://github.com/CRBT-Team/Purplet/pull/31))

* Updated dependencies
  [[`0ac1bdd`](https://github.com/CRBT-Team/Purplet/commit/0ac1bddf24f244207401d4e81b86e96fb649a3d1),
  [`1af5025`](https://github.com/CRBT-Team/Purplet/commit/1af5025c0e2db4689a7706ee8a669430e993f075)]:
  - @purplet/polyfill@1.0.1-next.0
  - @purplet/gateway@1.0.1-next.0

## 2.0.0-next.15

### Patch Changes

- OptionBuilder: fix string and number option types messing up

## 2.0.0-next.14

### Patch Changes

- component custom ids allow longer feature ids, making it more unlikely to get an error thrown
  during usage ([#22](https://github.com/CRBT-Team/Purplet/pull/22))

## 2.0.0-next.13

### Patch Changes

- add string option .maxLength and .minLength

## 2.0.0-next.12

Rebuild

## 2.0.0-next.11

### Patch Changes

- drop discord.js dependency, now has a custom gateway client
- rename `$onEvent` to `$gatewayEvent`
- fix an issue with subcommands and options not working
- fix autocomplete handlers
- fix a performance/nesting issue with OptionBuilder, causing it to fail with the infinite recursion
  error after four options
- support purplet.config.ts
- remove config.paths.temp
- Add Interaction.appPermissions
- stop exporting `$appCommand`. it is now an internal tool for us
- add error messages when startind dev mode
- add message attachments to Channel.createMessage, Interaction.showMessage,
  Interaction.updateMessage, and Message.edit
- add .meta property to all hooks, allowing user-defined metadata to be attached to hooks
- fix `purplet build`'s output to actually be runnable (due to changes in GatewayBot)
- new cli interface
- tweak the naming of some of the Bitfield classes to include the plural `s`

## 2.0.0-next.10

### Patch Changes

- Remove `djsClient` and `djsOption` hooks, and move all hooks to using purplet structures.
- Purplet structures are back. They aren't finalized and it's probably harder to use but yeah.
- Remove `$modal` temporarily. It will be back

- Updated dependencies
  [[`2a994ea`](https://github.com/CRBT-Team/Purplet/commit/2a994ea9e7e325cf5670f78477a621377c94c29e)]:
  - @purplet/serialize@2.0.0-next.0

## 2.0.0-next.9

### Patch Changes

- custom logger, which intercepts console.log
- add command groups
- fix intents hook not doing anything
- commands are deleted when dev process exits
- add config parsing
- mention commands have been modified significantly
- add getCustomId() onto components

## 2.0.0-next.8

### Patch Changes

- fix build

## 2.0.0-next.7

### Patch Changes

- fix build

## 2.0.0-next.6

### Patch Changes

- rename `$chatCommand` to `$slashCommand`
- add `$modal`
- revert to using discord.js structure for everything - the world isn't ready for what i have lol

- move `modules` to `features`
- Updated dependencies
  [[`38d20aa`](https://github.com/CRBT-Team/Purplet/commit/38d20aa5a4d4e12bac3e05008aac179b866118d3)]:
  - @purplet/serialize@1.0.0-next.0

## 2.0.0-next.5

### Patch Changes

<!-- these links are bad -->

- add `Message`, and partial helpers.
- add some basic interaction response functions.
- return an interaction message when you call `showMessage()`.
- add Bitfield classes.
- properly add all response functions.
- add full bitfield resolving.
- add basic autocomplete handler execution.
- add `$merge` and `$interaction`.
- add `MessageComponentBuilder` and `ModalComponentBuilder` for simplified creation of the
  `components` array..
- add component stuff.
- messed with the changelog format
-

## 2.0.0-next.4

### Patch Changes

- [`a4980c7`](https://github.com/CRBT-Team/Purplet/commit/a4980c741ea4d64bd74f13647840a4b85eb51aff):
  add hooks
  - `$appCommand`
  - `$userContextCommand`
  - `$djsUserContextCommand`
  - `$messageContextCommand`
  - `$djsMessageContextCommand`
- [`3b6d61d`](https://github.com/CRBT-Team/Purplet/commit/3b6d61d7f87f3a9d15c3693c2f3f8f23807eeeb7):
  add basic version of `$chatCommand`
- [`a4980c7`](https://github.com/CRBT-Team/Purplet/commit/a4980c741ea4d64bd74f13647840a4b85eb51aff):
  Add PurpletInteraction and all of it's subclasses.
- [`f16fdc3`](https://github.com/CRBT-Team/Purplet/commit/f16fdc3ee675e08eddc5bae352994b0ac913fd9f):
  Fix OptionBuilder types
- [`a4980c7`](https://github.com/CRBT-Team/Purplet/commit/a4980c741ea4d64bd74f13647840a4b85eb51aff):
  add OptionBuilder

## 2.0.0-next.3

### Patch Changes

- 16cc280: - add `$onDJSEvent`, a wrapper around `djsClient` hook with `.on(event)`
  - add `$intents`, shorthand for the `intents` hook
  - add `$service`, a wrapper around the `initialize` hook
  - add `$djsOptions`, shorthand for the `djsOptions` hook
  - add `$presence`, a one liner on top of `$djsOptions` for presence data
- 1360e42: breaking: simplify built in hook apis
  - `initialize` -> no args
  - `djsClient` -> client first arg
  - `djsOptions` -> prev options first arg
  - `interaction` -> the interaction
  - `applicationCommands` -> no args
  - `intents` -> no args
- c840aae: fix framework breaking when it is rebuilt while also running
- 31c8390: add `@discordjs/rest` client under the `rest` import
- 0cb148c: add `applicationCommands` hook
- ebc53d4: add custom hook `$onRawEvent`

## 2.0.0-next.1

### Patch Changes

- Rewritten codebase, projects are bundled with vite and built with rollup. Instead of a Modules +
  Handlers api, it is based off of `Feature` objects.
- Removed purplet configuration file.
- Removed every handler type, but all of these will be added in some variation.

## 1.3.1

### Changes

- Reverse `required` to default to false

## 1.3.0

### Changes

- Added ModalComponent and bumped D.js to v13.7.
- Improved README.md.
- `create-purplet` package to initialize a new Purplet project.
- Added support for attachments in OptionBuilder

## 1.2.8

### Changes

- Changed OptionBuilder to use an option object for extra properties.

## 1.0.4

### Changes

- Fix: mentionable options resolving in a snowflake instead of the option object
- Added handler for text commands (`TextCommandHandler()`)

## 1.0.3

### Changes

- Fix: `build-dev.mjs`:
  - Using a `fs-extra` function with `fs` only
  - `JSON.stringify`ed the `package.json` to send over to the build.
- Added nicer and more accurate build messages.

## 1.0.2

### Changes

- ChatCommand: make `options` optional.

## 1.0.1

### Changes

- Bug fix: building a bot with more than one module fails
- Removed handlers folder

## 1.0.0

### Changes

Initial release. Very basic, no development mode