stacks 0.46.4 → 0.47.0

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 (132) hide show
  1. package/.gitignore +4 -0
  2. package/README.md +2 -1
  3. package/buddy/README.md +2 -1
  4. package/buddy/package.json +13 -4
  5. package/buddy/src/cli.ts +37 -20
  6. package/buddy/src/commands/create.ts +13 -13
  7. package/buddy/src/commands/key.ts +12 -2
  8. package/buddy/src/index.ts +3 -0
  9. package/components/vue/package.json +1 -1
  10. package/components/web/package.json +1 -1
  11. package/core/actions/package.json +5 -4
  12. package/core/actions/src/helpers/package-json.ts +1 -1
  13. package/core/actions/src/key-generate.ts +10 -0
  14. package/core/ai/package.json +3 -3
  15. package/core/alias/package.json +3 -3
  16. package/core/arrays/package.json +3 -3
  17. package/core/auth/package.json +3 -3
  18. package/core/build/package.json +3 -3
  19. package/core/cache/package.json +4 -4
  20. package/core/chat/README.md +89 -0
  21. package/core/chat/node_modules/.bin/maizzle +17 -0
  22. package/core/chat/node_modules/.bin/mkdist +17 -0
  23. package/{buddy/node_modules/.bin/pnpm → core/chat/node_modules/.bin/tsc} +2 -2
  24. package/core/chat/node_modules/.bin/tsserver +17 -0
  25. package/core/chat/package.json +62 -0
  26. package/core/chat/src/drivers/discord.ts +15 -0
  27. package/core/chat/src/drivers/slack.ts +22 -0
  28. package/core/chat/src/index.ts +2 -0
  29. package/core/chat/tests/example.test.ts +7 -0
  30. package/core/cli/package.json +3 -3
  31. package/core/cloud/package.json +3 -3
  32. package/core/collections/package.json +3 -3
  33. package/core/config/package.json +3 -3
  34. package/core/config/src/index.ts +1 -1
  35. package/core/dashboard/package.json +3 -3
  36. package/core/database/package.json +3 -3
  37. package/core/datetime/package.json +3 -3
  38. package/core/desktop/package.json +3 -3
  39. package/core/docs/package.json +3 -3
  40. package/core/domains/package.json +3 -3
  41. package/core/drivers/package.json +3 -3
  42. package/core/email/dist/utils/template.html +8 -0
  43. package/core/email/node_modules/.bin/maizzle +17 -0
  44. package/core/email/package.json +15 -3
  45. package/core/email/src/drivers/actions/send.ts +36 -0
  46. package/core/email/src/drivers/emailjs.ts +21 -0
  47. package/core/email/src/drivers/mailgun.ts +19 -0
  48. package/core/email/src/drivers/mailjet.ts +18 -0
  49. package/core/email/src/drivers/mandrill.ts +17 -0
  50. package/core/email/src/drivers/netcore.ts +17 -0
  51. package/core/email/src/drivers/nodemailer.ts +21 -0
  52. package/core/email/src/drivers/postmark.ts +17 -0
  53. package/core/email/src/drivers/sendgrid.ts +18 -0
  54. package/core/email/src/drivers/ses.ts +19 -0
  55. package/core/email/src/index.ts +9 -1
  56. package/core/email/src/utils/config.ts +5 -0
  57. package/core/email/src/utils/template.html +8 -0
  58. package/core/error-handling/package.json +3 -3
  59. package/core/events/README.md +76 -0
  60. package/core/events/build.config.ts +15 -0
  61. package/core/events/node_modules/.bin/mkdist +17 -0
  62. package/{buddy/node_modules/.bin/pnpx → core/events/node_modules/.bin/tsc} +2 -2
  63. package/core/events/node_modules/.bin/tsserver +17 -0
  64. package/core/events/package.json +55 -0
  65. package/core/events/src/index.ts +30 -0
  66. package/core/events/tests/example.test.ts +7 -0
  67. package/core/git/package.json +3 -3
  68. package/core/health/package.json +3 -3
  69. package/core/lint/package.json +3 -3
  70. package/core/logging/package.json +3 -3
  71. package/core/modules/package.json +3 -3
  72. package/core/notifications/package.json +24 -24
  73. package/core/objects/package.json +3 -3
  74. package/core/path/package.json +3 -3
  75. package/core/path/src/index.ts +1 -0
  76. package/core/payments/package.json +3 -3
  77. package/core/push/README.md +89 -0
  78. package/core/push/node_modules/.bin/maizzle +17 -0
  79. package/core/push/node_modules/.bin/mkdist +17 -0
  80. package/core/push/node_modules/.bin/tsc +17 -0
  81. package/core/push/node_modules/.bin/tsserver +17 -0
  82. package/core/push/package.json +60 -0
  83. package/core/push/src/drivers/expo.ts +19 -0
  84. package/core/push/src/drivers/fcm.ts +19 -0
  85. package/core/push/src/index.ts +2 -0
  86. package/core/push/tests/example.test.ts +7 -0
  87. package/core/realtime/package.json +3 -3
  88. package/core/router/package.json +3 -3
  89. package/core/search-engine/package.json +4 -4
  90. package/core/security/package.json +3 -3
  91. package/core/security/src/crypt.ts +2 -2
  92. package/core/server/package.json +3 -3
  93. package/core/sms/README.md +89 -0
  94. package/core/sms/node_modules/.bin/maizzle +17 -0
  95. package/core/sms/node_modules/.bin/mkdist +17 -0
  96. package/core/sms/node_modules/.bin/tsc +17 -0
  97. package/core/sms/node_modules/.bin/tsserver +17 -0
  98. package/core/sms/package.json +68 -0
  99. package/core/sms/src/drivers/gupshup.ts +21 -0
  100. package/core/sms/src/drivers/nexmo.ts +22 -0
  101. package/core/sms/src/drivers/plivo.ts +22 -0
  102. package/core/sms/src/drivers/sms77.ts +21 -0
  103. package/core/sms/src/drivers/sns.ts +22 -0
  104. package/core/sms/src/drivers/telnyx.ts +22 -0
  105. package/core/sms/src/drivers/termii.ts +21 -0
  106. package/core/sms/src/drivers/twilio.ts +22 -0
  107. package/core/sms/src/index.ts +8 -0
  108. package/core/sms/tests/example.test.ts +7 -0
  109. package/core/storage/package.json +3 -3
  110. package/core/strings/package.json +3 -3
  111. package/core/testing/node_modules/.bin/playwright +17 -0
  112. package/core/testing/package.json +4 -3
  113. package/core/testing/src/index.ts +2 -1
  114. package/core/types/node_modules/.bin/vitepress +2 -2
  115. package/core/types/package.json +5 -5
  116. package/core/types/src/app.ts +0 -9
  117. package/core/types/src/cli.ts +1 -0
  118. package/core/types/src/debug.ts +1 -1
  119. package/core/types/src/deploy.ts +1 -1
  120. package/core/types/src/events.ts +22 -0
  121. package/core/types/src/index.ts +1 -0
  122. package/core/types/src/notifications.ts +2 -4
  123. package/core/ui/node_modules/.bin/vue-tsc +2 -2
  124. package/core/ui/package.json +4 -4
  125. package/core/utils/package.json +6 -6
  126. package/core/x-ray/package.json +3 -3
  127. package/functions/package.json +1 -1
  128. package/package.json +6 -4
  129. package/tests/feature/example.spec.ts +20 -0
  130. package/tests/unit/example.test.ts +7 -0
  131. package/tsconfig.json +2 -0
  132. package/core/actions/src/key.ts +0 -48
