radashi 12.1.0 → 12.2.0-beta.1ee40e2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/LICENSE.md +2 -1
  2. package/README.md +124 -17
  3. package/dist/radashi.cjs +1768 -0
  4. package/dist/radashi.d.cts +2475 -0
  5. package/dist/radashi.d.ts +2475 -0
  6. package/dist/radashi.js +1641 -0
  7. package/package.json +56 -41
  8. package/dist/cjs/array.cjs +0 -281
  9. package/dist/cjs/array.cjs.map +0 -1
  10. package/dist/cjs/async.cjs +0 -169
  11. package/dist/cjs/async.cjs.map +0 -1
  12. package/dist/cjs/curry.cjs +0 -113
  13. package/dist/cjs/curry.cjs.map +0 -1
  14. package/dist/cjs/index.cjs +0 -109
  15. package/dist/cjs/index.cjs.map +0 -1
  16. package/dist/cjs/number.cjs +0 -34
  17. package/dist/cjs/number.cjs.map +0 -1
  18. package/dist/cjs/object.cjs +0 -204
  19. package/dist/cjs/object.cjs.map +0 -1
  20. package/dist/cjs/random.cjs +0 -34
  21. package/dist/cjs/random.cjs.map +0 -1
  22. package/dist/cjs/series.cjs +0 -62
  23. package/dist/cjs/series.cjs.map +0 -1
  24. package/dist/cjs/string.cjs +0 -72
  25. package/dist/cjs/string.cjs.map +0 -1
  26. package/dist/cjs/typed.cjs +0 -104
  27. package/dist/cjs/typed.cjs.map +0 -1
  28. package/dist/esm/array.mjs +0 -251
  29. package/dist/esm/array.mjs.map +0 -1
  30. package/dist/esm/async.mjs +0 -158
  31. package/dist/esm/async.mjs.map +0 -1
  32. package/dist/esm/curry.mjs +0 -103
  33. package/dist/esm/curry.mjs.map +0 -1
  34. package/dist/esm/index.mjs +0 -10
  35. package/dist/esm/index.mjs.map +0 -1
  36. package/dist/esm/number.mjs +0 -30
  37. package/dist/esm/number.mjs.map +0 -1
  38. package/dist/esm/object.mjs +0 -186
  39. package/dist/esm/object.mjs.map +0 -1
  40. package/dist/esm/random.mjs +0 -29
  41. package/dist/esm/random.mjs.map +0 -1
  42. package/dist/esm/series.mjs +0 -60
  43. package/dist/esm/series.mjs.map +0 -1
  44. package/dist/esm/string.mjs +0 -63
  45. package/dist/esm/string.mjs.map +0 -1
  46. package/dist/esm/typed.mjs +0 -90
  47. package/dist/esm/typed.mjs.map +0 -1
  48. package/dist/index.d.ts +0 -682
package/LICENSE.md CHANGED
@@ -1,5 +1,6 @@
1
1
  MIT License
2
2
 
3
+ Copyright (c) 2024 Alec Larson
3
4
  Copyright (c) 2022 radash
4
5
 
5
6
  Permission is hereby granted, free of charge, to any person obtaining a copy
@@ -18,4 +19,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
19
  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
20
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
21
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
22
+ SOFTWARE.
package/README.md CHANGED
@@ -1,38 +1,145 @@
1
- # radashi
1
+ # Radashi
2
2
 
3
- :loud_sound: `/raw-dash-ee/`
3
+ <div align="center">
4
+ <p align="center">
5
+ <img src="https://github.com/radashi-org/radashi/raw/main/.github/img/banner.png" alt="Radashi" width="100%" />
6
+ </p>
7
+ <a href="https://github.com/radashi-org/radashi/blob/main/LICENSE.md"><img src="https://img.shields.io/npm/l/radashi" alt="License" /></a>
8
+ <a href="https://github.com/radashi-org/radashi/actions/workflows/publish-beta.yml"><img src="https://img.shields.io/github/actions/workflow/status/radashi-org/radashi/publish-beta.yml?logo=github" alt="Build Status" /></a>
9
+ <a href="https://app.codecov.io/gh/radashi-org/radashi/tree/main/src"><img src="https://img.shields.io/codecov/c/github/radashi-org/radashi?logo=codecov" alt="Codecov" /></a>
10
+ <a href="https://biomejs.dev/"><img src="https://img.shields.io/badge/code_style-biome.js-blue?logo=biome" alt="Code Style: Biome.js" /></a>
11
+ <a href="https://github.com/radashi-org/radashi/discussions"><img src="https://img.shields.io/github/discussions/radashi-org/radashi?logo=github" alt="GitHub Discussions" /></a>
12
+ </div>
4
13
 
