Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps): update devdependency @happy-dom/global-registrator to v16 #1200

Merged
merged 2 commits into from
Dec 29, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
136 changes: 136 additions & 0 deletions storage/framework/core/cron/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,136 @@
# Stacks SMS

Stacks SMS is driver system for sending SMS messages.

## ☘️ Features

- 📦 Send SMS

## 🤖 Usage

```bash
bun install -d @stacksjs/sms
```

You may now use it in your project:

```ts
import * as sms from '@stacksjs/sms'

/* Then choose a driver. E.g for twilio */
const notification = sms.twilio

notification.send(SMSOptions)

interface SMSOptions {
to: string
content: string
from?: string
attachments?: AttachmentOptions[]
id?: string
}
```

### Drivers

Drivers are configured with the following environment variables:

#### Twilio

```bash
TWILIO_ACCOUNT_SID=ACtest
TWILIO_AUTH_TOKEN=testtoken
TWILIO_FROM_NUMBER=+112345
TWILIO_TO_NUMBER=+145678
```

#### Nexmo

```bash
VONAGE_API_KEY=VN123
VONAGE_API_SECRET=testkey
VONAGE_FROM_NUMBER=+112345
```

#### Gupshup

```bash
GUPSHUP_USER_ID=GU123
GUPSHUP_PASSWORD=password
```

#### Plivo

```bash
PLIVO_ACCOUNT_ID=PA123
PLIVO_AUTH_TOKEN=testtoken
PLIVO_FROM_NUMBER=+112345
```

#### SMS77

```bash
SMS77_API_KEY=SA123
[email protected]
```

#### SNS

```bash
SMS77_API_KEY=SA123
[email protected]
```

#### Telnyx

```bash
TELNYX_API_KEY=TA123
TELNYX_MESSAGE_PROFILE_ID=testprofileid
[email protected]
```

#### Termii

```bash
TERMII_API_KEY=TermA123
[email protected]
```

Learn more in the docs.

## 🧪 Testing

```bash
bun test
```

## 📈 Changelog