package/.gitignore CHANGED
@@ -10,3 +10,7 @@ core/build/entries/*.ts
10
10
  **/dist/**/*.d.ts
11
11
  **/dist/**/*.d.cts
12
12
  **/dist/**/*.d.mts
13
+ node_modules/
14
+ /test-results/
15
+ /playwright-report/
16
+ /playwright/.cache/
package/README.md CHANGED
@@ -50,6 +50,7 @@ _Develop serverless (or server) functions with countless helpers to build scalab
50
50
  - ⚙️ **CLIs** _create beautiful CLIs for Linux, Windows, and Mac—without requirements_
51
51
  - 📀 **Database** _MySQL, Postgres, PlanetScale, Supabase, Prisma, ..._
52
52
  - 👾 **Errors** _native type-safe error handling_
53
+ - 🗓️ **Events** _functional event (front & backend) communication_
53
54
  - 📢 **Notifications** _emails, SMSs, direct, and push notifications & webhooks_
54
55
  - 💳 **Payments** _unified API for one-off & subscription billing methods for Stripe_
55
56
  - ⚙️ **Queues** _run your heavy workload in the background_
@@ -114,7 +115,7 @@ npx stacks new my-project
114
115
  ```
115
116
 
116
117
  > **Note**
117
- > pnpm 7.18 or higher required. _Run the setup script & 🐶 Buddy will set you up. He barks otherwise._
118
+ > pnpm 7.20 or higher required. _Run the setup script & 🐶 Buddy will set you up. He barks otherwise._
118
119
 
119
120
  ## 🤖 Usage
120
121
 
package/buddy/README.md CHANGED
@@ -50,6 +50,7 @@ _Develop serverless (or server) functions with countless helpers to build scalab
50
50
  - ⚙️ **CLIs** _create beautiful CLIs for Linux, Windows, and Mac—without requirements_
51
51
  - 📀 **Database** _MySQL, Postgres, PlanetScale, Supabase, Prisma, ..._
52
52
  - 👾 **Errors** _native type-safe error handling_
53
+ - 🗓️ **Events** _functional event (front & backend) communication_
53
54
  - 📢 **Notifications** _emails, SMSs, direct, and push notifications & webhooks_
54
55
  - 💳 **Payments** _unified API for one-off & subscription billing methods for Stripe_
55
56
  - ⚙️ **Queues** _run your heavy workload in the background_
@@ -114,7 +115,7 @@ npx stacks new my-project
114
115
  ```
