@stryke/fs 0.1.7 → 0.1.9

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.
package/README.md CHANGED
@@ -1,12 +1,75 @@
1
1
  <!-- START header -->
2
+ <!-- prettier-ignore-start -->
3
+ <!-- markdownlint-disable -->
4
+
5
+
6
+ <div align="center"><img src="https://pub-761b436209f44a4d886487c917806c08.r2.dev/storm-banner.gif" width="100%" alt="Storm Software" /></div>
7
+ <br />
8
+
9
+ <div align="center">
10
+ <b>
11
+ <a href="https://stormsoftware.com" target="_blank">Website</a> •
12
+ <a href="https://github.com/storm-software/stryke" target="_blank">GitHub</a> •
13
+ <a href="https://discord.gg/MQ6YVzakM5">Discord</a> • <a href="https://stormsoftware.com/projects/stryke/docs" target="_blank">Docs</a> • <a href="https://stormsoftware.com/contact" target="_blank">Contact</a> •
14
+ <a href="https://github.com/storm-software/stryke/issues/new?assignees=&labels=bug&template=bug-report.yml&title=Bug Report%3A+">Report a Bug</a>
15
+ </b>
16
+ </div>
17
+
18
+ <br />
19
+ This package is part of Storm Software's **🌩️ Stryke** monorepo. Stryke packages TypeScript utility packages with shared functionality common to many Storm Software applications.
20
+
21
+ <br />
22
+
23
+ <h3 align="center">💻 Visit <a href="https://stormsoftware.com" target="_blank">stormsoftware.com</a> to stay up to date with this developer</h3><br />
24
+
25
+ [![Version](https://img.shields.io/badge/version-0.1.9-1fb2a6.svg?style=for-the-badge&color=1fb2a6)](https://prettier.io/)&nbsp;[![Nx](https://img.shields.io/badge/Nx-17.0.2-lightgrey?style=for-the-badge&logo=nx&logoWidth=20&&color=1fb2a6)](http://nx.dev/)&nbsp;[![NextJs](https://img.shields.io/badge/Next.js-14.0.2-lightgrey?style=for-the-badge&logo=nextdotjs&logoWidth=20&color=1fb2a6)](https://nextjs.org/)&nbsp;[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg?style=for-the-badge&logo=commitlint&color=1fb2a6)](http://commitizen.github.io/cz-cli/)&nbsp;![Semantic-Release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg?style=for-the-badge&color=1fb2a6)&nbsp;[![documented with Fumadocs](https://img.shields.io/badge/documented_with-fumadocs-success.svg?style=for-the-badge&logo=readthedocs&color=1fb2a6)](https://fumadocs.vercel.app/)&nbsp;![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/storm-software/stryke/cr.yml?style=for-the-badge&logo=github-actions&color=1fb2a6)
26
+
27
+ > [!IMPORTANT] This repository, and the apps, libraries, and tools contained
28
+ > within, is still in it's initial development phase. As a result, bugs and
29
+ > issues are expected with it's usage. When the main development phase
30
+ > completes, a proper release will be performed, the packages will be availible
31
+ > through NPM (and other distributions), and this message will be removed.
32
+ > However, in the meantime, please feel free to report any issues you may come
33
+ > across.
34
+
35
+ <div align="center">
36
+ <b>Be sure to ⭐ this repository on <a href="https://github.com/storm-software/stryke" target="_blank">GitHub</a> so you can keep up to date on any daily progress!</b>
37
+ </div>
38
+
39
+ <br />
40
+
41
+
42
+ <!-- markdownlint-restore -->
43
+ <!-- prettier-ignore-end -->
44
+
2
45
  <!-- END header -->
3
46
 
4
47
  # Stryke - File System Utilities
5
48
 
6
49
  A package containing various file system utilities that expand the functionality
7
- of NodeJs\&#39;s \`fs\` module
50
+ of NodeJs's `fs` module. This package is intended to be used instead of other
51
+ modern file system libraries such as `fs-extra` or `fs-jetpack` as it provides a
52
+ more modern and functional approach to working with the file system.
8
53
 
9
54
  <!-- START doctoc -->
55
+ <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
56
+
57
+ ## Table of Contents
58
+
59
+ - [Installing](#installing)
60
+ - [Reduced Package Size](#reduced-package-size)
61
+ - [Development](#development)
62
+ - [Building](#building)
63
+ - [Running unit tests](#running-unit-tests)
64
+ - [Linting](#linting)
65
+ - [Storm Workspaces](#storm-workspaces)
66
+ - [Roadmap](#roadmap)
67
+ - [Support](#support)
68
+ - [License](#license)
69
+ - [Changelog](#changelog)
70
+ - [Contributing](#contributing)
71
+ - [Contributors](#contributors)
72
+
10
73
  <!-- END doctoc -->
11
74
 
12
75
  ## Installing
@@ -60,4 +123,173 @@ Run `nx test fs` to execute the unit tests via [Jest](https://jestjs.io).
60
123
  Run `nx lint fs` to run [ESLint](https://eslint.org/) on the package.
61
124
 
62
125
  <!-- START footer -->
126
+ <!-- prettier-ignore-start -->
127
+ <!-- markdownlint-disable -->
128
+
129
+
130
+ ## Storm Workspaces
131
+
132
+ Storm workspaces are built using
133
+ <a href="https://nx.dev/" target="_blank">Nx</a>, a set of extensible dev tools
134
+ for monorepos, which helps you develop like Google, Facebook, and Microsoft.
135
+ Building on top of Nx, the Open System provides a set of tools and patterns that
136
+ help you scale your monorepo to many teams while keeping the codebase
137
+ maintainable.
138
+
139
+ <div align="right">[ <a href="#table-of-contents">Back to top ▲</a> ]</div>
140
+ <br />
141
+
142
+ ## Roadmap
143
+
144
+ See the [open issues](https://github.com/storm-software/stryke/issues) for a
145
+ list of proposed features (and known issues).
146
+
147
+ - [Top Feature Requests](https://github.com/storm-software/stryke/issues?q=label%3Aenhancement+is%3Aopen+sort%3Areactions-%2B1-desc)
148
+ (Add your votes using the 👍 reaction)
149
+ - [Top Bugs](https://github.com/storm-software/stryke/issues?q=is%3Aissue+is%3Aopen+label%3Abug+sort%3Areactions-%2B1-desc)
150
+ (Add your votes using the 👍 reaction)
151
+ - [Newest Bugs](https://github.com/storm-software/stryke/issues?q=is%3Aopen+is%3Aissue+label%3Abug)
152
+
153
+ <div align="right">[ <a href="#table-of-contents">Back to top ▲</a> ]</div>
154
+ <br />
155
+
156
+ ## Support
157
+
158
+ Reach out to the maintainer at one of the following places:
159
+
160
+ - [Contact](https://stormsoftware.com/contact)
161
+ - [GitHub discussions](https://github.com/storm-software/stryke/discussions)
162
+ - <support@stormsoftware.com>
163
+
164
+ <div align="right">[ <a href="#table-of-contents">Back to top ▲</a> ]</div>
165
+ <br />
166
+
167
+ ## License
168
+
169
+ This project is licensed under the **Apache License 2.0**. Feel free to edit and
170
+ distribute this template as you like.
171
+
172
+ See [LICENSE](LICENSE) for more information.
173
+
174
+ <div align="right">[ <a href="#table-of-contents">Back to top ▲</a> ]</div>
175
+ <br />
176
+
177
+ ## Changelog
178
+
179
+ This project adheres to
180
+ [Semantic Versioning](https://semver.org/spec/v2.0.0.html). Every release, along
181
+ with the migration instructions, is documented in the [CHANGELOG](CHANGELOG.md)
182
+ file
183
+
184
+ <div align="right">[ <a href="#table-of-contents">Back to top ▲</a> ]</div>
185
+ <br />
186
+
187
+ ## Contributing
188
+
189
+ First off, thanks for taking the time to contribute! Contributions are what
190
+ makes the open-source community such an amazing place to learn, inspire, and
191
+ create. Any contributions you make will benefit everybody else and are **greatly
192
+ appreciated**.
193
+
194
+ Please try to create bug reports that are:
195
+
196
+ - _Reproducible._ Include steps to reproduce the problem.
197
+ - _Specific._ Include as much detail as possible: which version, what
198
+ environment, etc.
199
+ - _Unique._ Do not duplicate existing opened issues.
200
+ - _Scoped to a Single Bug._ One bug per report.
201
+
202
+ Please adhere to this project's [code of conduct](.github/CODE_OF_CONDUCT.md).
203
+
204
+ You can use
205
+ [markdownlint-cli](https://github.com/storm-software/stryke/markdownlint-cli) to
206
+ check for common markdown style inconsistency.
207
+
208
+ <div align="right">[ <a href="#table-of-contents">Back to top ▲</a> ]</div>
209
+ <br />
210
+
211
+ ## Contributors
212
+
213
+ Thanks goes to these wonderful people
214
+ ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
215
+
216
+ <!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
217
+
218
+ <table>
219
+ <tbody>
220
+ <tr>
221
+ <td align="center" valign="top" width="14.28%"><a href="http://www.sullypat.com/"><img src="https://avatars.githubusercontent.com/u/99053093?v=4?s=100" width="100px;" alt="Patrick Sullivan"/><br /><sub><b>Patrick Sullivan</b></sub></a><br /><a href="#design-sullivanpj" title="Design">🎨</a> <a href="https://github.com/storm-software/stryke/commits?author=sullivanpj" title="Code">💻</a> <a href="#tool-sullivanpj" title="Tools">🔧</a> <a href="https://github.com/storm-software/stryke/commits?author=sullivanpj" title="Documentation">📖</a> <a href="https://github.com/storm-software/stryke/commits?author=sullivanpj" title="Tests">⚠️</a></td>
222
+ <td align="center" valign="top" width="14.28%"><a href="https://tylerbenning.com/"><img src="https://avatars.githubusercontent.com/u/7265547?v=4?s=100" width="100px;" alt="Tyler Benning"/><br /><sub><b>Tyler Benning</b></sub></a><br /><a href="#design-tbenning" title="Design">🎨</a></td>
223
+ <td align="center" valign="top" width="14.28%"><a href="http://stormsoftware.com"><img src="https://avatars.githubusercontent.com/u/149802440?v=4?s=100" width="100px;" alt="Stormie"/><br /><sub><b>Stormie</b></sub></a><br /><a href="#maintenance-stormie-bot" title="Maintenance">🚧</a></td>
224
+ </tr>
225
+ </tbody>
226
+ <tfoot>
227
+ <tr>
228
+ <td align="center" size="13px" colspan="7">
229
+ <img src="https://raw.githubusercontent.com/all-contributors/all-contributors-cli/1b8533af435da9854653492b1327a23a4dbd0a10/assets/logo-small.svg" alt="All Contributors">
230
+ <a href="https://all-contributors.js.org/docs/en/bot/usage">Add your contributions</a>
231
+ </img>
232
+ </td>
233
+ </tr>
234
+ </tfoot>
235
+ </table>
236
+
237
+ <!-- ALL-CONTRIBUTORS-LIST:END -->
238
+
239
+ This project follows the
240
+ [all-contributors](https://github.com/all-contributors/all-contributors)
241
+ specification. Contributions of any kind welcome!
242
+
243
+ <div align="right">[ <a href="#table-of-contents">Back to top ▲</a> ]</div>
244
+ <br />
245
+
246
+ <hr />
247
+ <br />
248
+
249
+ <div align="center">
250
+ <img src="https://pub-761b436209f44a4d886487c917806c08.r2.dev/logo-banner.png" width="100%" alt="Storm Software" />
251
+ </div>
252
+ <br />
253
+
254
+ <div align="center">
255
+ <a href="https://stormsoftware.com" target="_blank">Website</a> • <a href="https://stormsoftware.com/contact" target="_blank">Contact</a> • <a href="https://linkedin.com/in/patrick-sullivan-865526b0" target="_blank">LinkedIn</a> • <a href="https://medium.com/@pat.joseph.sullivan" target="_blank">Medium</a> • <a href="https://github.com/storm-software" target="_blank">GitHub</a> • <a href="https://keybase.io/sullivanp" target="_blank">OpenPGP Key</a>
256
+ </div>
257
+
258
+ <div align="center">
259
+ <b>Fingerprint:</b> 1BD2 7192 7770 2549 F4C9 F238 E6AD C420 DA5C 4C2D
260
+ </div>
261
+ <br />
262
+
263
+ Storm Software is an open source software development organization and creator
264
+ of Acidic, StormStack and StormCloud.
265
+
266
+ Our mission is to make software development more accessible. Our ideal future is
267
+ one where anyone can create software without years of prior development
268
+ experience serving as a barrier to entry. We hope to achieve this via LLMs,
269
+ Generative AI, and intuitive, high-level data modeling/programming languages.
270
+
271
+ Join us on [Discord](https://discord.gg/MQ6YVzakM5) to chat with the team,
272
+ receive release notifications, ask questions, and get involved.
273
+
274
+ If this sounds interesting, and you would like to help us in creating the next
275
+ generation of development tools, please reach out on our
276
+ [website](https://stormsoftware.com/contact) or join our
277
+ [Slack channel](https://join.slack.com/t/storm-software/shared_invite/zt-2gsmk04hs-i6yhK_r6urq0dkZYAwq2pA)!
278
+
279
+ <br />
280
+
281
+ <div align="center"><a href="https://stormsoftware.com" target="_blank"><img src="https://pub-761b436209f44a4d886487c917806c08.r2.dev/icon-fill.png" alt="Storm Software" width="200px"/></a></div>
282
+ <br />
283
+ <div align="center"><a href="https://stormsoftware.com" target="_blank"><img src="https://pub-761b436209f44a4d886487c917806c08.r2.dev/visit-us-text.svg" alt="Visit us at stormsoftware.com" height="90px"/></a></div>
284
+
285
+ <br />
286
+
287
+ <div align="right">[ <a href="#table-of-contents">Back to top ▲</a> ]</div>
288
+ <br />
289
+ <br />
290
+
291
+
292
+ <!-- markdownlint-restore -->
293
+ <!-- prettier-ignore-end -->
294
+
63
295
  <!-- END footer -->
@@ -9,26 +9,23 @@ exports.writeJsonFileSync = writeJsonFileSync;
9
9
  var _stormJson = require("@stryke/json/storm-json");
10
10
  var _nodeFs = require("node:fs");
11
11
  var _promises = require("node:fs/promises");
12
- var _helpers = require("./helpers.cjs");
13
- const writeFileSync = (e, t, o) => {
12
+ const writeFileSync = (e, o, n) => {
14
13
  if (!e) throw new Error("No file path provided to write data");
15
- (0, _nodeFs.writeFileSync)(e, t ?? "", o);
14
+ (0, _nodeFs.writeFileSync)(e, o ?? "", n);
16
15
  },
17
- writeFile = (e, t, o) => {
16
+ writeFile = (e, o, n) => {
18
17
  if (!e) throw new Error("No file path provided to read data");
19
- return (0, _promises.writeFile)(e, t ?? "", o);
18
+ return (0, _promises.writeFile)(e, o ?? "", n);
20
19
  };
21
20
  exports.writeFile = writeFile;
22
21
  exports.writeFileSync = writeFileSync;
23
- function writeJsonFileSync(e, t, o) {
24
- (0, _helpers.createDirectorySync)(e);
25
- const n = _stormJson.StormJSON.stringifyJson(t, o);
26
- return writeFileSync(e, o?.appendNewLine ? `${n}
27
- ` : n);
22
+ function writeJsonFileSync(e, o, n) {
23
+ const t = _stormJson.StormJSON.stringifyJson(o, n);
24
+ return writeFileSync(e, n?.appendNewLine ? `${t}
25
+ ` : t);
28
26
  }
29
- async function writeJsonFile(e, t, o) {
30
- await (0, _helpers.createDirectory)(e);
31
- const n = _stormJson.StormJSON.stringifyJson(t, o);
32
- return writeFile(e, o?.appendNewLine ? `${n}
33
- ` : n);
27
+ async function writeJsonFile(e, o, n) {
28
+ const t = _stormJson.StormJSON.stringifyJson(o, n);
29
+ return writeFile(e, n?.appendNewLine ? `${t}
30
+ ` : t);
34
31
  }
@@ -1,3 +1,3 @@
1
- import{StormJSON as i}from"@stryke/json/storm-json";import{writeFileSync as r}from"node:fs";import{writeFile as s}from"node:fs/promises";import{createDirectory as p,createDirectorySync as d}from"./helpers";export const writeFileSync=(e,t,o)=>{if(!e)throw new Error("No file path provided to write data");r(e,t??"",o)},writeFile=(e,t,o)=>{if(!e)throw new Error("No file path provided to read data");return s(e,t??"",o)};export function writeJsonFileSync(e,t,o){d(e);const n=i.stringifyJson(t,o);return writeFileSync(e,o?.appendNewLine?`${n}
2
- `:n)}export async function writeJsonFile(e,t,o){await p(e);const n=i.stringifyJson(t,o);return writeFile(e,o?.appendNewLine?`${n}
3
- `:n)}
1
+ import{StormJSON as i}from"@stryke/json/storm-json";import{writeFileSync as r}from"node:fs";import{writeFile as s}from"node:fs/promises";export const writeFileSync=(e,o,n)=>{if(!e)throw new Error("No file path provided to write data");r(e,o??"",n)},writeFile=(e,o,n)=>{if(!e)throw new Error("No file path provided to read data");return s(e,o??"",n)};export function writeJsonFileSync(e,o,n){const t=i.stringifyJson(o,n);return writeFileSync(e,n?.appendNewLine?`${t}
2
+ `:t)}export async function writeJsonFile(e,o,n){const t=i.stringifyJson(o,n);return writeFile(e,n?.appendNewLine?`${t}
3
+ `:t)}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stryke/fs",
3
- "version": "0.1.7",
3
+ "version": "0.1.9",
4
4
  "type": "module",
5
5
  "description": "A package containing various file system utilities that expand the functionality of NodeJs's `fs` module.",
6
6
  "repository": {
@@ -9,7 +9,7 @@
9
9
  "directory": "packages/fs"
10
10
  },
11
11
  "private": false,
12
- "peerDependencies": { "nx": "^20.4.1" },
12
+ "peerDependencies": { "nx": "^20.4.6" },
13
13
  "peerDependenciesMeta": { "nx": { "optional": true } },
14
14
  "dependencies": {
15
15
  "@antfu/install-pkg": "^1.0.0",
@@ -19,11 +19,11 @@
19
19
  "semver": "7.7.1",
20
20
  "@stryke/json": ">=0.1.4",
21
21
  "@stryke/path": ">=0.1.4",
22
- "@stryke/types": ">=0.2.1"
22
+ "@stryke/types": ">=0.3.1"
23
23
  },
24
24
  "devDependencies": {
25
25
  "@types/node": "^22.13.1",
26
- "nx": "^20.4.1",
26
+ "nx": "^20.4.6",
27
27
  "tinyexec": "^0.3.2"
28
28
  },
29
29
  "publishConfig": { "access": "public" },