@orchestr-sh/orchestr 1.4.4 → 1.5.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.
package/README.md CHANGED
@@ -8,6 +8,7 @@ Built from the ground up with Laravel's core components:
8
8
 
9
9
  - **Service Container** - Full IoC container with dependency injection and reflection
10
10
  - **Service Providers** - Bootstrap and register services
11
+ - **Configuration** - Dot-notation config repository with runtime access
11
12
  - **HTTP Router** - Laravel-style routing with parameter binding and file-based route loading
12
13
  - **Request/Response** - Elegant HTTP abstractions
13
14
  - **Middleware** - Global and route-level middleware pipeline
@@ -64,6 +65,67 @@ kernel.listen(3000);
64
65
 
65
66
  ## Core Concepts
66
67
 
68
+ ### Configuration
69
+
70
+ Orchestr provides a Laravel-style configuration system with dot-notation access:
71
+
72
+ ```typescript
73
+ import { Application, ConfigServiceProvider, Config, config } from 'orchestr';
74
+
75
+ const app = new Application(__dirname);
76
+
77
+ // Register configuration
78
+ app.register(new ConfigServiceProvider(app, {
79
+ app: {
80
+ name: 'My Application',
81
+ env: 'production',
82
+ debug: false,
83
+ url: 'http://localhost:3000',
84
+ },
85
+ database: {
86
+ default: 'mysql',
87
+ connections: {
88
+ mysql: {
89
+ host: 'localhost',
90
+ port: 3306,
91
+ database: 'mydb',
92
+ }
93
+ }
94
+ }
95
+ }));
96
+
97
+ await app.boot();
98
+
99
+ // Access via container
100
+ const configInstance = app.make('config');
101
+ const appName = configInstance.get('app.name'); // 'My Application'
102
+ const dbHost = configInstance.get('database.connections.mysql.host'); // 'localhost'
103
+
104
+ // Access via facade
105
+ const name = Config.get('app.name');
106
+ const debug = Config.get('app.debug', false); // with default
107
+
108
+ // Access via helper function
109
+ const env = config('app.env');
110
+ const url = config('app.url', 'http://default.com');
111
+
112
+ // Set configuration values
113
+ Config.set('app.debug', true);
114
+ Config.set({
115
+ 'app.timezone': 'UTC',
116
+ 'app.locale': 'en'
117
+ });
118
+
119
+ // Check if config exists
120
+ if (Config.has('database.connections.mysql')) {
121
+ // ...
122
+ }
123
+
124
+ // Array operations
125
+ Config.push('app.providers', 'NewServiceProvider');
126
+ Config.prepend('app.middleware', 'LoggingMiddleware');
127
+ ```
128
+
67
129
  ### Service Container
68
130
 
69
131
  Laravel's IoC container provides powerful dependency injection:
@@ -885,6 +947,7 @@ Core components completed and in progress:
885
947
 
886
948
  - [x] Service Container & Dependency Injection
887
949
  - [x] Service Providers
950
+ - [x] Configuration System
888
951
  - [x] HTTP Router & Route Files
889
952
  - [x] Request/Response
890
953
  - [x] Middleware Pipeline
@@ -918,6 +981,7 @@ Core components completed and in progress:
918
981
  |---------|---------|----------|
919
982
  | Service Container | ✅ | ✅ |
920
983
  | Service Providers | ✅ | ✅ |
984
+ | Configuration | ✅ | ✅ |
921
985
  | Routing | ✅ | ✅ |
922
986
  | Route Files | ✅ | ✅ |
923
987
  | Middleware | ✅ | ✅ |