115
116
 
116
117
  > **Note**
117
- > pnpm 7.18 or higher required. _Run the setup script & 🐶 Buddy will set you up. He barks otherwise._
118
+ > pnpm 7.20 or higher required. _Run the setup script & 🐶 Buddy will set you up. He barks otherwise._
118
119
 
119
120
  ## 🤖 Usage
120
121
 
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@stacksjs/buddy",
3
3
  "type": "module",
4
- "version": "0.46.4",
5
- "packageManager": "pnpm@7.19.0",
4
+ "version": "0.47.0",
5
+ "packageManager": "pnpm@7.20.0",
6
6
  "description": "Meet Buddy. The Stacks runtime.",
7
7
  "author": "Chris Breuer",
8
8
  "license": "MIT",
@@ -51,7 +51,7 @@
51
51
  ],
52
52
  "engines": {
53
53
  "node": ">=v18.12.1",
54
- "pnpm": ">=7.19.0"
54
+ "pnpm": ">=7.20.0"
55
55
  },
56
56
  "scripts": {
57
57
  "buddy": "esno ./src/cli.ts",
@@ -144,23 +144,33 @@
144
144
  },
145
145
  "peerDependencies": {
146
146
  "@stacksjs/actions": "workspace:*",
147
+ "@stacksjs/ai": "workspace:*",
147
148
  "@stacksjs/alias": "workspace:*",
148
149
  "@stacksjs/arrays": "workspace:*",
150
+ "@stacksjs/auth": "workspace:*",
149
151
  "@stacksjs/build": "workspace:*",
152
+ "@stacksjs/cache": "workspace:*",
150
153
  "@stacksjs/cli": "workspace:*",
151
154
  "@stacksjs/cloud": "workspace:*",
152
155
  "@stacksjs/collections": "workspace:*",
153
156
  "@stacksjs/config": "workspace:*",
154
157
  "@stacksjs/docs": "workspace:*",
155
158
  "@stacksjs/domains": "workspace:*",
159
+ "@stacksjs/email": "workspace:*",
156
160
  "@stacksjs/error-handling": "workspace:*",
161
+ "@stacksjs/events": "workspace:*",
157
162
  "@stacksjs/git": "workspace:*",
163
+ "@stacksjs/health": "workspace:*",
158
164
  "@stacksjs/lint": "workspace:*",
159
165
  "@stacksjs/logging": "workspace:*",
160
166
  "@stacksjs/modules": "workspace:*",
167
+ "@stacksjs/notifications": "workspace:*",
161
168
  "@stacksjs/objects": "workspace:*",
162
169
  "@stacksjs/path": "workspace:*",
170
+ "@stacksjs/payments": "workspace:*",
171
+ "@stacksjs/realtime": "workspace:*",
163
172
  "@stacksjs/router": "workspace:*",
173
+ "@stacksjs/search-engine": "workspace:*",
164
174
  "@stacksjs/security": "workspace:*",
165
175
  "@stacksjs/server": "workspace:*",
166
176
  "@stacksjs/storage": "workspace:*",
@@ -172,7 +182,6 @@
172
182
  },
173
183
  "devDependencies": {
174
184
  "only-allow": "^1.1.1",
175
- "pnpm": ">=7.19.0",
176
185
  "typescript": "^4.9.4",
177
186
  "unbuild": "^1.0.2"
178
187
  },
package/buddy/src/cli.ts CHANGED
@@ -1,7 +1,10 @@
1
1
  #!/usr/bin/env node
2
+ import { runAction } from '@stacksjs/actions'
2
3
  import { command, log } from '@stacksjs/cli'
3
- import { isProjectCreated } from '@stacksjs/utils'
4
- import { version } from '../package.json' assert { type: 'json' }
4
+ import { env, isProjectCreated } from '@stacksjs/utils'
5
+ import { projectPath } from '@stacksjs/path'
6
+ import { Action } from '@stacksjs/types'
7
+ import { version } from '../package.json'
5
8
  import { build, changelog, clean, commit, create, dev, example, fresh, generate, key, lint, make, preinstall, prepublish, release, setup, test, update } from './commands'
6
9
 
7
10
  const cli = command('stacks')
@@ -11,30 +14,44 @@ process.on('uncaughtException', errorHandler)
11
14
  process.on('unhandledRejection', errorHandler)
12
15
 
13
16
  async function main() {
14
- // before running any commands, check if the project is already initialized
17
+ // the following commands are not dependent on the project being initialized
15
18
  await setup(cli)
16
19
  await key(cli)
17
20
 
21
+ // before running any commands, check if the project is already initialized
18
22
  if (!await isProjectCreated()) {
23
+ if (env('APP_ENV') !== 'production') {
24
+ log.info('Project not initialized, generating application key...')
25
+ const result = await runAction(Action.KeyGenerate, { cwd: projectPath(), debug: true })
26
+ if (result.isErr()) {
27
+ log.error(result.error)
28
+ process.exit()
29
+ }
30
+ log.info('Application key generated.')
31
+ }
32
+ else {
33
+ log.error('Please run `buddy key:generate` to generate an application key.')
34
+ process.exit()
35
+ }
36
+
19
37
  await create(cli)
20
38
  }
21
- else {
22
- await preinstall(cli)
23
- await prepublish(cli)
24
- await update(cli)
25
- await generate(cli)
26
- await dev(cli)
27
- await build(cli)
28
- await changelog(cli)
29
- await clean(cli)
30
- await commit(cli)
31
- await fresh(cli)
32
- await lint(cli)
33
- await release(cli)
34
- await make(cli)
35
- await example(cli)
36
- await test(cli)
37
- }
39
+
40
+ await preinstall(cli)
41
+ await prepublish(cli)
42
+ await update(cli)
43
+ await generate(cli)
44
+ await dev(cli)
45
+ await build(cli)
46
+ await changelog(cli)
47
+ await clean(cli)
48
+ await commit(cli)
49
+ await fresh(cli)
50
+ await lint(cli)
51
+ await release(cli)
52
+ await make(cli)
53
+ await example(cli)
54
+ await test(cli)
38
55
 
39
56
  cli.help()
40
57
  cli.version(version)
@@ -3,8 +3,8 @@ import { bold, cyan, green, intro, link, log, runCommand } from '@stacksjs/cli'
3
3
  import { useOnline } from '@stacksjs/utils'
4
4
  import { isFolder } from '@stacksjs/storage'
5
5
  import { resolve } from '@stacksjs/path'
6
- import { ExitCode } from '@stacksjs/types'
7
- import { generate as generateAppKey } from '@stacksjs/actions/key'
6
+ import { Action, ExitCode } from '@stacksjs/types'
7
+ import { runAction } from '@stacksjs/actions'
8
8
 
9
9
  async function create(buddy: CLI) {
10
10
  const descriptions = {
@@ -100,26 +100,26 @@ async function ensureEnv(path: string, options: CreateOptions) {
100
100
 
101
101
  async function install(path: string, options: CreateOptions) {
102
102
  log.info('Installing & setting up Stacks')
103
- const res1 = await runCommand('pnpm install', { ...options, cwd: path })
103
+ let result = await runCommand('pnpm install', { ...options, cwd: path })
104
104
 
105
- if (res1.isErr()) {
106
- log.error(res1.error)
107
- process.exit(ExitCode.FatalError)
105
+ if (result.isErr()) {
106
+ log.error(result.error)
107
+ process.exit()
108
108
  }
109
109
 
110
- const res2 = await runCommand('cp .env.example .env', { ...options, cwd: path })
110
+ result = await runCommand('cp .env.example .env', { ...options, cwd: path })
111
111
 
112
- if (res2.isErr()) {
113
- log.error(res2.error)
112
+ if (result.isErr()) {
113
+ log.error(result.error)
114
114
  process.exit(ExitCode.FatalError)
115
115
  }
116
116
 
117
- await generateAppKey(options)
117
+ await runAction(Action.KeyGenerate, { ...options, cwd: path })
118
118
 
119
- const res3 = await runCommand('git init', { ...options, cwd: path })
119
+ result = await runCommand('git init', { ...options, cwd: path })
120
120
 
121
- if (res3.isErr()) {
122
- log.error(res3.error)
121
+ if (result.isErr()) {
122
+ log.error(result.error)
123
123
  process.exit(ExitCode.FatalError)
124
124
  }
125
125
 
@@ -1,5 +1,7 @@
1
1
  import type { CLI, KeyOptions } from '@stacksjs/types'
2
- import { generate as generateAppKey } from '@stacksjs/actions/key'
2
+ import { intro, log, outro } from '@stacksjs/cli'
3
+ import { Action } from '@stacksjs/types'
4
+ import { runAction } from '@stacksjs/actions'
3
5
 
4
6
  async function key(buddy: CLI) {
5
7
  const descriptions = {
@@ -11,7 +13,15 @@ async function key(buddy: CLI) {
11
13
  .command('key:generate', descriptions.command)
12
14
  .option('--debug', descriptions.debug, { default: false })
13
15
  .action(async (options: KeyOptions) => {
14
- await generateAppKey(options)
16
+ const startTime = intro('buddy key:generate')
17
+ const result = await runAction(Action.KeyGenerate, options)
18
+
19
+ if (result.isErr()) {
20
+ log.error('Failed to set random application key.', result.error)
21
+ process.exit()
22
+ }
23
+
24
+ outro('Set random application key.', { startTime })
15
25
  })
16
26
  }
17
27
 
@@ -1,11 +1,13 @@
1
1
  export * from './commands'
2
2
  export * from '@stacksjs/alias'
3
+ export * from '@stacksjs/ai'
3
4
  export * from '@stacksjs/arrays'
4
5
  export * from '@stacksjs/build'
5
6
  export * from '@stacksjs/cli'
6
7
  export * from '@stacksjs/cloud'
7
8
  export * from '@stacksjs/collections'
8
9
  export * from '@stacksjs/config'
10
+ export * from '@stacksjs/events'
9
11
  // export * from '@stacksjs/desktop'
10
12
  // export * from '@stacksjs/notifications'
11
13
  export * from '@stacksjs/storage'
@@ -16,3 +18,4 @@ export * from '@stacksjs/types'
16
18
  export * from '@stacksjs/objects'
17
19
  export * from '@stacksjs/path'
18
20
  export * from '@stacksjs/ui'
21
+ // export * from '@stacksjs/utils'
@@ -2,7 +2,7 @@
2
2
  "name": "hello-world-vue",
3
3
  "type": "module",
4
4
  "version": "",
5
- "packageManager": "pnpm@7.19.0",
5
+ "packageManager": "pnpm@7.20.0",
6
6
  "description": "Your Vue component library description",
7
7
  "author": "Chris Breuer",
8
8
  "license": "MIT",
@@ -2,7 +2,7 @@
2
2
  "name": "hello-world-elements",
3
3
  "type": "module",
4
4
  "version": "",
5
- "packageManager": "pnpm@7.19.0",
5
+ "packageManager": "pnpm@7.20.0",
6
6
  "description": "Your framework agnostic web component library description.",
7
7
  "author": "Chris Breuer",
8
8
  "license": "MIT",
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@stacksjs/actions",
3
3
  "type": "module",
4
- "version": "0.46.4",
5
- "packageManager": "pnpm@7.19.0",
4
+ "version": "0.47.0",
5
+ "packageManager": "pnpm@7.20.0",
6
6
  "description": "The Stacks actions.",
7
7
  "author": "Chris Breuer",
8
8
  "license": "MIT",
@@ -37,7 +37,7 @@
37
37
  ],
38
38
  "engines": {
39
39
  "node": ">=v18.12.1",
40
- "pnpm": ">=7.19.0"
40
+ "pnpm": ">=7.20.0"
41
41
  },
42
42
  "scripts": {
43
43
  "build": "mkdist -d",
@@ -50,11 +50,12 @@
50
50
  "@stacksjs/config": "workspace:*",
51
51
  "@stacksjs/logging": "workspace:*",
52
52
  "@stacksjs/path": "workspace:*",
53
+ "@stacksjs/security": "workspace:*",
53
54
  "@stacksjs/storage": "workspace:*",
54
55
  "@stacksjs/types": "workspace:*",
55
56
  "@stacksjs/utils": "workspace:*",
56
57
  "markdown-it": "^13.0.1",
57
- "vue-component-meta": "^1.0.16"
58
+ "vue-component-meta": "^1.0.18"
58
59
  },
59
60
  "dependencies": {
60
61
  "@stacksjs/strings": "workspace:*",
@@ -2,7 +2,7 @@ import { log } from '@stacksjs/logging'
2
2
  import { writeTextFile } from '@stacksjs/storage'
3
3
  import { packageJsonPath } from '@stacksjs/path'
4
4
  import { library } from '@stacksjs/config'
5
- import { packageManager } from '../../package.json' assert { type: 'json' }
5
+ import { packageManager } from '../../package.json'
6
6
 
7
7
  export async function generatePackageJson(type: 'vue-components' | 'web-components' | 'functions') {
8
8
  let name, description, directory, keywords, config, prettyName
@@ -0,0 +1,10 @@
1
+ import { runCommand } from '@stacksjs/cli'
2
+ import { isFile } from '@stacksjs/storage'
3
+ import { setEnvValue } from '@stacksjs/utils'
4
+ import { options } from 'kolorist'
5
+ import { generateAppKey } from '@stacksjs/security'
6
+
7
+ if (!isFile('.env'))
8
+ await runCommand('cp .env.example .env', { ...options, cwd: projectPath() })
9
+
10
+ await setEnvValue('APP_KEY', await generateAppKey())
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@stacksjs/ai",
3
3
  "type": "module",
4
- "version": "0.46.4",
5
- "packageManager": "pnpm@7.19.0",
4
+ "version": "0.47.0",
5
+ "packageManager": "pnpm@7.20.0",
6
6
  "description": "Stacks Artificial Intelligence.",
7
7
  "author": "Chris Breuer",
8
8
  "license": "MIT",
@@ -35,7 +35,7 @@
35
35
  ],
36
36
  "engines": {
37
37
  "node": ">=v18.12.1",
38
- "pnpm": ">=7.19.0"
38
+ "pnpm": ">=7.20.0"
39
39
  },
40
40
  "scripts": {
41
41
  "build": "mkdist -d",
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@stacksjs/alias",
3
3
  "type": "module",
4
- "version": "0.46.4",
5
- "packageManager": "pnpm@7.19.0",
4
+ "version": "0.47.0",
5
+ "packageManager": "pnpm@7.20.0",
6
6
  "description": "The Stacks aliases.",
7
7
  "author": "Chris Breuer",
8
8
  "license": "MIT",
@@ -32,7 +32,7 @@
32
32
  ],
33
33
  "engines": {
34
34
  "node": ">=v18.12.1",
35
- "pnpm": ">=7.19.0"
35
+ "pnpm": ">=7.20.0"
36
36
  },
37
37
  "scripts": {
38
38
  "build": "mkdist -d",
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@stacksjs/arrays",
3
3
  "type": "module",
4
- "version": "0.46.4",
5
- "packageManager": "pnpm@7.19.0",
4
+ "version": "0.47.0",
5
+ "packageManager": "pnpm@7.20.0",
6
6
  "description": "The Stacks array utilities.",
7
7
  "author": "Chris Breuer",
8
8
  "license": "MIT",
@@ -36,7 +36,7 @@
36
36
  ],
37
37
  "engines": {
38
38
  "node": ">=v18.12.1",
39
- "pnpm": ">=7.19.0"
39
+ "pnpm": ">=7.20.0"
40
40
  },
41
41
  "scripts": {
42
42
  "build": "mkdist -d",
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@stacksjs/auth",
3
3
  "type": "module",
4
- "version": "0.46.4",
5
- "packageManager": "pnpm@7.19.0",
4
+ "version": "0.47.0",
5
+ "packageManager": "pnpm@7.20.0",
6
6
  "description": "A more simplistic way to authenticate.",
7
7
  "author": "Chris Breuer",
8
8
  "license": "MIT",
@@ -33,7 +33,7 @@
33
33
  ],
34
34
  "engines": {
35
35
  "node": ">=v18.12.1",
36
- "pnpm": ">=7.19.0"
36
+ "pnpm": ">=7.20.0"
37
37
  },
38
38
  "scripts": {
39
39
  "build": "mkdist -d",
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@stacksjs/build",
3
3
  "type": "module",
4
- "version": "0.46.4",
5
- "packageManager": "pnpm@7.19.0",
4
+ "version": "0.47.0",
5
+ "packageManager": "pnpm@7.20.0",
6
6
  "description": "The Stacks framework build tools and configurations.",
7
7
  "author": "Chris Breuer",
8
8
  "license": "MIT",
@@ -35,7 +35,7 @@
35
35
  ],
36
36
  "engines": {
37
37
  "node": ">=v18.12.1",
38
- "pnpm": ">=7.19.0"
38
+ "pnpm": ">=7.20.0"
39
39
  },
40
40
  "scripts": {
41
41
  "build": "mkdist -d",
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@stacksjs/cache",
3
3
  "type": "module",
4
- "version": "0.46.4",
5
- "packageManager": "pnpm@7.19.0",
4
+ "version": "0.47.0",
5
+ "packageManager": "pnpm@7.20.0",
6
6
  "description": "The Stacks way to test.",
7
7
  "author": "Chris Breuer",
8
8
  "license": "MIT",
@@ -36,7 +36,7 @@
36
36
  ],
37
37
  "engines": {
38
38
  "node": ">=v18.12.1",
39
- "pnpm": ">=7.19.0"
39
+ "pnpm": ">=7.20.0"
40
40
  },
41
41
  "scripts": {
42
42
  "build": "mkdist -d",
@@ -45,7 +45,7 @@
45
45
  "typecheck": "tsc --noEmit"
46
46
  },
47
47
  "peerDependencies": {
48
- "@aws-sdk/client-dynamodb": "^3.236.0",
48
+ "@aws-sdk/client-dynamodb": "^3.238.0",
49
49
  "@stacksjs/config": "workspace:*",
50
50
  "@types/memjs": "^1.2.4",
51
51
  "memcached": "^2.2.2",
@@ -0,0 +1,89 @@
1
+ # Stacks Notifications
2
+
3
+ wip
4
+
5
+ ## ☘️ Features
6
+
7
+ wip
8
+
9
+ - ⚡️
10
+
11
+ wip
12
+
13
+ ## 🤖 Usage
14
+
15
+ wip
16
+
17
+ ```bash
18
+ pnpm i -D @stacksjs/notifications
19
+ ```
20
+
21
+ Now, you can use it in your project:
22
+
23
+ ```js
24
+ import notifications from '@stacksjs/notifications'
25
+
26
+ // wip
27
+ ```
28
+
29
+ ## 🤖 Drivers
30
+
31
+ ### Email
32
+
33
+ - Sendgrid
34
+ - Mailgun
35
+ - Mailjet
36
+ - Netcore
37
+ - Nodemailer
38
+ - Post Mark
39
+ - Ses
40
+ - Mandrill
41
+ - EmailJS
42
+
43
+ ### SMS
44
+
45
+ - Twilio
46
+ - Nexmo
47
+ - Gupshup
48
+ - Plivo
49
+ - SMS77
50
+ - SNS
51
+ - Telnyx
52
+ - Termii
53
+
54
+ ### Chat
55
+
56
+ - Discord
57
+ - Slack
58
+
59
+ Learn more in the docs.
60
+
61
+ ## 🧪 Testing
62
+
63
+ ```bash
64
+ pnpm test
65
+ ```
66
+
67
+ ## 📈 Changelog
68
+
69
+ Please see our [releases](https://github.com/stacksjs/stacks/releases) page for more information on what has changed recently.
70
+
71
+ ## 💪🏼 Contributing
72
+
73
+ Please review the [Contributing Guide](https://github.com/stacksjs/contributing) for details.
74
+
75
+ ## 🏝 Community
76
+
77
+ For help, discussion about best practices, or any other conversation that would benefit from being searchable:
78
+
79
+ [Discussions on GitHub](https://github.com/stacksjs/stacks/discussions)
80
+
81
+ For casual chit-chat with others using this package:
82
+
83
+ [Join the Stacks Discord Server](https://discord.ow3.org)
84
+
85
+ ## 📄 License
86
+
87
+ The MIT License (MIT). Please see [LICENSE](https://github.com/stacksjs/stacks/tree/main/LICENSE.md) for more information.
88
+
89
+ Made with ❤️
@@ -0,0 +1,17 @@
1
+ #!/bin/sh
2
+ basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
+
4
+ case `uname` in
5
+ *CYGWIN*) basedir=`cygpath -w "$basedir"`;;
6
+ esac
7
+
8
+ if [ -z "$NODE_PATH" ]; then
9
+ export NODE_PATH="/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
10
+ else
11
+ export NODE_PATH="$NODE_PATH:/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
12
+ fi
13
+ if [ -x "$basedir/node" ]; then
14
+ exec "$basedir/node" "$basedir/../../../../../node_modules/.pnpm/@maizzle+framework@4.3.1_glob@7.2.3/node_modules/@maizzle/framework/bin/maizzle" "$@"
15
+ else
16
+ exec node "$basedir/../../../../../node_modules/.pnpm/@maizzle+framework@4.3.1_glob@7.2.3/node_modules/@maizzle/framework/bin/maizzle" "$@"
17
+ fi
@@ -0,0 +1,17 @@
1
+ #!/bin/sh
2
+ basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
+
4
+ case `uname` in
5
+ *CYGWIN*) basedir=`cygpath -w "$basedir"`;;
6
+ esac
7
+
8
+ if [ -z "$NODE_PATH" ]; then
9
+ export NODE_PATH="/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
10
+ else
11
+ export NODE_PATH="$NODE_PATH:/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
12
+ fi
13
+ if [ -x "$basedir/node" ]; then
14
+ exec "$basedir/node" "$basedir/../../../../../node_modules/.pnpm/mkdist@1.0.0_typescript@4.9.4/node_modules/mkdist/dist/cli.cjs" "$@"
15
+ else
16
+ exec node "$basedir/../../../../../node_modules/.pnpm/mkdist@1.0.0_typescript@4.9.4/node_modules/mkdist/dist/cli.cjs" "$@"
17
+ fi
@@ -11,7 +11,7 @@ else
11
11
  export NODE_PATH="$NODE_PATH:/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
12
12
  fi
13
13
  if [ -x "$basedir/node" ]; then
14
- exec "$basedir/node" "$basedir/../../../../node_modules/.pnpm/pnpm@7.19.0/node_modules/pnpm/bin/pnpm.cjs" "$@"
14
+ exec "$basedir/node" "$basedir/../../../../../node_modules/.pnpm/typescript@4.9.4/node_modules/typescript/bin/tsc" "$@"
15
15
  else
16
- exec node "$basedir/../../../../node_modules/.pnpm/pnpm@7.19.0/node_modules/pnpm/bin/pnpm.cjs" "$@"
16
+ exec node "$basedir/../../../../../node_modules/.pnpm/typescript@4.9.4/node_modules/typescript/bin/tsc" "$@"
17
17
  fi
@@ -0,0 +1,17 @@
1
+ #!/bin/sh
2
+ basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
+
4
+ case `uname` in
5
+ *CYGWIN*) basedir=`cygpath -w "$basedir"`;;
6
+ esac
7
+
8
+ if [ -z "$NODE_PATH" ]; then
9
+ export NODE_PATH="/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
10
+ else
11
+ export NODE_PATH="$NODE_PATH:/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
12
+ fi
13
+ if [ -x "$basedir/node" ]; then
14
+ exec "$basedir/node" "$basedir/../../../../../node_modules/.pnpm/typescript@4.9.4/node_modules/typescript/bin/tsserver" "$@"
15
+ else
16
+ exec node "$basedir/../../../../../node_modules/.pnpm/typescript@4.9.4/node_modules/typescript/bin/tsserver" "$@"
17
+ fi