Please see our [releases](https://github.com/stacksjs/stacks/releases) page for more information on what has changed recently.

## 🚜 Contributing

Please review the [Contributing Guide](https://github.com/stacksjs/contributing) for details.

## 🏝 Community

For help, discussion about best practices, or any other conversation that would benefit from being searchable:

[Discussions on GitHub](https://github.com/stacksjs/stacks/discussions)

For casual chit-chat with others using this package:

[Join the Stacks Discord Server](https://discord.gg/stacksjs)

## 🙏🏼 Credits

Many thanks to the following core technologies & people who have contributed to this package:

- [Chris Breuer](https://github.com/chrisbbreuer)
- [All Contributors](../../contributors)

## 📄 License

The MIT License (MIT). Please see [LICENSE](https://github.com/stacksjs/stacks/tree/main/LICENSE.md) for more information.

Made with 💙
27 changes: 27 additions & 0 deletions storage/framework/core/cron/build.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
import { dts } from 'bun-plugin-dtsx'
import { intro, outro } from '../build/src'

const { startTime } = await intro({
dir: import.meta.dir,
})

const result = await Bun.build({
entrypoints: ['./src/index.ts'],
outdir: './dist',
format: 'esm',
target: 'bun',
// sourcemap: 'linked',
minify: true,
plugins: [
dts({
root: './src',
outdir: './dist',
}),
],
})

await outro({
dir: import.meta.dir,
startTime,
result,
})
40 changes: 40 additions & 0 deletions storage/framework/core/cron/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
{
"name": "@stacksjs/cron",
"type": "module",
"version": "0.68.2",
"description": "The Stacks cron.",
"author": "Chris Breuer",
"contributors": ["Chris Breuer <[email protected]>"],
"license": "MIT",
"funding": "https://github.com/sponsors/chrisbbreuer",
"homepage": "https://github.com/stacksjs/stacks/tree/main/storage/framework/core/cron#readme",
"repository": {
"type": "git",
"url": "git+https://github.com/stacksjs/stacks.git",
"directory": "./storage/framework/core/cron"
},
"bugs": {
"url": "https://github.com/stacksjs/stacks/issues"
},
"keywords": ["cron", "croner", "jobs", "bun", "stacks"],
"exports": {
".": {
"import": "./dist/index.js"
},
"./*": {
"import": "./dist/*"
}
},
"module": "dist/index.js",
"types": "dist/index.d.ts",
"files": ["README.md", "dist"],
"scripts": {
"build": "bun build.ts",
"typecheck": "bun tsc --noEmit",
"prepublishOnly": "bun run build"
},
"devDependencies": {
"@stacksjs/development": "workspace:*",
"croner": "^9.0.0"
}
}
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
export * from './types'

export { Cron, CronDate, CronPattern, scheduledJobs } from 'croner'
11 changes: 11 additions & 0 deletions storage/framework/core/cron/src/types.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import type { CatchCallbackFn, CronOptions, ProtectCallbackFn } from 'croner'

export type {
CatchCallbackFn,
CronOptions,
ProtectCallbackFn,
}

export type IntRange<Min extends number, Max extends number> = number extends Min | Max
? never
: number | [Min | number, Max | number]
7 changes: 7 additions & 0 deletions storage/framework/core/cron/tests/cron.test.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
import { describe, expect, it } from 'bun:test'

describe('@stacksjs/cron', () => {
it('should pass', () => {
expect(true).toBe(true)
})
})
3 changes: 3 additions & 0 deletions storage/framework/core/cron/tsconfig.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"extends": "../tsconfig.build.json"
}
2 changes: 1 addition & 1 deletion storage/framework/core/scheduler/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
"prepublishOnly": "bun run build"
},
"dependencies": {
"croner": "^9.0.0"
"@stacksjs/cron": "workspace:*"
},
"devDependencies": {
"@stacksjs/actions": "workspace:*",
Expand Down
1 change: 0 additions & 1 deletion storage/framework/core/scheduler/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
// export { Schedule } from './schedule'

export * from './cron'
export * from './schedule'
export * from './types'

Expand Down
4 changes: 2 additions & 2 deletions storage/framework/core/scheduler/src/schedule.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import type { CatchCallbackFn, CronOptions } from './'
import type { CatchCallbackFn, CronOptions } from '@stacksjs/cron'
import type { TimedSchedule, Timezone, UntimedSchedule } from './types'
import { runAction } from '@stacksjs/actions'
import { log, runCommand } from '@stacksjs/cli'
import { Cron } from '@stacksjs/cron'
import { runJob } from '@stacksjs/queue'
import { Cron } from './'

/**
* This class is used to create and manage scheduled jobs. It provides methods for
Expand Down
13 changes: 1 addition & 12 deletions storage/framework/core/scheduler/src/types.ts
Original file line number Diff line number Diff line change
@@ -1,15 +1,4 @@
import type { CatchCallbackFn, CronOptions, ProtectCallbackFn } from 'croner'
import type { Cron } from './cron'

export type {
CatchCallbackFn,
CronOptions,
ProtectCallbackFn,
}

export type IntRange<Min extends number, Max extends number> = number extends Min | Max
? never
: number | [Min | number, Max | number]
import type { CatchCallbackFn, Cron } from '@stacksjs/cron'

// IANA Timezone
export type Timezone =
Expand Down
2 changes: 1 addition & 1 deletion storage/framework/core/testing/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@
"prepublishOnly": "bun run build"
},
"devDependencies": {
"@happy-dom/global-registrator": "^15.11.7",
"@happy-dom/global-registrator": "^16.0.1",
"@stacksjs/config": "workspace:*",
"@stacksjs/database": "workspace:*",
"@stacksjs/development": "workspace:*"
Expand Down
Loading