@@ -0,0 +1,17 @@
1
+ import { Facade } from '../Support/Facade';
2
+ import type { Config as ConfigClass } from '../Foundation/Config/Config';
3
+ /**
4
+ * Config Facade - Static access to configuration
5
+ * Illuminate\Support\Facades\Config
6
+ *
7
+ * @example
8
+ * Config.get('app.name')
9
+ * Config.set('app.debug', true)
10
+ * Config.has('database.connections.mysql')
11
+ */
12
+ declare class ConfigFacade extends Facade {
13
+ protected static getFacadeAccessor(): string;
14
+ }
15
+ export declare const Config: typeof ConfigFacade & ConfigClass;
16
+ export {};
17
+ //# sourceMappingURL=Config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../src/Facades/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,KAAK,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAEzE;;;;;;;;GAQG;AACH,cAAM,YAAa,SAAQ,MAAM;IAC/B,SAAS,CAAC,MAAM,CAAC,iBAAiB,IAAI,MAAM;CAG7C;AAGD,eAAO,MAAM,MAAM,EAAmB,OAAO,YAAY,GAAG,WAAW,CAAC"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Config = void 0;
4
+ const Facade_1 = require("../Support/Facade");
5
+ /**
6
+ * Config Facade - Static access to configuration
7
+ * Illuminate\Support\Facades\Config
8
+ *
9
+ * @example
10
+ * Config.get('app.name')
11
+ * Config.set('app.debug', true)
12
+ * Config.has('database.connections.mysql')
13
+ */
14
+ class ConfigFacade extends Facade_1.Facade {
15
+ static getFacadeAccessor() {
16
+ return 'config';
17
+ }
18
+ }
19
+ // Export facade with proper typing
20
+ exports.Config = ConfigFacade;
21
+ //# sourceMappingURL=Config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Config.js","sourceRoot":"","sources":["../../src/Facades/Config.ts"],"names":[],"mappings":";;;AAAA,8CAA2C;AAG3C;;;;;;;;GAQG;AACH,MAAM,YAAa,SAAQ,eAAM;IACrB,MAAM,CAAC,iBAAiB;QAChC,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AAED,mCAAmC;AACtB,QAAA,MAAM,GAAG,YAAiD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Application.d.ts","sourceRoot":"","sources":["../../src/Foundation/Application.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD;;;GAGG;AACH,qBAAa,WAAY,SAAQ,SAAS;IACxC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,gBAAgB,CAAyB;IACjD,OAAO,CAAC,eAAe,CAAmC;gBAE9C,QAAQ,GAAE,MAAsB;IAO5C;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAM5B;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAYpC;;OAEG;IACH,WAAW,IAAI,MAAM;IAIrB;;OAEG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAKnC;;OAEG;IACH,IAAI,CAAC,IAAI,GAAE,MAAW,GAAG,MAAM;IAI/B,UAAU,CAAC,IAAI,GAAE,MAAW,GAAG,MAAM;IAIrC,YAAY,CAAC,IAAI,GAAE,MAAW,GAAG,MAAM;IAIvC,WAAW,CAAC,IAAI,GAAE,MAAW,GAAG,MAAM;IAItC,UAAU,CAAC,IAAI,GAAE,MAAW,GAAG,MAAM;IAIrC;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,eAAe,GAAG,CAAC,KAAK,GAAG,EAAE,WAAW,KAAK,eAAe,CAAC,GAAG,eAAe;IA0BlG;;OAEG;IACH,iBAAiB,CAAC,SAAS,EAAE,KAAK,CAAC,eAAe,GAAG,CAAC,KAAK,GAAG,EAAE,WAAW,KAAK,eAAe,CAAC,CAAC,GAAG,IAAI;IAIxG;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAY3B;;OAEG;YACW,YAAY;IAS1B;;OAEG;IACH,QAAQ,IAAI,OAAO;IAInB;;;OAGG;IACH,OAAO,CAAC,oBAAoB,CAAyB;IAErD,WAAW,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAIvC;;OAEG;IACH,SAAS,IAAI,IAAI;IAIjB;;OAEG;IACH,OAAO,IAAI,MAAM;IAIjB;;OAEG;IACH,gBAAgB,IAAI,OAAO;IAI3B;;OAEG;IACH,eAAe,IAAI,MAAM;IAIzB;;OAEG;IACH,WAAW,IAAI,MAAM;IAIrB;;OAEG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACH,YAAY,IAAI,eAAe,EAAE;IAIjC;;OAEG;IACH,mBAAmB,IAAI,OAAO;CAG/B"}
1
+ {"version":3,"file":"Application.d.ts","sourceRoot":"","sources":["../../src/Foundation/Application.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD;;;GAGG;AACH,qBAAa,WAAY,SAAQ,SAAS;IACxC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,gBAAgB,CAAyB;IACjD,OAAO,CAAC,eAAe,CAAmC;gBAE9C,QAAQ,GAAE,MAAsB;IAU5C;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAM5B;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAYpC;;OAEG;IACH,WAAW,IAAI,MAAM;IAIrB;;OAEG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAKnC;;OAEG;IACH,IAAI,CAAC,IAAI,GAAE,MAAW,GAAG,MAAM;IAI/B,UAAU,CAAC,IAAI,GAAE,MAAW,GAAG,MAAM;IAIrC,YAAY,CAAC,IAAI,GAAE,MAAW,GAAG,MAAM;IAIvC,WAAW,CAAC,IAAI,GAAE,MAAW,GAAG,MAAM;IAItC,UAAU,CAAC,IAAI,GAAE,MAAW,GAAG,MAAM;IAIrC;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,eAAe,GAAG,CAAC,KAAK,GAAG,EAAE,WAAW,KAAK,eAAe,CAAC,GAAG,eAAe;IA0BlG;;OAEG;IACH,iBAAiB,CAAC,SAAS,EAAE,KAAK,CAAC,eAAe,GAAG,CAAC,KAAK,GAAG,EAAE,WAAW,KAAK,eAAe,CAAC,CAAC,GAAG,IAAI;IAIxG;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAY3B;;OAEG;YACW,YAAY;IAS1B;;OAEG;IACH,QAAQ,IAAI,OAAO;IAInB;;;OAGG;IACH,OAAO,CAAC,oBAAoB,CAAyB;IAErD,WAAW,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAIvC;;OAEG;IACH,SAAS,IAAI,IAAI;IAIjB;;OAEG;IACH,OAAO,IAAI,MAAM;IAIjB;;OAEG;IACH,gBAAgB,IAAI,OAAO;IAI3B;;OAEG;IACH,eAAe,IAAI,MAAM;IAIzB;;OAEG;IACH,WAAW,IAAI,MAAM;IAIrB;;OAEG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACH,YAAY,IAAI,eAAe,EAAE;IAIjC;;OAEG;IACH,mBAAmB,IAAI,OAAO;CAG/B"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Application = void 0;
4
4
  const Container_1 = require("../Container/Container");
5
+ const helpers_1 = require("../Support/helpers");
5
6
  /**
6
7
  * Application class - Laravel's Illuminate\Foundation\Application
7
8
  * The heart of the framework, bootstraps everything
@@ -16,6 +17,8 @@ class Application extends Container_1.Container {
16
17
  this.basePath = basePath;
17
18
  this.registerBaseBindings();
18
19
  this.registerCoreContainerAliases();
20
+ // Set this as the global app instance for helper functions
21
+ (0, helpers_1.setGlobalApp)(this);
19
22
  }
20
23
  /**
21
24
  * Register the basic bindings into the container
@@ -1 +1 @@
1
- {"version":3,"file":"Application.js","sourceRoot":"","sources":["../../src/Foundation/Application.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Application.js","sourceRoot":"","sources":["../../src/Foundation/Application.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * Config - Laravel's configuration repository
3
+ * Illuminate\Config\Repository
4
+ *
5
+ * Provides dot-notation access to configuration values
6
+ */
7
+ export declare class Config {
8
+ private items;
9
+ constructor(items?: Record<string, any>);
10
+ /**
11
+ * Determine if the given configuration value exists
12
+ * Laravel: config()->has('app.name')
13
+ *
14
+ * @param {string} key
15
+ * @returns {boolean}
16
+ */
17
+ has(key: string): boolean;
18
+ /**
19
+ * Get the specified configuration value
20
+ * Laravel: config('app.name') or config()->get('app.name')
21
+ *
22
+ * Supports dot notation: 'database.connections.mysql.host'
23
+ *
24
+ * @param {string} key
25
+ * @param {any} defaultValue
26
+ * @returns {any}
27
+ */
28
+ get<T = any>(key: string, defaultValue?: T): T;
29
+ /**
30
+ * Get all configuration values
31
+ *
32
+ * @returns {Record<string, any>}
33
+ */
34
+ all(): Record<string, any>;
35
+ /**
36
+ * Set a given configuration value
37
+ * Laravel: config(['app.name' => 'My App'])
38
+ *
39
+ * @param {string | Record<string, any>} key
40
+ * @param {any} value
41
+ */
42
+ set(key: string | Record<string, any>, value?: any): void;
43
+ /**
44
+ * Prepend a value onto an array configuration value
45
+ * Laravel: config()->prepend('app.providers', ServiceProvider::class)
46
+ *
47
+ * @param {string} key
48
+ * @param {any} value
49
+ */
50
+ prepend(key: string, value: any): void;
51
+ /**
52
+ * Push a value onto an array configuration value
53
+ * Laravel: config()->push('app.providers', ServiceProvider::class)
54
+ *
55
+ * @param {string} key
56
+ * @param {any} value
57
+ */
58
+ push(key: string, value: any): void;
59
+ /**
60
+ * Remove a configuration value
61
+ *
62
+ * @param {string} key
63
+ */
64
+ forget(key: string): void;
65
+ /**
66
+ * Get many configuration values
67
+ *
68
+ * @param {string[]} keys
69
+ * @returns {Record<string, any>}
70
+ */
71
+ getMany(keys: string[]): Record<string, any>;
72
+ /**
73
+ * Merge configuration values (deep merge)
74
+ *
75
+ * @param {Record<string, any>} items
76
+ */
77
+ merge(items: Record<string, any>): void;
78
+ /**
79
+ * Deep merge two objects
80
+ */
81
+ private deepMerge;
82
+ /**
83
+ * Check if value is a plain object
84
+ */
85
+ private isObject;
86
+ }
87
+ //# sourceMappingURL=Config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../../src/Foundation/Config/Config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,KAAK,CAA2B;gBAE5B,KAAK,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM;IAI3C;;;;;;OAMG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIzB;;;;;;;;;OASG;IACH,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,GAAG,CAAC;IAe9C;;;;OAIG;IACH,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAI1B;;;;;;OAMG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,GAAG,IAAI;IA2BzD;;;;;;OAMG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI;IAWtC;;;;;;OAMG;IACH,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI;IAWnC;;;;OAIG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAmBzB;;;;;OAKG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAU5C;;;;OAIG;IACH,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAIvC;;OAEG;IACH,OAAO,CAAC,SAAS;IAoBjB;;OAEG;IACH,OAAO,CAAC,QAAQ;CAGjB"}
@@ -0,0 +1,184 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Config = void 0;
4
+ /**
5
+ * Config - Laravel's configuration repository
6
+ * Illuminate\Config\Repository
7
+ *
8
+ * Provides dot-notation access to configuration values
9
+ */
10
+ class Config {
11
+ items = {};
12
+ constructor(items = {}) {
13
+ this.items = items;
14
+ }
15
+ /**
16
+ * Determine if the given configuration value exists
17
+ * Laravel: config()->has('app.name')
18
+ *
19
+ * @param {string} key
20
+ * @returns {boolean}
21
+ */
22
+ has(key) {
23
+ return this.get(key) !== undefined;
24
+ }
25
+ /**
26
+ * Get the specified configuration value
27
+ * Laravel: config('app.name') or config()->get('app.name')
28
+ *
29
+ * Supports dot notation: 'database.connections.mysql.host'
30
+ *
31
+ * @param {string} key
32
+ * @param {any} defaultValue
33
+ * @returns {any}
34
+ */
35
+ get(key, defaultValue) {
36
+ const keys = key.split('.');
37
+ let value = this.items;
38
+ for (const segment of keys) {
39
+ if (value && typeof value === 'object' && segment in value) {
40
+ value = value[segment];
41
+ }
42
+ else {
43
+ return defaultValue;
44
+ }
45
+ }
46
+ return value;
47
+ }
48
+ /**
49
+ * Get all configuration values
50
+ *
51
+ * @returns {Record<string, any>}
52
+ */
53
+ all() {
54
+ return this.items;
55
+ }
56
+ /**
57
+ * Set a given configuration value
58
+ * Laravel: config(['app.name' => 'My App'])
59
+ *
60
+ * @param {string | Record<string, any>} key
61
+ * @param {any} value
62
+ */
63
+ set(key, value) {
64
+ if (typeof key === 'object') {
65
+ // Set multiple values
66
+ for (const [k, v] of Object.entries(key)) {
67
+ this.set(k, v);
68
+ }
69
+ return;
70
+ }
71
+ const keys = key.split('.');
72
+ let current = this.items;
73
+ // Navigate to the parent of the final key
74
+ for (let i = 0; i < keys.length - 1; i++) {
75
+ const segment = keys[i];
76
+ if (!current[segment] || typeof current[segment] !== 'object') {
77
+ current[segment] = {};
78
+ }
79
+ current = current[segment];
80
+ }
81
+ // Set the final value
82
+ current[keys[keys.length - 1]] = value;
83
+ }
84
+ /**
85
+ * Prepend a value onto an array configuration value
86
+ * Laravel: config()->prepend('app.providers', ServiceProvider::class)
87
+ *
88
+ * @param {string} key
89
+ * @param {any} value
90
+ */
91
+ prepend(key, value) {
92
+ const array = this.get(key, []);
93
+ if (!Array.isArray(array)) {
94
+ throw new Error(`Configuration value at [${key}] is not an array.`);
95
+ }
96
+ array.unshift(value);
97
+ this.set(key, array);
98
+ }
99
+ /**
100
+ * Push a value onto an array configuration value
101
+ * Laravel: config()->push('app.providers', ServiceProvider::class)
102
+ *
103
+ * @param {string} key
104
+ * @param {any} value
105
+ */
106
+ push(key, value) {
107
+ const array = this.get(key, []);
108
+ if (!Array.isArray(array)) {
109
+ throw new Error(`Configuration value at [${key}] is not an array.`);
110
+ }
111
+ array.push(value);
112
+ this.set(key, array);
113
+ }
114
+ /**
115
+ * Remove a configuration value
116
+ *
117
+ * @param {string} key
118
+ */
119
+ forget(key) {
120
+ const keys = key.split('.');
121
+ let current = this.items;
122
+ // Navigate to the parent of the final key
123
+ for (let i = 0; i < keys.length - 1; i++) {
124
+ const segment = keys[i];
125
+ if (!current[segment] || typeof current[segment] !== 'object') {
126
+ return; // Key doesn't exist
127
+ }
128
+ current = current[segment];
129
+ }
130
+ // Delete the final key
131
+ delete current[keys[keys.length - 1]];
132
+ }
133
+ /**
134
+ * Get many configuration values
135
+ *
136
+ * @param {string[]} keys
137
+ * @returns {Record<string, any>}
138
+ */
139
+ getMany(keys) {
140
+ const result = {};
141
+ for (const key of keys) {
142
+ result[key] = this.get(key);
143
+ }
144
+ return result;
145
+ }
146
+ /**
147
+ * Merge configuration values (deep merge)
148
+ *
149
+ * @param {Record<string, any>} items
150
+ */
151
+ merge(items) {
152
+ this.items = this.deepMerge(this.items, items);
153
+ }
154
+ /**
155
+ * Deep merge two objects
156
+ */
157
+ deepMerge(target, source) {
158
+ const output = { ...target };
159
+ if (this.isObject(target) && this.isObject(source)) {
160
+ Object.keys(source).forEach(key => {
161
+ if (this.isObject(source[key])) {
162
+ if (!(key in target)) {
163
+ output[key] = source[key];
164
+ }
165
+ else {
166
+ output[key] = this.deepMerge(target[key], source[key]);
167
+ }
168
+ }
169
+ else {
170
+ output[key] = source[key];
171
+ }
172
+ });
173
+ }
174
+ return output;
175
+ }
176
+ /**
177
+ * Check if value is a plain object
178
+ */
179
+ isObject(item) {
180
+ return item && typeof item === 'object' && !Array.isArray(item);
181
+ }
182
+ }
183
+ exports.Config = Config;
184
+ //# sourceMappingURL=Config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Config.js","sourceRoot":"","sources":["../../../src/Foundation/Config/Config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { ServiceProvider } from '../ServiceProvider';
2
+ import { Application } from '../Application';
3
+ /**
4
+ * ConfigServiceProvider - Registers the configuration repository
5
+ * Illuminate\Foundation\Providers\ConfigServiceProvider (partial)
6
+ */
7
+ export declare class ConfigServiceProvider extends ServiceProvider {
8
+ /**
9
+ * Configuration items to register
10
+ */
11
+ private config;
12
+ constructor(app: Application, config?: Record<string, any>);
13
+ /**
14
+ * Register the configuration repository
15
+ */
16
+ register(): void;
17
+ }
18
+ //# sourceMappingURL=ConfigServiceProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigServiceProvider.d.ts","sourceRoot":"","sources":["../../../src/Foundation/Config/ConfigServiceProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C;;;GAGG;AACH,qBAAa,qBAAsB,SAAQ,eAAe;IACxD;;OAEG;IACH,OAAO,CAAC,MAAM,CAAsB;gBAExB,GAAG,EAAE,WAAW,EAAE,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM;IAK9D;;OAEG;IACH,QAAQ,IAAI,IAAI;CAUjB"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ConfigServiceProvider = void 0;
4
+ const ServiceProvider_1 = require("../ServiceProvider");
5
+ const Config_1 = require("./Config");
6
+ /**
7
+ * ConfigServiceProvider - Registers the configuration repository
8
+ * Illuminate\Foundation\Providers\ConfigServiceProvider (partial)
9
+ */
10
+ class ConfigServiceProvider extends ServiceProvider_1.ServiceProvider {
11
+ /**
12
+ * Configuration items to register
13
+ */
14
+ config;
15
+ constructor(app, config = {}) {
16
+ super(app);
17
+ this.config = config;
18
+ }
19
+ /**
20
+ * Register the configuration repository
21
+ */
22
+ register() {
23
+ this.app.singleton('config', () => {
24
+ return new Config_1.Config(this.config);
25
+ });
26
+ // Also bind the Config class itself
27
+ this.app.singleton(Config_1.Config, () => {
28
+ return this.app.make('config');
29
+ });
30
+ }
31
+ }
32
+ exports.ConfigServiceProvider = ConfigServiceProvider;
33
+ //# sourceMappingURL=ConfigServiceProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigServiceProvider.js","sourceRoot":"","sources":["../../../src/Foundation/Config/ConfigServiceProvider.ts"],"names":[],"mappings":";;;AAAA,wDAAqD;AAErD,qCAAkC;AAElC;;;GAGG;AACH,MAAa,qBAAsB,SAAQ,iCAAe;IACxD;;OAEG;IACK,MAAM,CAAsB;IAEpC,YAAY,GAAgB,EAAE,SAA8B,EAAE;QAC5D,KAAK,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,GAAG,EAAE;YAChC,OAAO,IAAI,eAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,oCAAoC;QACpC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,eAAM,EAAE,GAAG,EAAE;YAC9B,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAxBD,sDAwBC"}
@@ -1,6 +1,22 @@
1
1
  /**
2
2
  * Helper functions - Laravel-style global helpers
3
3
  */
4
+ import { Application } from '../Foundation/Application';
5
+ import type { Config as ConfigClass } from '../Foundation/Config/Config';
6
+ /**
7
+ * Set the global application instance
8
+ * @internal
9
+ */
10
+ export declare function setGlobalApp(app: Application): void;
11
+ /**
12
+ * Get a configuration value
13
+ * Laravel: config('app.name') or config('app.name', 'default')
14
+ *
15
+ * @param {string} key
16
+ * @param {any} defaultValue
17
+ * @returns {any}
18
+ */
19
+ export declare function config<T = any>(key?: string, defaultValue?: T): T | ConfigClass;
4
20
  /**
5
21
  * Load routes from a directory
6
22
  * This helper allows you to dynamically import route files
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/Support/helpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;GAGG;AACH,wBAAsB,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMjE;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,GAAE,MAAW,GAAG,MAAM,CAEnD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,GAAE,MAAW,GAAG,MAAM,CAErD"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/Support/helpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAKzE;;;GAGG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI,CAEnD;AAED;;;;;;;GAOG;AACH,wBAAgB,MAAM,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,WAAW,CAa/E;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMjE;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,GAAE,MAAW,GAAG,MAAM,CAEnD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,GAAE,MAAW,GAAG,MAAM,CAErD"}
@@ -36,9 +36,39 @@ var __importStar = (this && this.__importStar) || (function () {
36
36
  };
37
37
  })();
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.setGlobalApp = setGlobalApp;
40
+ exports.config = config;
39
41
  exports.loadRoutes = loadRoutes;
40
42
  exports.base_path = base_path;
41
43
  exports.routes_path = routes_path;
44
+ // Global application instance for helpers
45
+ let globalApp = null;
46
+ /**
47
+ * Set the global application instance
48
+ * @internal
49
+ */
50
+ function setGlobalApp(app) {
51
+ globalApp = app;
52
+ }
53
+ /**
54
+ * Get a configuration value
55
+ * Laravel: config('app.name') or config('app.name', 'default')
56
+ *
57
+ * @param {string} key
58
+ * @param {any} defaultValue
59
+ * @returns {any}
60
+ */
61
+ function config(key, defaultValue) {
62
+ if (!globalApp) {
63
+ throw new Error('Application not initialized. Call setGlobalApp() first.');
64
+ }
65
+ const configInstance = globalApp.make('config');
66
+ // If no key provided, return the config instance
67
+ if (key === undefined) {
68
+ return configInstance;
69
+ }
70
+ return configInstance.get(key, defaultValue);
71
+ }
42
72
  /**
43
73
  * Load routes from a directory
44
74
  * This helper allows you to dynamically import route files
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/Support/helpers.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMH,gCAMC;AAKD,8BAEC;AAKD,kCAEC;AAxBD;;;GAGG;AACI,KAAK,UAAU,UAAU,CAAC,SAAiB;IAChD,IAAI,CAAC;QACH,yBAAa,SAAS,uCAAC,CAAC;IAC1B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,8BAA8B,SAAS,KAAK,KAAK,EAAE,CAAC,CAAC;IACvE,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,SAAS,CAAC,OAAe,EAAE;IACzC,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AACrD,CAAC;AAED;;GAEG;AACH,SAAgB,WAAW,CAAC,OAAe,EAAE;IAC3C,OAAO,SAAS,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACtD,CAAC"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/Support/helpers.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYH,oCAEC;AAUD,wBAaC;AAMD,gCAMC;AAKD,8BAEC;AAKD,kCAEC;AA1DD,0CAA0C;AAC1C,IAAI,SAAS,GAAuB,IAAI,CAAC;AAEzC;;;GAGG;AACH,SAAgB,YAAY,CAAC,GAAgB;IAC3C,SAAS,GAAG,GAAG,CAAC;AAClB,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,MAAM,CAAU,GAAY,EAAE,YAAgB;IAC5D,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC7E,CAAC;IAED,MAAM,cAAc,GAAG,SAAS,CAAC,IAAI,CAAc,QAAQ,CAAC,CAAC;IAE7D,iDAAiD;IACjD,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,cAAqB,CAAC;IAC/B,CAAC;IAED,OAAO,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;AAC/C,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,UAAU,CAAC,SAAiB;IAChD,IAAI,CAAC;QACH,yBAAa,SAAS,uCAAC,CAAC;IAC1B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,8BAA8B,SAAS,KAAK,KAAK,EAAE,CAAC,CAAC;IACvE,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,SAAS,CAAC,OAAe,EAAE;IACzC,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AACrD,CAAC;AAED;;GAEG;AACH,SAAgB,WAAW,CAAC,OAAe,EAAE;IAC3C,OAAO,SAAS,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACtD,CAAC"}
package/dist/index.d.ts CHANGED
@@ -9,6 +9,8 @@ export { FormRequest } from './Foundation/Http/FormRequest';
9
9
  export { ValidationException } from './Foundation/Http/ValidationException';
10
10
  export { Validator } from './Foundation/Http/Validator';
11
11
  export type { ValidationRules, ValidationRule, ValidationRuleObject } from './Foundation/Http/Validator';
12
+ export { Config as ConfigClass } from './Foundation/Config/Config';
13
+ export { ConfigServiceProvider } from './Foundation/Config/ConfigServiceProvider';
12
14
  export { Container } from './Container/Container';
13
15
  export { Router } from './Routing/Router';
14
16
  export { Route as RouteClass } from './Routing/Route';
@@ -17,9 +19,11 @@ export { Response } from './Routing/Response';
17
19
  export { Controller } from './Routing/Controller';
18
20
  export { Facade } from './Support/Facade';
19
21
  export { Route } from './Facades/Route';
22
+ export { Config } from './Facades/Config';
20
23
  export { loadRoutes, base_path, routes_path } from './Support/helpers';
21
24
  export { Injectable } from './Support/Injectable';
22
25
  export { ValidateRequest } from './Support/ValidateRequest';
26
+ export { config } from './Support/helpers';
23
27
  export { RouteServiceProvider } from './Providers/RouteServiceProvider';
24
28
  export { DatabaseServiceProvider } from './Database/DatabaseServiceProvider';
25
29
  export { DatabaseManager } from './Database/DatabaseManager';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -4,7 +4,7 @@
4
4
  * Main exports
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.HasRelationshipsMixin = exports.BelongsTo = exports.HasMany = exports.HasOne = exports.Relation = exports.softDeletes = exports.EnsembleCollection = exports.EnsembleBuilder = exports.Ensemble = exports.DB = exports.DrizzleAdapter = exports.raw = exports.Expression = exports.QueryBuilder = exports.Connection = exports.DatabaseManager = exports.DatabaseServiceProvider = exports.RouteServiceProvider = exports.ValidateRequest = exports.Injectable = exports.routes_path = exports.base_path = exports.loadRoutes = exports.Route = exports.Facade = exports.Controller = exports.Response = exports.Request = exports.RouteClass = exports.Router = exports.Container = exports.Validator = exports.ValidationException = exports.FormRequest = exports.Kernel = exports.ServiceProvider = exports.Application = void 0;
7
+ exports.HasRelationshipsMixin = exports.BelongsTo = exports.HasMany = exports.HasOne = exports.Relation = exports.softDeletes = exports.EnsembleCollection = exports.EnsembleBuilder = exports.Ensemble = exports.DB = exports.DrizzleAdapter = exports.raw = exports.Expression = exports.QueryBuilder = exports.Connection = exports.DatabaseManager = exports.DatabaseServiceProvider = exports.RouteServiceProvider = exports.config = exports.ValidateRequest = exports.Injectable = exports.routes_path = exports.base_path = exports.loadRoutes = exports.Config = exports.Route = exports.Facade = exports.Controller = exports.Response = exports.Request = exports.RouteClass = exports.Router = exports.Container = exports.ConfigServiceProvider = exports.ConfigClass = exports.Validator = exports.ValidationException = exports.FormRequest = exports.Kernel = exports.ServiceProvider = exports.Application = void 0;
8
8
  // Foundation
9
9
  var Application_1 = require("./Foundation/Application");
10
10
  Object.defineProperty(exports, "Application", { enumerable: true, get: function () { return Application_1.Application; } });
@@ -18,6 +18,10 @@ var ValidationException_1 = require("./Foundation/Http/ValidationException");
18
18
  Object.defineProperty(exports, "ValidationException", { enumerable: true, get: function () { return ValidationException_1.ValidationException; } });
19
19
  var Validator_1 = require("./Foundation/Http/Validator");
20
20
  Object.defineProperty(exports, "Validator", { enumerable: true, get: function () { return Validator_1.Validator; } });
21
+ var Config_1 = require("./Foundation/Config/Config");
22
+ Object.defineProperty(exports, "ConfigClass", { enumerable: true, get: function () { return Config_1.Config; } });
23
+ var ConfigServiceProvider_1 = require("./Foundation/Config/ConfigServiceProvider");
24
+ Object.defineProperty(exports, "ConfigServiceProvider", { enumerable: true, get: function () { return ConfigServiceProvider_1.ConfigServiceProvider; } });
21
25
  // Container
22
26
  var Container_1 = require("./Container/Container");
23
27
  Object.defineProperty(exports, "Container", { enumerable: true, get: function () { return Container_1.Container; } });
@@ -37,6 +41,8 @@ var Facade_1 = require("./Support/Facade");
37
41
  Object.defineProperty(exports, "Facade", { enumerable: true, get: function () { return Facade_1.Facade; } });
38
42
  var Route_2 = require("./Facades/Route");
39
43
  Object.defineProperty(exports, "Route", { enumerable: true, get: function () { return Route_2.Route; } });
44
+ var Config_2 = require("./Facades/Config");
45
+ Object.defineProperty(exports, "Config", { enumerable: true, get: function () { return Config_2.Config; } });
40
46
  // Helpers
41
47
  var helpers_1 = require("./Support/helpers");
42
48
  Object.defineProperty(exports, "loadRoutes", { enumerable: true, get: function () { return helpers_1.loadRoutes; } });
@@ -47,6 +53,9 @@ var Injectable_1 = require("./Support/Injectable");
47
53
  Object.defineProperty(exports, "Injectable", { enumerable: true, get: function () { return Injectable_1.Injectable; } });
48
54
  var ValidateRequest_1 = require("./Support/ValidateRequest");
49
55
  Object.defineProperty(exports, "ValidateRequest", { enumerable: true, get: function () { return ValidateRequest_1.ValidateRequest; } });
56
+ // Helper function for config
57
+ var helpers_2 = require("./Support/helpers");
58
+ Object.defineProperty(exports, "config", { enumerable: true, get: function () { return helpers_2.config; } });
50
59
  // Providers
51
60
  var RouteServiceProvider_1 = require("./Providers/RouteServiceProvider");
52
61
  Object.defineProperty(exports, "RouteServiceProvider", { enumerable: true, get: function () { return RouteServiceProvider_1.RouteServiceProvider; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,aAAa;AACb,wDAAuD;AAA9C,0GAAA,WAAW,OAAA;AACpB,gEAA+D;AAAtD,kHAAA,eAAe,OAAA;AACxB,mDAAkD;AAAzC,gGAAA,MAAM,OAAA;AACf,6DAA4D;AAAnD,0GAAA,WAAW,OAAA;AACpB,6EAA4E;AAAnE,0HAAA,mBAAmB,OAAA;AAC5B,yDAAwD;AAA/C,sGAAA,SAAS,OAAA;AAGlB,YAAY;AACZ,mDAAkD;AAAzC,sGAAA,SAAS,OAAA;AAElB,UAAU;AACV,2CAA0C;AAAjC,gGAAA,MAAM,OAAA;AACf,yCAAsD;AAA7C,mGAAA,KAAK,OAAc;AAC5B,6CAA4C;AAAnC,kGAAA,OAAO,OAAA;AAChB,+CAA8C;AAArC,oGAAA,QAAQ,OAAA;AACjB,mDAAkD;AAAzC,wGAAA,UAAU,OAAA;AAEnB,UAAU;AACV,2CAA0C;AAAjC,gGAAA,MAAM,OAAA;AACf,yCAAwC;AAA/B,8FAAA,KAAK,OAAA;AAEd,UAAU;AACV,6CAAuE;AAA9D,qGAAA,UAAU,OAAA;AAAE,oGAAA,SAAS,OAAA;AAAE,sGAAA,WAAW,OAAA;AAE3C,aAAa;AACb,mDAAkD;AAAzC,wGAAA,UAAU,OAAA;AACnB,6DAA4D;AAAnD,kHAAA,eAAe,OAAA;AAExB,YAAY;AACZ,yEAAwE;AAA/D,4HAAA,oBAAoB,OAAA;AAC7B,8EAA6E;AAApE,kIAAA,uBAAuB,OAAA;AAEhC,WAAW;AACX,8DAA6D;AAApD,kHAAA,eAAe,OAAA;AACxB,oDAAmD;AAA1C,wGAAA,UAAU,OAAA;AACnB,oDAAmE;AAA1D,uGAAA,OAAO,OAAgB;AAChC,0DAA8D;AAArD,wGAAA,UAAU,OAAA;AAAE,iGAAA,GAAG,OAAA;AACxB,qEAAoE;AAA3D,gHAAA,cAAc,OAAA;AAEvB,mBAAmB;AACnB,mCAAkC;AAAzB,wFAAA,EAAE,OAAA;AAEX,eAAe;AACf,yDAAwD;AAA/C,oGAAA,QAAQ,OAAA;AACjB,uEAAsE;AAA7D,kHAAA,eAAe,OAAA;AACxB,6EAA4E;AAAnE,wHAAA,kBAAkB,OAAA;AAC3B,+DAA8D;AAArD,0GAAA,WAAW,OAAA;AAEpB,qBAAqB;AACrB,2DAAqF;AAA5E,qGAAA,QAAQ,OAAA;AAAE,mGAAA,MAAM,OAAA;AAAE,oGAAA,OAAO,OAAA;AAAE,sGAAA,SAAS,OAAA;AAE7C,oBAAoB;AACpB,kFAAsF;AAA7E,yHAAA,qBAAqB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,aAAa;AACb,wDAAuD;AAA9C,0GAAA,WAAW,OAAA;AACpB,gEAA+D;AAAtD,kHAAA,eAAe,OAAA;AACxB,mDAAkD;AAAzC,gGAAA,MAAM,OAAA;AACf,6DAA4D;AAAnD,0GAAA,WAAW,OAAA;AACpB,6EAA4E;AAAnE,0HAAA,mBAAmB,OAAA;AAC5B,yDAAwD;AAA/C,sGAAA,SAAS,OAAA;AAElB,qDAAmE;AAA1D,qGAAA,MAAM,OAAe;AAC9B,mFAAkF;AAAzE,8HAAA,qBAAqB,OAAA;AAE9B,YAAY;AACZ,mDAAkD;AAAzC,sGAAA,SAAS,OAAA;AAElB,UAAU;AACV,2CAA0C;AAAjC,gGAAA,MAAM,OAAA;AACf,yCAAsD;AAA7C,mGAAA,KAAK,OAAc;AAC5B,6CAA4C;AAAnC,kGAAA,OAAO,OAAA;AAChB,+CAA8C;AAArC,oGAAA,QAAQ,OAAA;AACjB,mDAAkD;AAAzC,wGAAA,UAAU,OAAA;AAEnB,UAAU;AACV,2CAA0C;AAAjC,gGAAA,MAAM,OAAA;AACf,yCAAwC;AAA/B,8FAAA,KAAK,OAAA;AACd,2CAA0C;AAAjC,gGAAA,MAAM,OAAA;AAEf,UAAU;AACV,6CAAuE;AAA9D,qGAAA,UAAU,OAAA;AAAE,oGAAA,SAAS,OAAA;AAAE,sGAAA,WAAW,OAAA;AAE3C,aAAa;AACb,mDAAkD;AAAzC,wGAAA,UAAU,OAAA;AACnB,6DAA4D;AAAnD,kHAAA,eAAe,OAAA;AAExB,6BAA6B;AAC7B,6CAA2C;AAAlC,iGAAA,MAAM,OAAA;AAEf,YAAY;AACZ,yEAAwE;AAA/D,4HAAA,oBAAoB,OAAA;AAC7B,8EAA6E;AAApE,kIAAA,uBAAuB,OAAA;AAEhC,WAAW;AACX,8DAA6D;AAApD,kHAAA,eAAe,OAAA;AACxB,oDAAmD;AAA1C,wGAAA,UAAU,OAAA;AACnB,oDAAmE;AAA1D,uGAAA,OAAO,OAAgB;AAChC,0DAA8D;AAArD,wGAAA,UAAU,OAAA;AAAE,iGAAA,GAAG,OAAA;AACxB,qEAAoE;AAA3D,gHAAA,cAAc,OAAA;AAEvB,mBAAmB;AACnB,mCAAkC;AAAzB,wFAAA,EAAE,OAAA;AAEX,eAAe;AACf,yDAAwD;AAA/C,oGAAA,QAAQ,OAAA;AACjB,uEAAsE;AAA7D,kHAAA,eAAe,OAAA;AACxB,6EAA4E;AAAnE,wHAAA,kBAAkB,OAAA;AAC3B,+DAA8D;AAArD,0GAAA,WAAW,OAAA;AAEpB,qBAAqB;AACrB,2DAAqF;AAA5E,qGAAA,QAAQ,OAAA;AAAE,mGAAA,MAAM,OAAA;AAAE,oGAAA,OAAO,OAAA;AAAE,sGAAA,SAAS,OAAA;AAE7C,oBAAoB;AACpB,kFAAsF;AAA7E,yHAAA,qBAAqB,OAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@orchestr-sh/orchestr",
3
- "version": "1.4.4",
3
+ "version": "1.5.0",
4
4
  "description": "A 1:1 Laravel replica in TypeScript - Brings Laravel's elegant syntax and architecture to Node.js",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",