UNPKG

ipsos-components

Version:

Material Design components for Angular

90 lines (77 loc) 3.78 kB
import {join} from 'path'; import {getSubdirectoryNames} from './secondary-entry-points'; import {buildConfig} from './build-config'; /** Method that converts dash-case strings to a camel-based string. */ export const dashCaseToCamelCase = (str: string) => str.replace(/-([a-z])/g, (g) => g[1].toUpperCase()); /** List of potential secondary entry-points for the cdk package. */ const cdkSecondaryEntryPoints = getSubdirectoryNames(join(buildConfig.packagesDir, 'cdk')); /** List of potential secondary entry-points for the material package. */ const matSecondaryEntryPoints = getSubdirectoryNames(join(buildConfig.packagesDir, 'lib')); /** Object with all cdk entry points in the format of Rollup globals. */ const rollupCdkEntryPoints = cdkSecondaryEntryPoints.reduce((globals: any, entryPoint: string) => { globals[`@angular/cdk/${entryPoint}`] = `ng.cdk.${dashCaseToCamelCase(entryPoint)}`; return globals; }, {}); /** Object with all material entry points in the format of Rollup globals. */ const rollupMatEntryPoints = matSecondaryEntryPoints.reduce((globals: any, entryPoint: string) => { globals[`@angular/material/${entryPoint}`] = `ng.material.${dashCaseToCamelCase(entryPoint)}`; return globals; }, {}); /** Map of globals that are used inside of the different packages. */ export const rollupGlobals = { 'tslib': 'tslib', 'moment': 'moment', '@angular/animations': 'ng.animations', '@angular/core': 'ng.core', '@angular/common': 'ng.common', '@angular/forms': 'ng.forms', '@angular/common/http': 'ng.common.http', '@angular/router': 'ng.router', '@angular/platform-browser': 'ng.platformBrowser', '@angular/platform-server': 'ng.platformServer', '@angular/platform-browser-dynamic': 'ng.platformBrowserDynamic', '@angular/platform-browser/animations': 'ng.platformBrowser.animations', '@angular/core/testing': 'ng.core.testing', '@angular/common/testing': 'ng.common.testing', '@angular/common/http/testing': 'ng.common.http.testing', // Some packages are not really needed for the UMD bundles, but for the missingRollupGlobals rule. '@angular/material-examples': 'ng.materialExamples', '@angular/material': 'ng.material', '@angular/material-moment-adapter': 'ng.materialMomentAdapter', '@angular/cdk': 'ng.cdk', // Include secondary entry-points of the cdk and material packages ...rollupCdkEntryPoints, ...rollupMatEntryPoints, 'rxjs/BehaviorSubject': 'Rx', 'rxjs/Observable': 'Rx', 'rxjs/Subject': 'Rx', 'rxjs/Subscription': 'Rx', 'rxjs/Observer': 'Rx', 'rxjs/Subscriber': 'Rx', 'rxjs/Scheduler': 'Rx', 'rxjs/observable/combineLatest': 'Rx.Observable', 'rxjs/observable/forkJoin': 'Rx.Observable', 'rxjs/observable/fromEvent': 'Rx.Observable', 'rxjs/observable/merge': 'Rx.Observable', 'rxjs/observable/of': 'Rx.Observable', 'rxjs/observable/throw': 'Rx.Observable', 'rxjs/observable/defer': 'Rx.Observable', 'rxjs/observable/fromEventPattern': 'Rx.Observable', 'rxjs/observable/empty': 'Rx.Observable', 'rxjs/operators/debounceTime': 'Rx.operators', 'rxjs/operators/takeUntil': 'Rx.operators', 'rxjs/operators/take': 'Rx.operators', 'rxjs/operators/first': 'Rx.operators', 'rxjs/operators/filter': 'Rx.operators', 'rxjs/operators/map': 'Rx.operators', 'rxjs/operators/tap': 'Rx.operators', 'rxjs/operators/startWith': 'Rx.operators', 'rxjs/operators/auditTime': 'Rx.operators', 'rxjs/operators/switchMap': 'Rx.operators', 'rxjs/operators/finalize': 'Rx.operators', 'rxjs/operators/catchError': 'Rx.operators', 'rxjs/operators/share': 'Rx.operators', 'rxjs/operators/delay': 'Rx.operators', 'rxjs/operators/combineLatest': 'Rx.operators', };