5
- - **What is this?**
6
- A fork of the renowned [`radash`](https://github.com/sodiray/radash) library by Ray Epps [@sodiray](https://github.com/sodiray).
7
- - **Why does this exist?**
8
- This fork aims to be a more consistently maintained version of the library, with bug fixes and improvements. Pull requests are encouraged, but please keep them small and focused. Sweeping changes are discouraged and won't be merged.
9
- - **Can I help you maintain this?**
10
- Yes! I'll add you as a contributor to the repository. You can review pull requests and even merge them. You can help with closing issues, too. Committing directly to the main branch is a privilege you can earn, as is publishing versions to NPM.
11
- - **Is backwards compatibility a goal?**
12
- Yes! We want the transition from `radash` to this library to be smooth. We'll make sure to avoid breaking changes. If any are made, they will be clearly documented at the bottom of this page.
13
- - **Is there official documentation?**
14
- Currently, there is no documentation beyond this page. I will get to it eventually, but for now, you can refer to the original `radash` documentation [here](https://radash-docs.vercel.app).
14
+ &nbsp;
15
+
16
+ **Ditch the bloat of Lodash. Stop reinventing the wheel.**
17
+
18
+ Radashi (pronounced /ruh-DAH-shee/) is a TypeScript utility toolkit, packed with lightweight functions that are readable, performant, and robust.
19
+
20
+ Radashi is an actively maintained fork of Radash, the fastest growing Lodash alternative with 100K+ weekly downloads.
21
+
22
+ _“What makes Radashi so great?”_
23
+
24
+ - **unique** and **well-designed** functions
25
+ - **tree-shakeable** (use only what you need!)
26
+ - **dependency-free**
27
+ - **community-first** (your opinions matter)
28
+ - **future-proof** (written with modern ES6+ syntax)
29
+ - **actively maintained** (with a growing team of passionate maintainers)
30
+ - **type-safe** (the best type definitions possible)
31
+ - **full test coverage**
32
+ - **performance tracking** (we track perf regressions with continuous benchmarking)
33
+ - **well-documented**
34
+ - **nightly releases** (`radashi@beta`)
35
+ - **changelog** (easily see what's new in each release)
36
+
37
+ <img src="https://github.com/radashi-org/radashi/raw/main/.github/img/rule.png" width="100%" />
38
+
39
+ ## Documentation
40
+
41
+ An official website is in the works (tracked by [#40](https://github.com/radashi-org/radashi/issues/40)). Until then, you can refer to the original `radash` documentation and the [CHANGELOG.md](https://github.com/radashi-org/radashi/blob/main/CHANGELOG.md) file.
42
+
43
+ <a href="https://radash-docs.vercel.app">
44
+ <img src="https://github.com/radashi-org/radashi/raw/main/.github/img/docs-button.png" alt="Radash documentation" width="250px" />
45
+ </a>
46
+
47
+ <img src="https://github.com/radashi-org/radashi/raw/main/.github/img/rule.png" width="100%" />
15
48
 
16
49
  ## Install
17
50
 
18
51
  ```sh
19
52
  pnpm add radashi
20
53
  ```
54
+
21
55
  ```sh
22
56
  yarn add radashi
23
57
  ```
58
+
24
59
  ```sh
25
60
  npm install radashi
26
61
  ```
27
62
 
63
+ ### Beta version
64
+
65
+ The `radashi@beta` version is a nightly release containing everything in the main branch at the time (5:00AM UTC).
66
+
67
+ ```sh
68
+ pnpm add radashi@beta
69
+ ```
70
+
71
+ Its changes are documented [here](https://github.com/radashi-org/radashi/blob/main/CHANGELOG.md#radashibeta). If there's no `radashi@beta` section in the changelog, it means no pull requests have been merged since the last stable release.
72
+
73
+ ### JSR.io
74
+
75
+ Radashi is also published to the [JSR registry](https://jsr.io/docs/why), which gives Radashi [its own page](https://jsr.io/@radashi-org/radashi).
76
+
77
+ ```sh
78
+ jsr add @radashi-org/radashi
79
+ ```
80
+
81
+ ```sh
82
+ deno add @radashi-org/radashi
83
+ ```
84
+
85
+ <img src="https://github.com/radashi-org/radashi/raw/main/.github/img/rule.png" width="100%" />
86
+
87
+ ## FAQ
88
+
89
+ - **“I need XYZ, but Radashi doesn‘t have it.”**
90
+ If you have a need not met by our current set of functions, we want to hear about it. [Start a discussion](https://github.com/orgs/radashi-org/discussions/new?category=ideas) so we can explore the idea together!
91
+
92
+ - **What does “community first” mean exactly?**
93
+ It means putting the community's needs first, leaning towards adding support for popular use cases, as opposed to being strictly minimalist. As such, your feedback is very welcome and we value your perspective. Specifically, we want you to [contribute your viewpoint](https://github.com/orgs/radashi-org/discussions/categories/rfcs?discussions_q=is%3Aopen+category%3ARFCs) to discussions in our RFCs category.
94
+
95
+ - **Are my contributions welcome?**
96
+ Yes! Pull requests are encouraged, but please keep them small and focused. Sweeping changes are discouraged and won't be merged (unless the rationale's been thoroughly discussed).
97
+
98
+ Please review _“The ethos of Radashi”_ before submitting a pull request:
99
+
100
+ <a href="https://github.com/orgs/radashi-org/discussions/20">
101
+ <img src="https://github.com/radashi-org/radashi/raw/main/.github/img/ethos-button.png" alt="The ethos of Radashi" width="250px" />
102
+ </a>
103
+
104
+ - **Can I help you maintain this?**
105
+ Yes! I'll add you as a contributor to the repository. You can review pull requests and even merge them. You can help with closing issues, too. Committing directly to the main branch is a privilege you can earn, as is publishing versions to NPM.
106
+
107
+ <a href="https://github.com/orgs/radashi-org/discussions/4">
108
+ <img src="https://github.com/radashi-org/radashi/raw/main/.github/img/apply-button.png" alt="Apply to join the Radashi team" width="250px" />
109
+ </a>
110
+
111
+ - **Is backwards compatibility a goal?**
112
+ Yes! We want the transition from `radash` to this library to be smooth. We'll make sure to avoid breaking changes. If any are made, they will be clearly documented at the bottom of this page.
113
+
114
+ - **Automatic releases**
115
+ To ensure contributions are quickly rolled out, we have the following automatic processes:
116
+
117
+ - **Beta releases**
118
+ Whenever the `main` branch receives a fix or feature, a beta release is automatically published to NPM at 5:00AM UTC.
119
+ Installing `radashi@beta` will always fetch the latest beta release. Beta releases are always audited by the Radashi team.
120
+
121
+ - **Preview releases**
122
+ When the _owner of a PR_ comments `/publish` (and nothing more), the PR is published to NPM under a version like `1.0.0-pr123.f7a9c3b` (i.e. `<latest version>-pr<PR number>.<commit SHA>`) and a tag like `pr123`. This allows the community to use the changes in the PR without waiting for the PR to be merged.
123
+
124
+ - ⚠️ **Beware:** Preview releases are not audited by the Radashi team. Always look at their
125
+ changes in the PR to ensure no malicious code was introduced.
126
+
127
+ <img src="https://github.com/radashi-org/radashi/raw/main/.github/img/rule.png" width="100%" />
128
+
28
129
  ## Contributing
29
130
 
30
- Contributions are welcome and appreciated! Check out the [contributing guide](./.github/contributing.md) before you dive in.
131
+ Contributions are welcome and appreciated! Check out the contributing guide before you dive in:
31
132
 
32
- ## Changelog
133
+ <a href="https://github.com/radashi-org/radashi/blob/main/.github/contributing.md">
134
+ <img src="https://github.com/radashi-org/radashi/raw/main/.github/img/contributing-button.png" alt="Contributing to Radashi" width="250px" />
135
+ </a>
33
136
 
34
- This section documents the changes between the original `radash` library and this fork.
137
+ <img src="https://github.com/radashi-org/radashi/raw/main/.github/img/rule.png" width="100%" />
35
138
 
36
- ### 12.1.0
139
+ &nbsp;
37
140
 
38
- - Initial release. No differences.
141
+ <div align="center">
142
+ <p align="center">
143
+ <img src="https://github.com/radashi-org/radashi/raw/main/.github/img/footer.png" alt="Radashi" width="100%" />
144
+ </p>
145
+ </div>