@sneat/app 0.11.0 → 0.12.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.
@@ -6,7 +6,7 @@ import { provideIonicAngular } from '@ionic/angular/standalone';
6
6
  import { DefaultSneatAppApiBaseUrl, SneatApiBaseUrl } from '@sneat/api';
7
7
  import { TelegramAuthService } from '@sneat/auth-core';
8
8
  import { LOGGER_FACTORY, loggerFactory, TopMenuService } from '@sneat/core';
9
- import { provideErrorLogger, provideSentryAppInitializer, provideSneatAnalytics, } from '@sneat/logging';
9
+ import { provideChunkLoadErrorRecovery, provideErrorLogger, provideSentryAppInitializer, provideSneatAnalytics, } from '@sneat/logging';
10
10
  import { RANDOM_ID_OPTIONS } from '@sneat/random';
11
11
  import { AppComponentService } from './app-component.service';
12
12
  import { EnvConfigToken } from '@sneat/core';
@@ -25,6 +25,10 @@ export function getStandardSneatProviders(environmentConfig) {
25
25
  const providers = [
26
26
  provideHttpClient(),
27
27
  provideErrorLogger(),
28
+ // Auto-reload once on a stale lazy-chunk load after a deploy. Baseline for
29
+ // apps without Sentry; Sentry's own (chunk-aware) handler overrides it when
30
+ // configured (pushed later below).
31
+ provideChunkLoadErrorRecovery(),
28
32
  provideIonicAngular(),
29
33
  provideAnimationsAsync(),
30
34
  { provide: LOGGER_FACTORY, useValue: loggerFactory },
@@ -1 +1 @@
1
- {"version":3,"file":"get-standard-sneat-providers.js","sourceRoot":"","sources":["../../../../../libs/app/src/lib/get-standard-sneat-providers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EACL,kBAAkB,EAClB,2BAA2B,EAC3B,qBAAqB,GACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAsB,MAAM,aAAa,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,2DAA2D;AAE3D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,MAAM,UAAU,yBAAyB,CACvC,iBAAqC;IAErC,eAAe;IACf,uDAAuD;IACvD,wDAAwD;IACxD,KAAK;IACL,IAAI,iBAAiB,CAAC,OAAO,EAAE,CAAC;QAC9B,eAAe,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,MAAM,SAAS,GAAG;QAChB,iBAAiB,EAAE;QACnB,kBAAkB,EAAE;QACpB,mBAAmB,EAAE;QACrB,sBAAsB,EAAE;QACxB,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,EAAE;QACpD,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,iBAAiB,EAAE;QACxD;YACE,OAAO,EAAE,kBAAkB;YAC3B,QAAQ,EAAE,kBAAkB;SAC7B;QACD;YACE,qEAAqE;YACrE,wEAAwE;YACxE,OAAO,EAAE,aAAa;YACtB,QAAQ,EAAE,kBAAkB;SAC7B;QACD;YACE,OAAO,EAAE,eAAe;YACxB,QAAQ,EAAE,iBAAiB,CAAC,QAAQ;gBAClC,CAAC,CAAC,KAAK,QAAQ,CAAC,IAAI,MAAM;gBAC1B,CAAC,CAAC,iBAAiB,CAAC,cAAc,CAAC,QAAQ;oBACzC,CAAC,CAAC,gCAAgC,CAAC,8BAA8B;oBACjE,CAAC,CAAC,yBAAyB;SAChC;QACD;YACE,OAAO,EAAE,iBAAiB;YAC1B,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE;SACrB;QACD,uBAAuB,CAAC,iBAAiB,CAAC,cAAc,CAAC;QACzD,qBAAqB,CAAC,iBAAiB,CAAC;QACxC,mBAAmB,EAAE,+CAA+C;QACpE,cAAc;QACd,mBAAmB;KACpB,CAAC;IACF,IAAI,iBAAiB,CAAC,MAAM,EAAE,CAAC;QAC7B,SAAS,CAAC,IAAI,CAAC,2BAA2B,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;IACxE,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC","sourcesContent":["import { provideHttpClient } from '@angular/common/http';\nimport { EnvironmentProviders, Provider } from '@angular/core';\nimport { provideAnimationsAsync } from '@angular/platform-browser/animations/async';\nimport { RouteReuseStrategy, TitleStrategy } from '@angular/router';\nimport { IonicRouteStrategy } from '@ionic/angular/standalone';\nimport { provideIonicAngular } from '@ionic/angular/standalone';\nimport { DefaultSneatAppApiBaseUrl, SneatApiBaseUrl } from '@sneat/api';\nimport { TelegramAuthService } from '@sneat/auth-core';\nimport { LOGGER_FACTORY, loggerFactory, TopMenuService } from '@sneat/core';\nimport {\n provideErrorLogger,\n provideSentryAppInitializer,\n provideSneatAnalytics,\n} from '@sneat/logging';\nimport { RANDOM_ID_OPTIONS } from '@sneat/random';\nimport { AppComponentService } from './app-component.service';\nimport { EnvConfigToken, IEnvironmentConfig } from '@sneat/core';\nimport { getAngularFireProviders } from './init-firebase';\nimport { SneatTitleStrategy } from './sneat-title.strategy';\n\n// import { getAngularFireImports } from './init-firebase';\n\nimport { registerPosthog } from './register-posthog';\n\nexport function getStandardSneatProviders(\n environmentConfig: IEnvironmentConfig,\n): readonly (Provider | EnvironmentProviders)[] {\n // console.log(\n // \t'getStandardSneatProviders(), environmentConfig:' +\n // \t\tJSON.stringify(environmentConfig, undefined, '\\t'),\n // );\n if (environmentConfig.posthog) {\n registerPosthog(environmentConfig.posthog);\n }\n\n const providers = [\n provideHttpClient(),\n provideErrorLogger(),\n provideIonicAngular(),\n provideAnimationsAsync(),\n { provide: LOGGER_FACTORY, useValue: loggerFactory },\n { provide: EnvConfigToken, useValue: environmentConfig },\n {\n provide: RouteReuseStrategy,\n useClass: IonicRouteStrategy,\n },\n {\n // Owns document.title for every app: composes the route's data.title\n // with APP_INFO.appTitle, and lets pages override via PageTitleService.\n provide: TitleStrategy,\n useClass: SneatTitleStrategy,\n },\n {\n provide: SneatApiBaseUrl,\n useValue: environmentConfig.useNgrok\n ? `//${location.host}/v0/`\n : environmentConfig.firebaseConfig.emulator\n ? 'https://local-api.sneat.ws/v0/' // 'http://localhost:4300/v0/'\n : DefaultSneatAppApiBaseUrl,\n },\n {\n provide: RANDOM_ID_OPTIONS,\n useValue: { len: 9 },\n },\n getAngularFireProviders(environmentConfig.firebaseConfig),\n provideSneatAnalytics(environmentConfig),\n AppComponentService, // TODO: check if it's used and probably remove\n TopMenuService,\n TelegramAuthService,\n ];\n if (environmentConfig.sentry) {\n providers.push(provideSentryAppInitializer(environmentConfig.sentry));\n }\n return providers;\n}\n"]}
1
+ {"version":3,"file":"get-standard-sneat-providers.js","sourceRoot":"","sources":["../../../../../libs/app/src/lib/get-standard-sneat-providers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EACL,6BAA6B,EAC7B,kBAAkB,EAClB,2BAA2B,EAC3B,qBAAqB,GACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAsB,MAAM,aAAa,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,2DAA2D;AAE3D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,MAAM,UAAU,yBAAyB,CACvC,iBAAqC;IAErC,eAAe;IACf,uDAAuD;IACvD,wDAAwD;IACxD,KAAK;IACL,IAAI,iBAAiB,CAAC,OAAO,EAAE,CAAC;QAC9B,eAAe,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,MAAM,SAAS,GAAG;QAChB,iBAAiB,EAAE;QACnB,kBAAkB,EAAE;QACpB,2EAA2E;QAC3E,4EAA4E;QAC5E,mCAAmC;QACnC,6BAA6B,EAAE;QAC/B,mBAAmB,EAAE;QACrB,sBAAsB,EAAE;QACxB,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,EAAE;QACpD,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,iBAAiB,EAAE;QACxD;YACE,OAAO,EAAE,kBAAkB;YAC3B,QAAQ,EAAE,kBAAkB;SAC7B;QACD;YACE,qEAAqE;YACrE,wEAAwE;YACxE,OAAO,EAAE,aAAa;YACtB,QAAQ,EAAE,kBAAkB;SAC7B;QACD;YACE,OAAO,EAAE,eAAe;YACxB,QAAQ,EAAE,iBAAiB,CAAC,QAAQ;gBAClC,CAAC,CAAC,KAAK,QAAQ,CAAC,IAAI,MAAM;gBAC1B,CAAC,CAAC,iBAAiB,CAAC,cAAc,CAAC,QAAQ;oBACzC,CAAC,CAAC,gCAAgC,CAAC,8BAA8B;oBACjE,CAAC,CAAC,yBAAyB;SAChC;QACD;YACE,OAAO,EAAE,iBAAiB;YAC1B,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE;SACrB;QACD,uBAAuB,CAAC,iBAAiB,CAAC,cAAc,CAAC;QACzD,qBAAqB,CAAC,iBAAiB,CAAC;QACxC,mBAAmB,EAAE,+CAA+C;QACpE,cAAc;QACd,mBAAmB;KACpB,CAAC;IACF,IAAI,iBAAiB,CAAC,MAAM,EAAE,CAAC;QAC7B,SAAS,CAAC,IAAI,CAAC,2BAA2B,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;IACxE,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC","sourcesContent":["import { provideHttpClient } from '@angular/common/http';\nimport { EnvironmentProviders, Provider } from '@angular/core';\nimport { provideAnimationsAsync } from '@angular/platform-browser/animations/async';\nimport { RouteReuseStrategy, TitleStrategy } from '@angular/router';\nimport { IonicRouteStrategy } from '@ionic/angular/standalone';\nimport { provideIonicAngular } from '@ionic/angular/standalone';\nimport { DefaultSneatAppApiBaseUrl, SneatApiBaseUrl } from '@sneat/api';\nimport { TelegramAuthService } from '@sneat/auth-core';\nimport { LOGGER_FACTORY, loggerFactory, TopMenuService } from '@sneat/core';\nimport {\n provideChunkLoadErrorRecovery,\n provideErrorLogger,\n provideSentryAppInitializer,\n provideSneatAnalytics,\n} from '@sneat/logging';\nimport { RANDOM_ID_OPTIONS } from '@sneat/random';\nimport { AppComponentService } from './app-component.service';\nimport { EnvConfigToken, IEnvironmentConfig } from '@sneat/core';\nimport { getAngularFireProviders } from './init-firebase';\nimport { SneatTitleStrategy } from './sneat-title.strategy';\n\n// import { getAngularFireImports } from './init-firebase';\n\nimport { registerPosthog } from './register-posthog';\n\nexport function getStandardSneatProviders(\n environmentConfig: IEnvironmentConfig,\n): readonly (Provider | EnvironmentProviders)[] {\n // console.log(\n // \t'getStandardSneatProviders(), environmentConfig:' +\n // \t\tJSON.stringify(environmentConfig, undefined, '\\t'),\n // );\n if (environmentConfig.posthog) {\n registerPosthog(environmentConfig.posthog);\n }\n\n const providers = [\n provideHttpClient(),\n provideErrorLogger(),\n // Auto-reload once on a stale lazy-chunk load after a deploy. Baseline for\n // apps without Sentry; Sentry's own (chunk-aware) handler overrides it when\n // configured (pushed later below).\n provideChunkLoadErrorRecovery(),\n provideIonicAngular(),\n provideAnimationsAsync(),\n { provide: LOGGER_FACTORY, useValue: loggerFactory },\n { provide: EnvConfigToken, useValue: environmentConfig },\n {\n provide: RouteReuseStrategy,\n useClass: IonicRouteStrategy,\n },\n {\n // Owns document.title for every app: composes the route's data.title\n // with APP_INFO.appTitle, and lets pages override via PageTitleService.\n provide: TitleStrategy,\n useClass: SneatTitleStrategy,\n },\n {\n provide: SneatApiBaseUrl,\n useValue: environmentConfig.useNgrok\n ? `//${location.host}/v0/`\n : environmentConfig.firebaseConfig.emulator\n ? 'https://local-api.sneat.ws/v0/' // 'http://localhost:4300/v0/'\n : DefaultSneatAppApiBaseUrl,\n },\n {\n provide: RANDOM_ID_OPTIONS,\n useValue: { len: 9 },\n },\n getAngularFireProviders(environmentConfig.firebaseConfig),\n provideSneatAnalytics(environmentConfig),\n AppComponentService, // TODO: check if it's used and probably remove\n TopMenuService,\n TelegramAuthService,\n ];\n if (environmentConfig.sentry) {\n providers.push(provideSentryAppInitializer(environmentConfig.sentry));\n }\n return providers;\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sneat/app",
3
- "version": "0.11.0",
3
+ "version": "0.12.0",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },