@skyux/config 12.11.3 → 12.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.
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"skyux-config.mjs","sources":["../../../../../libs/components/config/src/lib/app-config-host.ts","../../../../../libs/components/config/src/lib/app-config-params.ts","../../../../../libs/components/config/src/lib/app-config.module.ts","../../../../../libs/components/config/src/lib/config.ts","../../../../../libs/components/config/src/lib/params.ts","../../../../../libs/components/config/src/lib/params-provider.ts","../../../../../libs/components/config/src/skyux-config.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\nimport { SkyuxConfigHost } from './config';\n\nconst DEFAULTS: SkyuxConfigHost = {\n frameOptions: {\n none: true,\n },\n url: 'https://host.nxt.blackbaud.com/',\n};\n\n/**\n * Host configuration for components and applications.\n * @deprecated Use `SkyAppConfig.skyux.host` instead.\n */\n@Injectable()\nexport class SkyAppConfigHost {\n public get host(): SkyuxConfigHost {\n return this.#_host;\n }\n\n #_host!: SkyuxConfigHost;\n\n public init(config?: SkyuxConfigHost): void {\n this.#_host = {\n ...DEFAULTS,\n ...(config || {}),\n };\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { SkyuxConfigParams } from './config-params';\n\nconst DEFAULTS: SkyuxConfigParams = {\n envid: {\n required: false,\n },\n leid: {\n required: false,\n },\n svcid: {\n required: false,\n },\n};\n\n/**\n * @deprecated Use `SkyAppConfig.skyux.params` instead.\n */\n@Injectable()\nexport class SkyAppConfigParams {\n public get params(): SkyuxConfigParams {\n return this.#_params;\n }\n\n #_params!: SkyuxConfigParams;\n\n public init(params?: SkyuxConfigParams): void {\n this.#_params = {\n ...DEFAULTS,\n ...(params || {}),\n };\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { SkyAppConfigHost } from './app-config-host';\nimport { SkyAppConfigModuleForRootArgs } from './app-config-module-for-root-args';\nimport { SkyAppConfigParams } from './app-config-params';\n\n/**\n * @deprecated Provide `SkyAppConfig` at the root instead.\n */\n@NgModule({})\nexport class SkyAppConfigModule {\n public static forRoot(\n config: SkyAppConfigModuleForRootArgs = {},\n ): ModuleWithProviders<SkyAppConfigModule> {\n return {\n ngModule: SkyAppConfigModule,\n providers: [\n {\n provide: SkyAppConfigParams,\n useFactory() {\n const appConfigParams = new SkyAppConfigParams();\n appConfigParams.init(config.params);\n return appConfigParams;\n },\n },\n {\n provide: SkyAppConfigHost,\n useFactory() {\n const appConfigHost = new SkyAppConfigHost();\n appConfigHost.init(config.host);\n return appConfigHost;\n },\n },\n ],\n };\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { SkyuxConfigParams } from './config-params';\nimport { SkyuxConfigRemoteModules } from './config-remote-modules';\nimport { SkyAppRuntimeConfigParams } from './params';\n\nexport interface RuntimeConfigApp {\n base: string;\n inject: boolean;\n name?: string;\n template: string;\n}\n\n/**\n * @experimental\n */\nexport interface SkyuxRuntimeConfigLocalDev {\n assetsBaseUrl?: string;\n hasRemoteModules?: boolean;\n}\n\nexport class SkyuxPactConfig {\n public providers?: Record<\n string,\n {\n host?: string;\n port?: string;\n fullUrl?: string;\n }\n >;\n public pactProxyServer?: string;\n}\n\nexport interface SkyuxConfigE2ETestSettings {\n browserSet?: 'speedy';\n}\n\nexport interface SkyuxConfigUnitTestSettings {\n browserSet?: 'speedy' | 'quirky' | 'paranoid';\n}\n\nexport interface SkyuxConfigTestSettings {\n e2e?: SkyuxConfigE2ETestSettings;\n unit?: SkyuxConfigUnitTestSettings;\n}\n\nexport interface SkyuxConfigLibrarySettings {\n whitelistedNonPeerDependencies?: string[];\n}\n\nexport interface RuntimeConfig {\n app: RuntimeConfigApp;\n command?: string; // Dynamically added in \"higher up\" webpacks\n componentsPattern: string;\n componentsIgnorePattern: string;\n handle404?: boolean; // Dynamically added in sky-pages-module-generator.js\n includeRouteModule: boolean;\n pactConfig?: SkyuxPactConfig;\n params: SkyAppRuntimeConfigParams;\n routes?: object[]; // Dynamically added in sky-pages-module-generator.js\n routesPattern: string;\n runtimeAlias: string;\n spaPathAlias: string;\n skyPagesOutAlias: string;\n skyuxPathAlias: string;\n srcPath: string;\n useTemplateUrl: boolean;\n localDev?: SkyuxRuntimeConfigLocalDev;\n}\n\nexport interface SkyuxConfigA11y {\n rules?: any;\n}\n\nexport type SkyuxConfigAppSupportedTheme = 'default' | 'modern';\n\nexport interface SkyuxConfigAppBrand {\n name: string;\n version: string;\n}\n\nexport interface SkyuxConfigAppTheming {\n supportedThemes: SkyuxConfigAppSupportedTheme[];\n theme: SkyuxConfigAppSupportedTheme;\n brand?: SkyuxConfigAppBrand;\n}\n\nexport interface SkyuxConfigApp {\n base?: string;\n externals?: object;\n port?: string;\n styles?: string[];\n theming?: SkyuxConfigAppTheming;\n title?: string;\n}\n\nexport interface SkyuxConfigAuthSettings {\n blackbaudEmployee?: boolean;\n}\n\nexport interface SkyuxConfigHostBBCheckout {\n version: '2';\n}\n\nexport interface SkyuxConfigHostFrameOptionsNone {\n blackbaud?: false;\n none: true;\n self?: false;\n urls?: string[];\n}\n\nexport interface SkyuxConfigHostFrameOptionsOthers {\n blackbaud?: boolean;\n none?: false;\n self?: boolean;\n urls?: string[];\n}\n\nexport type SkyuxConfigHostCspDirectives = Record<string, string[]>;\n\nexport interface SkyuxConfigHostCsp {\n enabled: boolean;\n directives?: SkyuxConfigHostCspDirectives;\n}\n\n/**\n * Blackbaud Only - Specifies configuration options for communication with SKY UX Host.\n */\nexport interface SkyuxConfigHost {\n bbCheckout?: SkyuxConfigHostBBCheckout;\n csp?: SkyuxConfigHostCsp;\n frameOptions?:\n | SkyuxConfigHostFrameOptionsNone\n | SkyuxConfigHostFrameOptionsOthers;\n url?: string;\n}\n\nexport interface SkyuxConfigAnyAllSet {\n any?: string[];\n all?: string[];\n}\n\nexport interface SkyuxConfig {\n $schema?: string;\n a11y?: SkyuxConfigA11y | boolean;\n angularSettings?: {\n defaultProject: string;\n };\n app?: SkyuxConfigApp;\n appSettings?: any;\n auth?: boolean;\n authSettings?: SkyuxConfigAuthSettings;\n codeCoverageThreshold?: 'none' | 'standard' | 'strict';\n command?: string;\n compileMode?: string;\n cssPath?: string;\n dependenciesForTranspilation?: string[];\n enableIvy?: boolean;\n help?: any;\n host?: SkyuxConfigHost;\n importPath?: string;\n librarySettings?: SkyuxConfigLibrarySettings;\n mode?: string;\n moduleAliases?: Record<string, string>;\n name?: string;\n pacts?: any[];\n params?: SkyuxConfigParams; // List of allowed params\n pipelineSettings?: any;\n plugins?: string[];\n redirects?: Record<string, string>;\n remoteModules?: SkyuxConfigRemoteModules;\n routes?: {\n public?: {\n title?: string;\n description?: string;\n global?: boolean;\n route: string;\n claims?: SkyuxConfigAnyAllSet;\n entitlementType?: string;\n entitlements?: SkyuxConfigAnyAllSet;\n permissionId?: string;\n permissions?: {\n admin?: boolean;\n legalEntityAdmin?: boolean;\n permissionIds?: SkyuxConfigAnyAllSet;\n };\n }[];\n referenced?: {\n app: string;\n route: string;\n }[];\n };\n testSettings?: SkyuxConfigTestSettings;\n omnibar?: any;\n useHashRouting?: boolean;\n skyuxModules?: string[];\n}\n\n@Injectable()\nexport class SkyAppConfig {\n // Any properties dynamically added via code\n public runtime!: RuntimeConfig;\n\n // Any properties defined in or inherited from skyuxconfig.json / skyuxconfig.command.json\n public skyux!: SkyuxConfig;\n}\n","import { HttpParams, HttpUrlEncodingCodec } from '@angular/common/http';\n\nimport { SkyuxConfigParams } from './config-params';\nimport { SkyConfigGetLinkUrlOptions } from './types/get-link-url-options';\nimport { SkyConfigQueryParams } from './types/query-params';\n\n/**\n * Override Angular's default encoder because it excludes certain characters.\n * @see https://github.com/angular/angular/blob/cb31dbc75ca4141d61cec3ba6e60505198208a0a/packages/common/http/src/params.ts#L96-L111\n */\nclass UrlEncoder extends HttpUrlEncodingCodec {\n public override encodeKey(key: string | number | boolean): string {\n return encodeURIComponent(key);\n }\n\n public override encodeValue(key: string | number | boolean): string {\n return encodeURIComponent(key);\n }\n}\n\n/**\n * Given a \"url\" (could be just querystring, or fully qualified),\n * Returns the extracted HttpParams.\n */\nfunction getUrlSearchParams(url: string): HttpParams {\n let qs = '';\n\n if (url.indexOf('?') > -1) {\n qs = url.split('?')[1];\n qs = qs.split('#')[0];\n }\n\n return new HttpParams({\n encoder: new UrlEncoder(),\n fromString: qs,\n });\n}\n\nexport class SkyAppRuntimeConfigParams {\n #params: Record<string, string> = {};\n\n #defaultParamValues: Record<string, string> = {};\n\n #requiredParams: string[] = [];\n\n #encodedParams: string[] = [];\n\n #excludeFromLinksParams = new Set<string>();\n #excludeFromRequestsParams = new Set<string>();\n\n constructor(url: string, configParams: SkyuxConfigParams) {\n const allowed: string[] = [];\n\n for (const paramName of Object.keys(configParams)) {\n const configParam = configParams[paramName];\n\n // The config param could be present but be set to false/undefined indicating\n // an override of the default parameter.\n if (configParam) {\n allowed.push(paramName);\n\n // A boolean value may be present to simply indicate that a parameter is allowed.\n // If the type is object, look for additional config properties.\n if (typeof configParam === 'object') {\n const paramValue = configParam.value;\n\n if (configParam.required) {\n this.#requiredParams.push(paramName);\n }\n\n if (paramValue) {\n this.#params[paramName] = paramValue;\n this.#defaultParamValues[paramName] = paramValue;\n }\n\n if (configParam.excludeFromLinks) {\n this.#excludeFromLinksParams.add(paramName);\n }\n\n if (configParam.excludeFromRequests) {\n this.#excludeFromRequestsParams.add(paramName);\n }\n }\n }\n }\n\n const httpParams = getUrlSearchParams(url);\n\n // Get uppercase keys.\n const allowedKeysUC = allowed.map((key) => key.toUpperCase());\n const urlSearchParamKeys = Array.from(httpParams.keys());\n\n // Filter to allowed params and override default values.\n urlSearchParamKeys.forEach((givenKey) => {\n const givenKeyUC = givenKey.toUpperCase();\n allowedKeysUC.forEach((allowedKeyUC, index) => {\n if (givenKeyUC === allowedKeyUC) {\n const param = httpParams.get(givenKey);\n\n if (param) {\n this.#params[allowed[index]] = param;\n this.#encodedParams.push(givenKey);\n }\n }\n });\n });\n }\n\n /**\n * Does the key exist\n */\n public has(key: string): boolean {\n return Object.prototype.hasOwnProperty.call(this.#params, key);\n }\n\n /**\n * Are all the required params defined?\n */\n public hasAllRequiredParams(): boolean {\n if (this.#requiredParams.length === 0) {\n return true;\n }\n\n return this.#requiredParams.every((param: string) => {\n return this.#params[param] !== undefined;\n });\n }\n\n /**\n * Returns a flag indicating whether a parameter is required.\n */\n public isRequired(key: string): boolean {\n return this.#requiredParams.indexOf(key) >= 0;\n }\n\n /**\n * Returns the decoded value of the requested param.\n * @param key The parameter's key.\n */\n public get(key: string): string | undefined {\n if (this.has(key)) {\n return this.#params[key];\n }\n\n return;\n }\n\n /**\n * Returns the params object.\n * @param excludeDefaults Exclude params that have default values\n */\n public getAll(excludeDefaults?: boolean): Record<string, string> {\n const filteredParams: Record<string, string> = {};\n\n this.getAllKeys().forEach((key) => {\n if (\n !excludeDefaults ||\n this.#params[key] !== this.#defaultParamValues[key]\n ) {\n filteredParams[key] = this.#params[key];\n }\n });\n\n return filteredParams;\n }\n\n /**\n * Returns all keys for current params.\n */\n public getAllKeys(): string[] {\n return Object.keys(this.#params);\n }\n\n /**\n * Adds the current params to the supplied URL.\n */\n public getUrl(url: string): string {\n return this.#buildUrlWithParams(url, this.#excludeFromRequestsParams);\n }\n\n /**\n * Adds the current params to the supplied link URL.\n * @param url The url to update.\n * @param options Options used to create link URLs.\n */\n public getLinkUrl(url: string, options?: SkyConfigGetLinkUrlOptions): string {\n return this.#buildUrlWithParams(\n url,\n new Set([\n ...this.#excludeFromRequestsParams,\n ...this.#excludeFromLinksParams,\n ]),\n options?.queryParams,\n );\n }\n\n #buildUrlWithParams(\n url: string,\n excludeParams: Set<string>,\n queryParams?: SkyConfigQueryParams,\n ): string {\n const urlParams = getUrlSearchParams(url);\n\n // Determine if the url params need to be modified.\n const urlParamsRequireModification = urlParams\n .keys()\n .some((key) => excludeParams.has(key) || queryParams?.[key]);\n\n const [beforeFragment, fragment] = url.split('#', 2);\n\n const root = urlParamsRequireModification\n ? beforeFragment.split('?')[0]\n : beforeFragment;\n\n let unifiedParams = urlParamsRequireModification\n ? urlParams\n : getUrlSearchParams('');\n\n // Remove excluded params.\n if (urlParamsRequireModification) {\n for (const paramName of excludeParams.keys()) {\n unifiedParams = unifiedParams.delete(paramName);\n }\n }\n\n // Add provided parameters to the URL.\n if (queryParams) {\n for (const [paramName, decodedValue] of Object.entries(queryParams)) {\n if (decodedValue !== undefined) {\n unifiedParams = unifiedParams.set(paramName, decodedValue);\n }\n }\n }\n\n // Respect pre-existing params which already have values.\n for (const key of this.getAllKeys()) {\n if (\n !excludeParams.has(key) &&\n !urlParams.has(key) &&\n !unifiedParams.has(key)\n ) {\n const decodedValue = this.get(key);\n if (decodedValue) {\n unifiedParams = unifiedParams.append(key, decodedValue);\n }\n }\n }\n\n // Combine all requested parameters and their values, e.g. 'a=b'.\n const joinedParams = unifiedParams.toString();\n const delimiter = root.includes('?') ? '&' : '?';\n\n // Build and return the final URL.\n return (\n root +\n (joinedParams.length === 0 ? '' : `${delimiter}${joinedParams}`) +\n (fragment ? `#${fragment}` : '')\n );\n }\n}\n","import { Injectable, Optional } from '@angular/core';\n\nimport { SkyAppConfigParams } from './app-config-params';\nimport { SkyAppRuntimeConfigParams } from './params';\n\n/**\n * Provides methods to interact with runtime config query parameters.\n * @deprecated Use `SkyAppConfig.runtime.params` instead.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class SkyAppRuntimeConfigParamsProvider {\n public get params(): SkyAppRuntimeConfigParams {\n return this.#_params;\n }\n\n #_params: SkyAppRuntimeConfigParams;\n\n constructor(@Optional() configParams?: SkyAppConfigParams) {\n this.#_params = new SkyAppRuntimeConfigParams(\n window.location.href,\n configParams?.params || {},\n );\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["DEFAULTS","i1.SkyAppConfigParams"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"skyux-config.mjs","sources":["../../../../../libs/components/config/src/lib/app-config-host.ts","../../../../../libs/components/config/src/lib/app-config-params.ts","../../../../../libs/components/config/src/lib/app-config.module.ts","../../../../../libs/components/config/src/lib/config.ts","../../../../../libs/components/config/src/lib/params.ts","../../../../../libs/components/config/src/lib/params-provider.ts","../../../../../libs/components/config/src/skyux-config.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\nimport { SkyuxConfigHost } from './config';\n\nconst DEFAULTS: SkyuxConfigHost = {\n frameOptions: {\n none: true,\n },\n url: 'https://host.nxt.blackbaud.com/',\n};\n\n/**\n * Host configuration for components and applications.\n * @deprecated Use `SkyAppConfig.skyux.host` instead.\n */\n@Injectable()\nexport class SkyAppConfigHost {\n public get host(): SkyuxConfigHost {\n return this.#_host;\n }\n\n #_host!: SkyuxConfigHost;\n\n public init(config?: SkyuxConfigHost): void {\n this.#_host = {\n ...DEFAULTS,\n ...(config || {}),\n };\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { SkyuxConfigParams } from './config-params';\n\nconst DEFAULTS: SkyuxConfigParams = {\n envid: {\n required: false,\n },\n leid: {\n required: false,\n },\n svcid: {\n required: false,\n },\n};\n\n/**\n * @deprecated Use `SkyAppConfig.skyux.params` instead.\n */\n@Injectable()\nexport class SkyAppConfigParams {\n public get params(): SkyuxConfigParams {\n return this.#_params;\n }\n\n #_params!: SkyuxConfigParams;\n\n public init(params?: SkyuxConfigParams): void {\n this.#_params = {\n ...DEFAULTS,\n ...(params || {}),\n };\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { SkyAppConfigHost } from './app-config-host';\nimport { SkyAppConfigModuleForRootArgs } from './app-config-module-for-root-args';\nimport { SkyAppConfigParams } from './app-config-params';\n\n/**\n * @deprecated Provide `SkyAppConfig` at the root instead.\n */\n@NgModule({})\nexport class SkyAppConfigModule {\n public static forRoot(\n config: SkyAppConfigModuleForRootArgs = {},\n ): ModuleWithProviders<SkyAppConfigModule> {\n return {\n ngModule: SkyAppConfigModule,\n providers: [\n {\n provide: SkyAppConfigParams,\n useFactory(): SkyAppConfigParams {\n const appConfigParams = new SkyAppConfigParams();\n appConfigParams.init(config.params);\n return appConfigParams;\n },\n },\n {\n provide: SkyAppConfigHost,\n useFactory(): SkyAppConfigHost {\n const appConfigHost = new SkyAppConfigHost();\n appConfigHost.init(config.host);\n return appConfigHost;\n },\n },\n ],\n };\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { SkyuxConfigParams } from './config-params';\nimport { SkyuxConfigRemoteModules } from './config-remote-modules';\nimport { SkyAppRuntimeConfigParams } from './params';\n\nexport interface RuntimeConfigApp {\n base: string;\n inject: boolean;\n name?: string;\n template: string;\n}\n\n/**\n * @experimental\n */\nexport interface SkyuxRuntimeConfigLocalDev {\n assetsBaseUrl?: string;\n hasRemoteModules?: boolean;\n}\n\nexport class SkyuxPactConfig {\n public providers?: Record<\n string,\n {\n host?: string;\n port?: string;\n fullUrl?: string;\n }\n >;\n public pactProxyServer?: string;\n}\n\nexport interface SkyuxConfigE2ETestSettings {\n browserSet?: 'speedy';\n}\n\nexport interface SkyuxConfigUnitTestSettings {\n browserSet?: 'speedy' | 'quirky' | 'paranoid';\n}\n\nexport interface SkyuxConfigTestSettings {\n e2e?: SkyuxConfigE2ETestSettings;\n unit?: SkyuxConfigUnitTestSettings;\n}\n\nexport interface SkyuxConfigLibrarySettings {\n whitelistedNonPeerDependencies?: string[];\n}\n\nexport interface RuntimeConfig {\n app: RuntimeConfigApp;\n command?: string; // Dynamically added in \"higher up\" webpacks\n componentsPattern: string;\n componentsIgnorePattern: string;\n handle404?: boolean; // Dynamically added in sky-pages-module-generator.js\n includeRouteModule: boolean;\n pactConfig?: SkyuxPactConfig;\n params: SkyAppRuntimeConfigParams;\n routes?: object[]; // Dynamically added in sky-pages-module-generator.js\n routesPattern: string;\n runtimeAlias: string;\n spaPathAlias: string;\n skyPagesOutAlias: string;\n skyuxPathAlias: string;\n srcPath: string;\n useTemplateUrl: boolean;\n localDev?: SkyuxRuntimeConfigLocalDev;\n}\n\nexport interface SkyuxConfigA11y {\n rules?: any;\n}\n\nexport type SkyuxConfigAppSupportedTheme = 'default' | 'modern';\n\nexport interface SkyuxConfigAppBrand {\n name: string;\n version: string;\n}\n\nexport interface SkyuxConfigAppTheming {\n supportedThemes: SkyuxConfigAppSupportedTheme[];\n theme: SkyuxConfigAppSupportedTheme;\n brand?: SkyuxConfigAppBrand;\n}\n\nexport interface SkyuxConfigApp {\n base?: string;\n externals?: object;\n port?: string;\n styles?: string[];\n theming?: SkyuxConfigAppTheming;\n title?: string;\n}\n\nexport interface SkyuxConfigAuthSettings {\n blackbaudEmployee?: boolean;\n}\n\nexport interface SkyuxConfigHostBBCheckout {\n version: '2';\n}\n\nexport interface SkyuxConfigHostFrameOptionsNone {\n blackbaud?: false;\n none: true;\n self?: false;\n urls?: string[];\n}\n\nexport interface SkyuxConfigHostFrameOptionsOthers {\n blackbaud?: boolean;\n none?: false;\n self?: boolean;\n urls?: string[];\n}\n\nexport type SkyuxConfigHostCspDirectives = Record<string, string[]>;\n\nexport interface SkyuxConfigHostCsp {\n enabled: boolean;\n directives?: SkyuxConfigHostCspDirectives;\n}\n\n/**\n * Blackbaud Only - Specifies configuration options for communication with SKY UX Host.\n */\nexport interface SkyuxConfigHost {\n bbCheckout?: SkyuxConfigHostBBCheckout;\n csp?: SkyuxConfigHostCsp;\n frameOptions?:\n | SkyuxConfigHostFrameOptionsNone\n | SkyuxConfigHostFrameOptionsOthers;\n url?: string;\n}\n\nexport interface SkyuxConfigAnyAllSet {\n any?: string[];\n all?: string[];\n}\n\nexport interface SkyuxConfig {\n $schema?: string;\n a11y?: SkyuxConfigA11y | boolean;\n angularSettings?: {\n defaultProject: string;\n };\n app?: SkyuxConfigApp;\n appSettings?: any;\n auth?: boolean;\n authSettings?: SkyuxConfigAuthSettings;\n codeCoverageThreshold?: 'none' | 'standard' | 'strict';\n command?: string;\n compileMode?: string;\n cssPath?: string;\n dependenciesForTranspilation?: string[];\n enableIvy?: boolean;\n help?: any;\n host?: SkyuxConfigHost;\n importPath?: string;\n librarySettings?: SkyuxConfigLibrarySettings;\n mode?: string;\n moduleAliases?: Record<string, string>;\n name?: string;\n pacts?: any[];\n params?: SkyuxConfigParams; // List of allowed params\n pipelineSettings?: any;\n plugins?: string[];\n redirects?: Record<string, string>;\n remoteModules?: SkyuxConfigRemoteModules;\n routes?: {\n public?: {\n title?: string;\n description?: string;\n global?: boolean;\n route: string;\n claims?: SkyuxConfigAnyAllSet;\n entitlementType?: string;\n entitlements?: SkyuxConfigAnyAllSet;\n permissionId?: string;\n permissions?: {\n admin?: boolean;\n legalEntityAdmin?: boolean;\n permissionIds?: SkyuxConfigAnyAllSet;\n };\n }[];\n referenced?: {\n app: string;\n route: string;\n }[];\n };\n testSettings?: SkyuxConfigTestSettings;\n omnibar?: any;\n useHashRouting?: boolean;\n skyuxModules?: string[];\n}\n\n@Injectable()\nexport class SkyAppConfig {\n // Any properties dynamically added via code\n public runtime!: RuntimeConfig;\n\n // Any properties defined in or inherited from skyuxconfig.json / skyuxconfig.command.json\n public skyux!: SkyuxConfig;\n}\n","import { HttpParams, HttpUrlEncodingCodec } from '@angular/common/http';\n\nimport { SkyuxConfigParams } from './config-params';\nimport { SkyConfigGetLinkUrlOptions } from './types/get-link-url-options';\nimport { SkyConfigQueryParams } from './types/query-params';\n\n/**\n * Override Angular's default encoder because it excludes certain characters.\n * @see https://github.com/angular/angular/blob/cb31dbc75ca4141d61cec3ba6e60505198208a0a/packages/common/http/src/params.ts#L96-L111\n */\nclass UrlEncoder extends HttpUrlEncodingCodec {\n public override encodeKey(key: string | number | boolean): string {\n return encodeURIComponent(key);\n }\n\n public override encodeValue(key: string | number | boolean): string {\n return encodeURIComponent(key);\n }\n}\n\n/**\n * Given a \"url\" (could be just querystring, or fully qualified),\n * Returns the extracted HttpParams.\n */\nfunction getUrlSearchParams(url: string): HttpParams {\n let qs = '';\n\n if (url.indexOf('?') > -1) {\n qs = url.split('?')[1];\n qs = qs.split('#')[0];\n }\n\n return new HttpParams({\n encoder: new UrlEncoder(),\n fromString: qs,\n });\n}\n\nexport class SkyAppRuntimeConfigParams {\n #params: Record<string, string> = {};\n\n #defaultParamValues: Record<string, string> = {};\n\n #requiredParams: string[] = [];\n\n #encodedParams: string[] = [];\n\n #excludeFromLinksParams = new Set<string>();\n #excludeFromRequestsParams = new Set<string>();\n\n constructor(url: string, configParams: SkyuxConfigParams) {\n const allowed: string[] = [];\n\n for (const paramName of Object.keys(configParams)) {\n const configParam = configParams[paramName];\n\n // The config param could be present but be set to false/undefined indicating\n // an override of the default parameter.\n if (configParam) {\n allowed.push(paramName);\n\n // A boolean value may be present to simply indicate that a parameter is allowed.\n // If the type is object, look for additional config properties.\n if (typeof configParam === 'object') {\n const paramValue = configParam.value;\n\n if (configParam.required) {\n this.#requiredParams.push(paramName);\n }\n\n if (paramValue) {\n this.#params[paramName] = paramValue;\n this.#defaultParamValues[paramName] = paramValue;\n }\n\n if (configParam.excludeFromLinks) {\n this.#excludeFromLinksParams.add(paramName);\n }\n\n if (configParam.excludeFromRequests) {\n this.#excludeFromRequestsParams.add(paramName);\n }\n }\n }\n }\n\n const httpParams = getUrlSearchParams(url);\n\n // Get uppercase keys.\n const allowedKeysUC = allowed.map((key) => key.toUpperCase());\n const urlSearchParamKeys = Array.from(httpParams.keys());\n\n // Filter to allowed params and override default values.\n urlSearchParamKeys.forEach((givenKey) => {\n const givenKeyUC = givenKey.toUpperCase();\n allowedKeysUC.forEach((allowedKeyUC, index) => {\n if (givenKeyUC === allowedKeyUC) {\n const param = httpParams.get(givenKey);\n\n if (param) {\n this.#params[allowed[index]] = param;\n this.#encodedParams.push(givenKey);\n }\n }\n });\n });\n }\n\n /**\n * Does the key exist\n */\n public has(key: string): boolean {\n return Object.prototype.hasOwnProperty.call(this.#params, key);\n }\n\n /**\n * Are all the required params defined?\n */\n public hasAllRequiredParams(): boolean {\n if (this.#requiredParams.length === 0) {\n return true;\n }\n\n return this.#requiredParams.every((param: string) => {\n return this.#params[param] !== undefined;\n });\n }\n\n /**\n * Returns a flag indicating whether a parameter is required.\n */\n public isRequired(key: string): boolean {\n return this.#requiredParams.indexOf(key) >= 0;\n }\n\n /**\n * Returns the decoded value of the requested param.\n * @param key The parameter's key.\n */\n public get(key: string): string | undefined {\n if (this.has(key)) {\n return this.#params[key];\n }\n\n return;\n }\n\n /**\n * Returns the params object.\n * @param excludeDefaults Exclude params that have default values\n */\n public getAll(excludeDefaults?: boolean): Record<string, string> {\n const filteredParams: Record<string, string> = {};\n\n this.getAllKeys().forEach((key) => {\n if (\n !excludeDefaults ||\n this.#params[key] !== this.#defaultParamValues[key]\n ) {\n filteredParams[key] = this.#params[key];\n }\n });\n\n return filteredParams;\n }\n\n /**\n * Returns all keys for current params.\n */\n public getAllKeys(): string[] {\n return Object.keys(this.#params);\n }\n\n /**\n * Adds the current params to the supplied URL.\n */\n public getUrl(url: string): string {\n return this.#buildUrlWithParams(url, this.#excludeFromRequestsParams);\n }\n\n /**\n * Adds the current params to the supplied link URL.\n * @param url The url to update.\n * @param options Options used to create link URLs.\n */\n public getLinkUrl(url: string, options?: SkyConfigGetLinkUrlOptions): string {\n return this.#buildUrlWithParams(\n url,\n new Set([\n ...this.#excludeFromRequestsParams,\n ...this.#excludeFromLinksParams,\n ]),\n options?.queryParams,\n );\n }\n\n #buildUrlWithParams(\n url: string,\n excludeParams: Set<string>,\n queryParams?: SkyConfigQueryParams,\n ): string {\n const urlParams = getUrlSearchParams(url);\n\n // Determine if the url params need to be modified.\n const urlParamsRequireModification = urlParams\n .keys()\n .some((key) => excludeParams.has(key) || queryParams?.[key]);\n\n const [beforeFragment, fragment] = url.split('#', 2);\n\n const root = urlParamsRequireModification\n ? beforeFragment.split('?')[0]\n : beforeFragment;\n\n let unifiedParams = urlParamsRequireModification\n ? urlParams\n : getUrlSearchParams('');\n\n // Remove excluded params.\n if (urlParamsRequireModification) {\n for (const paramName of excludeParams.keys()) {\n unifiedParams = unifiedParams.delete(paramName);\n }\n }\n\n // Add provided parameters to the URL.\n if (queryParams) {\n for (const [paramName, decodedValue] of Object.entries(queryParams)) {\n if (decodedValue !== undefined) {\n unifiedParams = unifiedParams.set(paramName, decodedValue);\n }\n }\n }\n\n // Respect pre-existing params which already have values.\n for (const key of this.getAllKeys()) {\n if (\n !excludeParams.has(key) &&\n !urlParams.has(key) &&\n !unifiedParams.has(key)\n ) {\n const decodedValue = this.get(key);\n if (decodedValue) {\n unifiedParams = unifiedParams.append(key, decodedValue);\n }\n }\n }\n\n // Combine all requested parameters and their values, e.g. 'a=b'.\n const joinedParams = unifiedParams.toString();\n const delimiter = root.includes('?') ? '&' : '?';\n\n // Build and return the final URL.\n return (\n root +\n (joinedParams.length === 0 ? '' : `${delimiter}${joinedParams}`) +\n (fragment ? `#${fragment}` : '')\n );\n }\n}\n","import { Injectable, Optional } from '@angular/core';\n\nimport { SkyAppConfigParams } from './app-config-params';\nimport { SkyAppRuntimeConfigParams } from './params';\n\n/**\n * Provides methods to interact with runtime config query parameters.\n * @deprecated Use `SkyAppConfig.runtime.params` instead.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class SkyAppRuntimeConfigParamsProvider {\n public get params(): SkyAppRuntimeConfigParams {\n return this.#_params;\n }\n\n #_params: SkyAppRuntimeConfigParams;\n\n constructor(@Optional() configParams?: SkyAppConfigParams) {\n this.#_params = new SkyAppRuntimeConfigParams(\n window.location.href,\n configParams?.params || {},\n );\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["DEFAULTS","i1.SkyAppConfigParams"],"mappings":"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"}
|