@rudderjs/core 1.1.1 → 1.1.2

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
@@ -200,9 +200,7 @@ Providers can register other providers at runtime — useful for modules, condit
200
200
 
201
201
  ```ts
202
202
  import { ServiceProvider } from '@rudderjs/core'
203
- import { cache } from '@rudderjs/cache'
204
- import { panels } from '@rudderjs/panels'
205
- import { adminPanel } from '../Panels/Admin/AdminPanel.js'
203
+ import { CacheProvider } from '@rudderjs/cache'
206
204
 
207
205
  export class AppServiceProvider extends ServiceProvider {
208
206
  register() {
@@ -210,13 +208,10 @@ export class AppServiceProvider extends ServiceProvider {
210
208
  }
211
209
 
212
210
  async boot() {
213
- // Register panels from your own provider
214
- await this.app.register(panels([adminPanel]))
215
-
216
- // Conditional features
211
+ // Conditional features register a sub-provider only when configured
217
212
  const config = this.app.make<{ get(k: string): unknown }>('config')
218
213
  if (config.get('cache.enabled')) {
219
- await this.app.register(cache(cacheConfig))
214
+ await this.app.register(CacheProvider)
220
215
  }
221
216
  }
222
217
  }
@@ -51,14 +51,21 @@ export class AppServiceProvider extends ServiceProvider {
51
51
  }
52
52
  ```
53
53
 
54
- Many packages export a **factory function** that returns a provider class (e.g., `cache(config)`, `queue(config)`). These are used in `bootstrap/providers.ts`:
54
+ Most packages export a `*Provider` class directly. List them by reference in `bootstrap/providers.ts` `defaultProviders()` from `@rudderjs/core` auto-discovers all installed framework providers via the manifest at `bootstrap/cache/providers.json` (run `pnpm rudder providers:discover` after install):
55
55
 
56
56
  ```ts
57
- import { cache } from '@rudderjs/cache'
58
- export default [cache(cacheConfig), AppServiceProvider]
57
+ import { defaultProviders } from '@rudderjs/core'
58
+ import { AppServiceProvider } from '../app/Providers/AppServiceProvider.js'
59
+
60
+ export default [
61
+ ...(await defaultProviders()),
62
+ AppServiceProvider,
63
+ ]
59
64
  ```
60
65
 
61
- Providers can be registered dynamically at runtime via `app().register(ProviderClass)`. Duplicates are silently skipped (guarded by class reference and class name).
66
+ To register manually, list each `*Provider` class explicitly (`CacheProvider`, `QueueProvider`, etc.) and read config from a `config: configs` object passed to `Application.configure()` the providers resolve their config keys via the DI container.
67
+
68
+ Providers can also be registered dynamically at runtime via `app().register(ProviderClass)`. Duplicates are silently skipped (guarded by class reference and class name).
62
69
 
63
70
  Deferred providers define `provides()` returning token strings -- they are lazily booted on first container resolve of those tokens.
64
71
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rudderjs/core",
3
- "version": "1.1.1",
3
+ "version": "1.1.2",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",