Skip to content

Commit c05d3cf

Browse files
committed
feat: Add preview and bulk generation features to running numbers
1 parent a9c603f commit c05d3cf

File tree

7 files changed

+851
-5
lines changed

7 files changed

+851
-5
lines changed

README.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,14 @@ Generate sequential running numbers for your Laravel application. Perfect for in
1818
- 🎯 **Custom Starting Numbers** - Start sequences from any number
1919
- 📊 **Range Management** - Set maximum limits with exception handling
2020
- 📅 **Date-Based Formats** - Built-in date presenters for time-organized numbers
21+
- 👁️ **Preview Mode** - Preview next numbers without incrementing
22+
- 📦 **Bulk Generation** - Generate multiple numbers at once atomically
2123
- ⚙️ **Configurable** - Customize padding, formatting, and behavior
2224
- 🆔 **UUID Support** - Built-in UUID support for running number records
2325
- 🏷️ **Native PHP Enums** - Modern PHP 8.1+ enum support with Traitify
2426
- 🔧 **Extensible** - Custom generators and presenters via contracts
2527
- 🚀 **Developer Friendly** - Helper functions, facades, and excellent IDE support
26-
-**Well Tested** - 51 tests with 124 assertions
28+
-**Well Tested** - 64 tests with 166 assertions
2729
- 📦 **Wide Compatibility** - Laravel 9-12 & PHP 8.1-8.4
2830

2931
## 📦 Installation
@@ -129,6 +131,7 @@ Comprehensive documentation is available in the [docs](docs/) directory:
129131
- [Multiple Sequences](docs/04-advanced-features/02-multiple-sequences.md)
130132
- [Custom Starting Numbers](docs/04-advanced-features/03-custom-starting-numbers.md)
131133
- [Number Range Management](docs/04-advanced-features/04-number-range-management.md)
134+
- [Preview & Bulk Generation](docs/04-advanced-features/05-preview-and-batch.md)
132135
- [Upgrade Guide](docs/06-upgrade-guide.md)
133136
- [API Reference](docs/README.md)
134137

config/running-number.php

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22

33
use CleaniqueCoders\RunningNumber\Enums\Organization;
44
use CleaniqueCoders\RunningNumber\Enums\ResetPeriod;
5+
use CleaniqueCoders\RunningNumber\Generator;
6+
use CleaniqueCoders\RunningNumber\Models\RunningNumber;
7+
use CleaniqueCoders\RunningNumber\Presenter;
58

69
return [
710
/*
@@ -21,7 +24,7 @@
2124

2225
'types' => Organization::values(),
2326

24-
'model' => \CleaniqueCoders\RunningNumber\Models\RunningNumber::class,
27+
'model' => RunningNumber::class,
2528

2629
/*
2730
|--------------------------------------------------------------------------
@@ -33,7 +36,7 @@
3336
|
3437
*/
3538

36-
'generator' => \CleaniqueCoders\RunningNumber\Generator::class,
39+
'generator' => Generator::class,
3740

3841
/*
3942
|--------------------------------------------------------------------------
@@ -45,7 +48,7 @@
4548
|
4649
*/
4750

48-
'presenter' => \CleaniqueCoders\RunningNumber\Presenter::class,
51+
'presenter' => Presenter::class,
4952

5053
/*
5154
|--------------------------------------------------------------------------

docs/03-usage/02-generator-class.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,27 @@ Generate the running number:
103103
$number = $generator->generate();
104104
```
105105

106+
### `preview()`
107+
108+
Preview the next number without incrementing:
109+
110+
```php
111+
$preview = $generator->preview();
112+
```
113+
114+
See [Preview & Bulk Generation](../04-advanced-features/05-preview-and-batch.md#preview-mode) for details.
115+
116+
### `generateBatch(int $count)`
117+
118+
Generate multiple numbers at once:
119+
120+
```php
121+
$numbers = $generator->generateBatch(10);
122+
// Returns array of 10 numbers
123+
```
124+
125+
See [Preview & Bulk Generation](../04-advanced-features/05-preview-and-batch.md#bulk-generation) for details.
126+
106127
## Usage Patterns
107128

108129
### Fluent Interface

0 commit comments

Comments
 (0)