Skip to content

Instantly share code, notes, and snippets.

View buildmotion's full-sized avatar

Matt Vaughn buildmotion

View GitHub Profile
import { Injectable, Optional } from "@angular/core";
import { Severity } from "./severity.enum";
import { IConfiguration, LoggingConfig } from "@angularlicious/configuration";
import { ConfigurationService } from "@angularlicious/configuration";
import { LogEntry } from "./log-entry";
import { Subject, ReplaySubject } from "rxjs";
import { ILogEntry } from "./i-log-entry";
import { ILoggingConfig } from "./config/i-logging-config";
import { NgModule, APP_INITIALIZER, ErrorHandler } from "@angular/core";
import { CommonModule } from "@angular/common";
import {
LoggingService,
LoggingModule,
LogglyWriter
} from "@angularlicious/logging";
import {
ConfigurationService,
ConfigurationModule
import { IConfiguration } from '@angularlicious/configuration';
import { AppConfig } from '../assets/config/app.config.development';
const applicationConfig: IConfiguration = new AppConfig();
export const environment = {
appConfig: applicationConfig,
production: false
};
import {
IConfiguration,
IErrorHandingConfig,
ILogglyConfig
} from "@angularlicious/configuration";
import { ILoggingConfig } from "@angularlicious/logging";
export class AppConfig implements IConfiguration {
applicationName: "BuildMotion";
version: "2.0.0";
import { NgModule, ModuleWithProviders } from "@angular/core";
import { CommonModule } from "@angular/common";
import { ConfigurationContext } from "./configuration-context";
import { HttpClientModule } from "@angular/common/http";
@NgModule({
imports: [CommonModule],
providers: []
})
export class ConfigurationModule {
export interface IConfiguration {
applicationName: string;
version: string;
}
import { IConfiguration } from "./i-configuration";
export class ConfigurationContext {
config: IConfiguration;
}
@buildmotion
buildmotion / configuration.service.ts
Created June 20, 2019 06:38
A Configuration service that provides the configuration context to libraries in the application workspace.
import { Injectable, Optional } from "@angular/core";
import { ConfigurationContext } from "./configuration-context";
import { Subject, ReplaySubject } from "rxjs";
import { IConfiguration } from "./i-configuration";
@Injectable({
providedIn: "root"
})
export class ConfigurationService {
settings$: Subject<IConfiguration> = new ReplaySubject<IConfiguration>(1);
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "With Debugging",
"program": "${workspaceFolder}/node_modules/@angular-devkit/schematics-cli/bin/schematics.js",
"args": [
".:tree-debug"
@buildmotion
buildmotion / schematic-default-function.ts
Created November 24, 2018 01:41
schematic default function
import {
Rule,
SchematicContext,
SchematicsException,
Tree,
apply,
filter,
mergeWith,
move,
noop,