@veloceapps/api 11.0.0-16 → 11.0.0-18

Sign up to get free protection for your applications and to get access to all the features.
@@ -1 +1 @@
1
- {"version":3,"file":"veloceapps-api-v2.mjs","sources":["../../../../libs/api/v2/services/configuration-processors-api.service.ts","../../../../libs/api/v2/services/context-definition-api.service.ts","../../../../libs/api/v2/services/procedures-admin-api.service.ts","../../../../libs/api/v2/services/procedures-api.service.ts","../../../../libs/api/v2/services/rule-groups-admin-api.service.ts","../../../../libs/api/v2/services/rules-admin-api.service.ts","../../../../libs/api/v2/services/rules-api.service.ts","../../../../libs/api/v2/services/sales-transactions-api.service.ts","../../../../libs/api/v2/services/scripts-admin-api.service.ts","../../../../libs/api/v2/services/scripts-api.service.ts","../../../../libs/api/v2/services/ui-definitions-api.service.ts","../../../../libs/api/v2/utils/ui-template.utils.ts","../../../../libs/api/v2/services/ui-templates-api.service.ts","../../../../libs/api/v2/api-v2.module.ts","../../../../libs/api/v2/veloceapps-api-v2.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseHttpService, ConfigurationProcessor } from '@veloceapps/core';\nimport { Observable } from 'rxjs';\n\n@Injectable()\nexport class ConfigurationProcessorsApiService {\n private readonly serviceUrl: string = '/v2/configuration/processors/owners';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public fetchConfigurationProcessors$ = (ownerId: string): Observable<ConfigurationProcessor[]> => {\n return this.baseHttpService.api<ConfigurationProcessor[]>({ url: `${this.serviceUrl}/${ownerId}` });\n };\n\n public createConfigurationProcessors$ = (\n configurationProcessor: ConfigurationProcessor,\n ): Observable<ConfigurationProcessor> => {\n return this.baseHttpService.api<ConfigurationProcessor>({\n method: 'post',\n url: `${this.serviceUrl}/${configurationProcessor.ownerId}`,\n body: configurationProcessor,\n });\n };\n\n public updateConfigurationProcessors$ = (\n configurationProcessor: ConfigurationProcessor,\n ): Observable<ConfigurationProcessor> => {\n return this.baseHttpService.api<ConfigurationProcessor>({\n method: 'put',\n url: `${this.serviceUrl}/${configurationProcessor.ownerId}/${configurationProcessor.id}`,\n body: configurationProcessor,\n });\n };\n\n public deleteConfigurationProcessors$ = (configurationProcessor: ConfigurationProcessor): Observable<void> => {\n return this.baseHttpService.api({\n method: 'delete',\n url: `${this.serviceUrl}/${configurationProcessor.ownerId}/${configurationProcessor.id}`,\n });\n };\n}\n","import { Injectable } from '@angular/core';\nimport {\n BaseHttpService,\n BEContextDefinitionStructure,\n ContextDefinition,\n ContextDefinitionStructure,\n ContextMapping,\n RlmProcedure,\n} from '@veloceapps/core';\nimport { Observable, of } from 'rxjs';\nimport { catchError, map } from 'rxjs/operators';\n\n@Injectable()\nexport class ContextDefinitionApiService {\n private readonly serviceUrl: string = '/v2/context-definition';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public fetchContextDefinitions$(): Observable<ContextDefinition[]> {\n return this.baseHttpService.api<ContextDefinition[]>({ url: `${this.serviceUrl}`, skipErrorHandler: true }).pipe(\n catchError(() => {\n return of([]);\n }),\n );\n }\n\n public fetchContextMappings$(id: string): Observable<ContextMapping[]> {\n return this.baseHttpService.api<ContextMapping[]>({ url: `${this.serviceUrl}/${id}/mappings` });\n }\n\n public fetchContextDefinitionStructure$(id: string): Observable<ContextDefinitionStructure> {\n return this.baseHttpService\n .api<BEContextDefinitionStructure>({\n url: `${this.serviceUrl}/${id}/structure/details`,\n skipErrorHandler: true,\n })\n .pipe(\n catchError(() => {\n return of([]);\n }),\n map(objects => {\n return objects.map(object => {\n const tag = object.tags?.[0]?.title;\n const objectAttributes = object.attributes || [];\n return {\n id: object.id,\n title: tag || object.title,\n attributes: objectAttributes.map(attribute => {\n const tag = attribute.tags?.[0]?.title;\n return {\n title: tag || attribute.title,\n fieldType: attribute.fieldType,\n dataType: attribute.dataType,\n };\n }),\n };\n });\n }),\n );\n }\n\n public fetchRlmProcedures(contextDefinitionId?: string): Observable<RlmProcedure[]> {\n const params: Record<string, string | string[]> = {};\n\n if (contextDefinitionId) {\n params['contextDefinitionId'] = contextDefinitionId;\n }\n\n return this.baseHttpService.api<RlmProcedure[]>({\n url: `${this.serviceUrl}/procedures`,\n params,\n });\n }\n}\n","import { HttpParams } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { BaseHttpService, Expression, NewProcedure, Procedure } from '@veloceapps/core';\nimport { map, Observable } from 'rxjs';\nimport { CloneRequest } from '../types';\n\n@Injectable()\nexport class ProceduresAdminApiService {\n private readonly SERVICE_URL: string = '/v2/admin/procedures';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public fetchProcedures$ = (): Observable<Procedure[]> => {\n return this.searchProcedures$(new Expression(), 0, 100);\n };\n\n public searchProcedures$ = (expression: Expression, skip: number, count: number): Observable<Procedure[]> => {\n let params = new HttpParams();\n params = params.set('skip', '' + skip);\n params = params.set('count', '' + count);\n return this.baseHttpService.api({\n method: 'post',\n url: `${this.SERVICE_URL}/search`,\n params,\n body: expression,\n });\n };\n\n public createProcedure$ = (newProcedure: NewProcedure): Observable<Procedure> => {\n return this.baseHttpService.api<Procedure>({\n url: `${this.SERVICE_URL}`,\n method: 'post',\n body: newProcedure,\n });\n };\n\n public updateProcedure$ = (procedure: Procedure): Observable<Procedure> => {\n return this.baseHttpService.api<Procedure>({\n url: `${this.SERVICE_URL}/${procedure.id}`,\n method: 'put',\n body: procedure,\n });\n };\n\n public duplicateProcedure$ = (body: CloneRequest): Observable<string> => {\n return this.baseHttpService\n .api({\n url: `${this.SERVICE_URL}/${body.id}/clone`,\n method: 'post',\n body,\n })\n .pipe(map(response => response.clonedRecordId));\n };\n\n public removeProcedure$ = (id: string): Observable<string> => {\n return this.baseHttpService.api<string>({\n url: `${this.SERVICE_URL}/${id}`,\n method: 'delete',\n });\n };\n\n public restoreProcedure$ = (id: string): Observable<string> => {\n return this.baseHttpService.api<string>({\n url: `${this.SERVICE_URL}/${id}/restore`,\n method: 'patch',\n });\n };\n\n public fetchProcedure$(id: string): Observable<Procedure> {\n return this.baseHttpService.api<Procedure>({\n url: `${this.SERVICE_URL}/${id}`,\n method: 'get',\n });\n }\n\n /**\n * @deprecated\n */\n public fetchDefaultPricingSteps$(): Observable<any> {\n return this.baseHttpService.api<Procedure>({\n url: `/admin/procedures/pricing-steps`,\n method: 'get',\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { BaseHttpService, HttpRequestConfigurableOptions, ProcedureExecuteRequest } from '@veloceapps/core';\nimport { Observable } from 'rxjs';\nimport { ProcedureApplyRequest, ProcedureApplyResponse } from '../types';\n\n@Injectable()\nexport class ProceduresApiService {\n private readonly SERVICE_URL: string = '/v2/procedures';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public apply$(\n request: ProcedureApplyRequest,\n options?: HttpRequestConfigurableOptions,\n ): Observable<ProcedureApplyResponse> {\n return this.baseHttpService.api<ProcedureApplyResponse>({\n url: `${this.SERVICE_URL}/apply`,\n method: 'post',\n body: request,\n ...options,\n });\n }\n\n public execute$(body: ProcedureExecuteRequest) {\n return this.baseHttpService.api<string[]>({\n url: `${this.SERVICE_URL}/execute`,\n method: 'post',\n body,\n });\n }\n\n public catalogExecute$(body: ProcedureExecuteRequest) {\n return this.baseHttpService.api<string[]>({\n url: `${this.SERVICE_URL}/catalog/execute`,\n method: 'post',\n body,\n });\n }\n\n public rlmExecute$(body: ProcedureExecuteRequest) {\n return this.baseHttpService.api<string[]>({\n url: `${this.SERVICE_URL}/rlm/execute`,\n method: 'post',\n body,\n });\n }\n}\n","import { HttpParams } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { BaseHttpService, Expression, NewRuleGroup, RuleGroup } from '@veloceapps/core';\nimport { map, Observable } from 'rxjs';\nimport { CloneRequest } from '../types/clone-request.types';\n\n@Injectable()\nexport class RuleGroupsAdminApiService {\n private readonly serviceUrl: string = '/v2/admin/rule-groups';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public fetchRuleGroups$ = (): Observable<RuleGroup[]> => {\n return this.searchRuleGroups$(new Expression(), 0, 100);\n };\n\n public searchRuleGroups$ = (expression: Expression, skip: number, count: number): Observable<RuleGroup[]> => {\n let params = new HttpParams();\n params = params.set('skip', '' + skip);\n params = params.set('count', '' + count);\n return this.baseHttpService.api({ method: 'post', url: `${this.serviceUrl}/search`, params, body: expression });\n };\n\n public createRuleGroup$ = (ruleGroup: NewRuleGroup): Observable<RuleGroup> => {\n return this.baseHttpService.api<RuleGroup>({\n url: `${this.serviceUrl}`,\n method: 'post',\n body: ruleGroup,\n });\n };\n\n public updateRuleGroup$ = (ruleGroup: RuleGroup): Observable<RuleGroup> => {\n return this.baseHttpService.api<RuleGroup>({\n url: `${this.serviceUrl}/${ruleGroup.id}`,\n method: 'post',\n body: ruleGroup,\n });\n };\n\n public duplicateRuleGroup$ = (body: CloneRequest): Observable<string> => {\n return this.baseHttpService\n .api({\n url: `${this.serviceUrl}/${body.id}/clone`,\n method: 'post',\n body,\n })\n .pipe(map(response => response.clonedRecordId));\n };\n\n public removeRuleGroup$ = (id: string): Observable<string> => {\n return this.baseHttpService.api<string>({\n url: `${this.serviceUrl}/${id}`,\n method: 'delete',\n });\n };\n\n public restoreRuleGroup$ = (id: string): Observable<string> => {\n return this.baseHttpService.api<string>({\n url: `${this.serviceUrl}/${id}/restore`,\n method: 'patch',\n });\n };\n}\n","import { HttpParams } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport {\n BaseHttpService,\n Expression,\n HeaderField,\n NewRule,\n Rule,\n RuleExecuteRequest,\n RuleGroupTypes,\n} from '@veloceapps/core';\nimport { map, Observable } from 'rxjs';\nimport { CloneRequest } from '../types';\n\n@Injectable()\nexport class RulesAdminApiService {\n private readonly serviceUrl: string = '/v2/admin/rules';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public fetchRules$ = (): Observable<Rule[]> => {\n return this.searchRules$(new Expression(), 0, 100);\n };\n\n public searchRules$ = (expression: Expression, skip?: number, count?: number): Observable<Rule[]> => {\n let params = new HttpParams();\n if (typeof skip === 'number') {\n params = params.set('skip', '' + skip);\n }\n if (typeof count === 'number') {\n params = params.set('count', '' + count);\n }\n return this.baseHttpService.api({ method: 'post', url: `${this.serviceUrl}/search`, params, body: expression });\n };\n\n public createRule$ = (rule: NewRule): Observable<Rule> => {\n return this.baseHttpService.api<Rule>({\n url: `${this.serviceUrl}`,\n method: 'post',\n body: rule,\n });\n };\n\n public updateRule$ = (rule: Rule): Observable<Rule> => {\n return this.baseHttpService.api<Rule>({\n url: `${this.serviceUrl}/${rule.id}`,\n method: 'put',\n body: rule,\n });\n };\n\n public duplicateRule$ = (body: CloneRequest): Observable<string> => {\n return this.baseHttpService\n .api({\n url: `${this.serviceUrl}/${body.id}/clone`,\n method: 'post',\n body,\n })\n .pipe(map(response => response.clonedRecordId));\n };\n\n public removeRule$ = (id: string): Observable<string> => {\n return this.baseHttpService.api<string>({\n url: `${this.serviceUrl}/${id}`,\n method: 'delete',\n });\n };\n\n public restoreRule$ = (id: string): Observable<string> => {\n return this.baseHttpService.api<string>({\n url: `${this.serviceUrl}/${id}/restore`,\n method: 'patch',\n });\n };\n\n public fetchRule$(id: string) {\n return this.baseHttpService.api<Rule>({\n url: `${this.serviceUrl}/${id}`,\n method: 'get',\n });\n }\n\n public fetchHeaderFields$() {\n return this.baseHttpService.api<HeaderField[]>({\n url: `${this.serviceUrl}/describe/Header`,\n method: 'get',\n });\n }\n\n public execute$(body: RuleExecuteRequest) {\n const url = this.getExecuteRuleUrl(body.rule.ruleGroupType);\n return this.baseHttpService.api<string[]>({\n url,\n method: 'post',\n body,\n });\n }\n\n private getExecuteRuleUrl(ruleGroupType: RuleGroupTypes): string {\n if (ruleGroupType === RuleGroupTypes.eligibility) {\n return '/v2/rules/eligibility/execute';\n }\n\n if (ruleGroupType === RuleGroupTypes.rlmContextBased || ruleGroupType === RuleGroupTypes.generalContextBased) {\n return '/v2/rules/rlm/execute';\n }\n\n return '/v2/rules/execute';\n }\n}\n","import { Injectable } from '@angular/core';\nimport { BaseHttpService, RuleExecuteRequest, RuleGroupTypes } from '@veloceapps/core';\n\n@Injectable()\nexport class RulesApiService {\n private readonly serviceUrl: string = '/v2/rules';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public execute$(body: RuleExecuteRequest) {\n const url = this.getExecuteRuleUrl(body.rule.ruleGroupType);\n return this.baseHttpService.api<string[]>({\n url,\n method: 'post',\n body,\n });\n }\n\n private getExecuteRuleUrl(ruleGroupType: RuleGroupTypes): string {\n if (ruleGroupType === RuleGroupTypes.eligibility) {\n return `${this.serviceUrl}/eligibility/execute`;\n }\n\n if (ruleGroupType === RuleGroupTypes.catalog) {\n return `${this.serviceUrl}/catalog/execute`;\n }\n\n if (ruleGroupType === RuleGroupTypes.rlmContextBased) {\n return `${this.serviceUrl}/rlm/execute`;\n }\n\n return `${this.serviceUrl}/execute`;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Params } from '@angular/router';\nimport { BaseHttpService, HttpRequestConfigurableOptions, SalesTransaction } from '@veloceapps/core';\nimport { Observable, of } from 'rxjs';\nimport { SalesTransactionRequestParams, SalesTransactionResponse, SalesTransactionUpsertResponse } from '../types';\n\n@Injectable()\nexport class SalesTransactionApiService {\n private readonly SERVICE_URL = '/v2/transactions';\n\n constructor(private httpService: BaseHttpService) {}\n\n /**\n * This endpoint doesn't include orders and assets\n * @param objectId SF record ID (quoteId | accountId | opportunityId | orderId etc)\n * @param params Query params\n * @param options Request options\n */\n public getState(\n objectId: string,\n params?: SalesTransactionRequestParams,\n options?: HttpRequestConfigurableOptions,\n ): Observable<SalesTransactionResponse> {\n return this.httpService.api<SalesTransactionResponse>({\n method: 'get',\n url: `${this.SERVICE_URL}/${objectId}`,\n params: params as Params,\n ...options,\n });\n }\n\n public upsert(\n request: SalesTransaction,\n options?: HttpRequestConfigurableOptions,\n ): Observable<SalesTransactionUpsertResponse> {\n return of({\n id: 'ID',\n } satisfies SalesTransactionUpsertResponse);\n\n // return this.httpService.api({\n // method: 'post',\n // url: `${this.SERVICE_URL}`,\n // body: request,\n // ...options,\n // });\n }\n\n public submit(\n request: SalesTransaction,\n options?: HttpRequestConfigurableOptions,\n ): Observable<SalesTransactionUpsertResponse> {\n return of({\n id: 'ID',\n } satisfies SalesTransactionUpsertResponse);\n\n // return this.httpService.api({\n // method: 'post',\n // url: `${this.SERVICE_URL}`,\n // body: request,\n // ...options,\n // });\n }\n}\n","import { HttpParams } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { BaseHttpService, Expression, NewScript, Script, ScriptDetails } from '@veloceapps/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { CloneRequest } from '../types/clone-request.types';\n\n@Injectable()\nexport class ScriptsAdminApiService {\n private readonly serviceUrl: string = '/v2/admin/scripts';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public fetchScripts$ = (): Observable<Script[]> => {\n return this.baseHttpService.api<Script[]>({ url: `${this.serviceUrl}` });\n };\n\n public searchScripts$ = (expression: Expression, skip?: number, count?: number): Observable<Script[]> => {\n let params = new HttpParams();\n if (typeof skip === 'number') {\n params = params.set('skip', '' + skip);\n }\n if (typeof count === 'number') {\n params = params.set('count', '' + count);\n }\n return this.baseHttpService.api({ method: 'post', url: `${this.serviceUrl}/search`, params, body: expression });\n };\n\n public fetchScript$ = (id: string): Observable<ScriptDetails> => {\n return this.baseHttpService.api<ScriptDetails>({ url: `${this.serviceUrl}/${id}` });\n };\n\n public createScript$ = (script: NewScript): Observable<Script> => {\n return this.baseHttpService.api<Script>({\n url: `${this.serviceUrl}`,\n method: 'post',\n body: script,\n });\n };\n\n public updateScriptMeta$ = (script: Script): Observable<ScriptDetails> => {\n return this.baseHttpService.api<ScriptDetails>({\n url: `${this.serviceUrl}/${script.id}`,\n method: 'put',\n body: script,\n });\n };\n\n public updateScriptDetails$ = (script: ScriptDetails): Observable<ScriptDetails> => {\n return this.baseHttpService.api<ScriptDetails>({\n url: `${this.serviceUrl}/${script.id}`,\n method: 'put',\n body: script,\n });\n };\n\n public cloneScript$ = (cloneRequest: CloneRequest): Observable<string> => {\n return this.baseHttpService\n .api({\n url: `${this.serviceUrl}/${cloneRequest.id}/clone`,\n method: 'post',\n body: cloneRequest,\n })\n .pipe(map(response => response.clonedRecordId));\n };\n\n public removeScript$ = (id: string): Observable<string> => {\n return this.baseHttpService.api<string>({\n url: `${this.serviceUrl}/${id}`,\n method: 'delete',\n });\n };\n\n public restoreScript$ = (id: string): Observable<string> => {\n return this.baseHttpService.api<string>({\n url: `${this.serviceUrl}/${id}/restore`,\n method: 'patch',\n });\n };\n}\n","import { Injectable } from '@angular/core';\nimport { BaseHttpService, ScriptExecuteRequest } from '@veloceapps/core';\nimport { Observable } from 'rxjs';\n\n@Injectable()\nexport class ScriptsApiService {\n private readonly serviceUrl: string = '/v2/scripts';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public execute$ = (body: ScriptExecuteRequest): Observable<any> => {\n return this.baseHttpService.api({\n url: `${this.serviceUrl}/execute`,\n method: 'post',\n body,\n errorHandler: () => null,\n });\n };\n}\n","import { HttpParams } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport {\n BaseHttpService,\n NewUIDefinitionContainer,\n UIDefinitionContainer,\n UIDefinitionContainerDTO,\n uiDefinitionFromDTO,\n uiDefinitionToDTO,\n} from '@veloceapps/core';\nimport { omit } from 'lodash';\nimport { map, Observable } from 'rxjs';\n\n@Injectable()\nexport class UIDefinitionsApiService {\n private readonly serviceUrl: string = '/v2/uidefinitions';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public fetch$(modelId: string, version?: number): Observable<UIDefinitionContainer[]> {\n const serviceUrl = this.getServiceUrl(modelId);\n let params = new HttpParams();\n if (version != null) {\n params = params.set('modelVersion', version);\n }\n\n return this.baseHttpService\n .api<UIDefinitionContainerDTO[]>({\n method: 'get',\n url: serviceUrl,\n params: params,\n })\n .pipe(map(containers => containers.map(uiDefinitionFromDTO)));\n }\n\n public create$(modelId: string, uiDefinitionContainer: NewUIDefinitionContainer): Observable<UIDefinitionContainer> {\n const serviceUrl = this.getServiceUrl(modelId);\n const dto = {\n ...omit(uiDefinitionContainer, 'source'),\n name: uiDefinitionContainer.source.name,\n modelId: uiDefinitionContainer.source.modelId,\n templateName: uiDefinitionContainer.source.uiTemplateData?.TEMPLATE_NAME,\n rootType: uiDefinitionContainer.source.uiTemplateData?.ROOT_TYPE,\n defaultFlag: uiDefinitionContainer.source.primary,\n sourceBlob: JSON.stringify(uiDefinitionContainer.source),\n };\n\n return this.baseHttpService\n .api<UIDefinitionContainerDTO>({\n method: 'post',\n url: serviceUrl,\n body: dto,\n })\n .pipe(map(container => uiDefinitionFromDTO(container)));\n }\n\n public get$(modelId: string, uiDefinitionId: string): Observable<UIDefinitionContainer | null> {\n const serviceUrl = this.getServiceUrl(modelId);\n\n return this.baseHttpService\n .api<UIDefinitionContainerDTO>({\n method: 'get',\n url: `${serviceUrl}/${uiDefinitionId}`,\n })\n .pipe(map(container => uiDefinitionFromDTO({ ...container, id: uiDefinitionId })));\n }\n\n public update$(uiDefinitionContainer: UIDefinitionContainer): Observable<UIDefinitionContainer> {\n const serviceUrl = this.getServiceUrl(uiDefinitionContainer.modelId);\n const dto = uiDefinitionToDTO(uiDefinitionContainer);\n\n return this.baseHttpService\n .api<UIDefinitionContainerDTO>({\n method: 'put',\n url: `${serviceUrl}/${uiDefinitionContainer.id}`,\n body: dto,\n })\n .pipe(map(container => uiDefinitionFromDTO(container)));\n }\n\n public delete$(uiDefinitionContainer: UIDefinitionContainer): Observable<void> {\n const serviceUrl = this.getServiceUrl(uiDefinitionContainer.modelId);\n\n return this.baseHttpService.api({\n method: 'delete',\n url: `${serviceUrl}/${uiDefinitionContainer.id}`,\n });\n }\n\n private getServiceUrl(modelId: string): string {\n return `/models/${modelId}/uidefinitions`;\n }\n\n public fetchUIDefinitions$(params?: {\n productId?: string;\n defaultUIDefinitionId?: string;\n }): Observable<UIDefinitionContainer[]> {\n let httpParams = new HttpParams();\n if (params?.productId != null) {\n httpParams = httpParams.set('productId', params.productId);\n }\n if (params?.defaultUIDefinitionId != null) {\n httpParams = httpParams.set('defaultUIDefinitionId', params.defaultUIDefinitionId);\n }\n\n return this.baseHttpService\n .api<UIDefinitionContainerDTO[]>({\n method: 'get',\n url: this.serviceUrl,\n params: httpParams,\n })\n .pipe(map(containers => containers.map(uiDefinitionFromDTO)));\n }\n\n public fetchUIDefinition$(id: string): Observable<UIDefinitionContainer> {\n return this.baseHttpService\n .api({\n method: 'get',\n url: `${this.serviceUrl}/${id}`,\n })\n .pipe(\n map(container => uiDefinitionFromDTO({ ...container, id })),\n map(uiDefinition => {\n const result = uiDefinition;\n if (!uiDefinition.modelId && uiDefinition.source.modelId) {\n result['modelId'] = uiDefinition.source.modelId;\n }\n return result;\n }),\n );\n }\n\n public createUIDefinition$(body: any): Observable<any> {\n return this.baseHttpService.api({\n method: 'post',\n url: this.serviceUrl,\n body,\n });\n }\n\n public updateUIDefinition$(uiDefinition: any): Observable<any> {\n return this.baseHttpService.api({\n method: 'put',\n url: `${this.serviceUrl}/${uiDefinition.id}`,\n body: uiDefinition,\n });\n }\n\n public deleteUIDefinition$(id: string): Observable<any> {\n return this.baseHttpService.api({\n method: 'delete',\n url: `${this.serviceUrl}/${id}`,\n });\n }\n}\n","import { ComponentStory, ComponentStoryAttachments } from '@veloceapps/core';\nimport { UIComponentStoryDTO } from '../types/dto/ui-template-dto.types';\n\nexport const fromUIComponentStoryDTO = (\n dto: UIComponentStoryDTO,\n attachments: ComponentStoryAttachments,\n): ComponentStory => {\n return {\n id: dto.id,\n name: dto.name,\n uiComponentId: dto.uiComponentId,\n description: dto.description,\n section: attachments.json,\n template: attachments.html,\n script: attachments.js,\n styles: attachments.css,\n };\n};\n","import { HttpParams } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport {\n BaseHttpService,\n ComponentAttachments,\n ComponentStory,\n ComponentStoryAttachments,\n Expression,\n NewComponentStory,\n NewTemplateComponent,\n NewUITemplate,\n TemplateAttachmentType,\n TemplateComponent,\n UITemplate,\n} from '@veloceapps/core';\nimport { Dictionary } from 'lodash';\nimport { catchError, forkJoin, map, noop, Observable, of, switchMap } from 'rxjs';\nimport { CloneRequest } from '../types/clone-request.types';\nimport { UIComponentStoryDTO } from '../types/dto/ui-template-dto.types';\nimport { fromUIComponentStoryDTO } from '../utils/ui-template.utils';\n\n@Injectable()\nexport class UITemplatesApiService {\n private readonly serviceUrl: string = '/v2/uitemplates';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public fetchTemplates$ = (name?: string): Observable<UITemplate[]> => {\n let params = new HttpParams();\n if (name) {\n params = params.append('name', name);\n }\n\n return this.baseHttpService.api<UITemplate[]>({ url: `${this.serviceUrl}`, params });\n };\n\n public createTemplate$ = (template: NewUITemplate): Observable<UITemplate> => {\n return this.baseHttpService.api<UITemplate>({\n method: 'post',\n url: `${this.serviceUrl}`,\n body: template,\n });\n };\n\n public updateTemplate$ = (template: UITemplate): Observable<UITemplate> => {\n return this.baseHttpService.api<UITemplate>({\n method: 'put',\n url: `${this.serviceUrl}/${template.id}`,\n body: template,\n });\n };\n\n public duplicateTemplate$ = (template: UITemplate, cloneRequest: CloneRequest): Observable<string> => {\n return this.baseHttpService\n .api({\n url: `${this.serviceUrl}/${template.id}/clone`,\n method: 'post',\n body: cloneRequest,\n })\n .pipe(map(response => response.clonedRecordId));\n };\n\n public removeTemplate$ = (id: string): Observable<void> => {\n return this.baseHttpService.api({\n method: 'delete',\n url: `${this.serviceUrl}/${id}`,\n });\n };\n\n public restoreTemplate$ = (id: string): Observable<void> => {\n return this.baseHttpService.api({\n method: 'patch',\n url: `${this.serviceUrl}/${id}`,\n });\n };\n\n public searchTemplates$ = (data: {\n params?: Dictionary<string>;\n expression?: Expression;\n }): Observable<UITemplate[]> => {\n return this.baseHttpService.api({\n method: 'post',\n url: `${this.serviceUrl}/search`,\n params: data.params,\n body: data.expression,\n });\n };\n\n public fetchComponents$ = (templateId: string, name?: string): Observable<TemplateComponent[]> => {\n let params = new HttpParams();\n if (name) {\n params = params.append('name', name);\n }\n\n return this.baseHttpService.api<TemplateComponent[]>({\n url: `${this.serviceUrl}/${templateId}/components`,\n params,\n });\n };\n\n public fetchComponent$ = (templateId: string, componentId: string): Observable<TemplateComponent> => {\n return this.baseHttpService.api<TemplateComponent>({\n url: `${this.serviceUrl}/${templateId}/components/${componentId}`,\n });\n };\n\n public createComponent$ = (component: NewTemplateComponent): Observable<TemplateComponent> => {\n return this.baseHttpService.api<TemplateComponent>({\n method: 'post',\n url: `${this.serviceUrl}/${component.uiTemplateId}/components`,\n body: component,\n });\n };\n\n public updateComponent$ = (component: TemplateComponent): Observable<TemplateComponent> => {\n return this.baseHttpService.api<TemplateComponent>({\n method: 'put',\n url: `${this.serviceUrl}/${component.uiTemplateId}/components/${component.id}`,\n body: component,\n });\n };\n\n public duplicateComponent$ = (component: TemplateComponent, cloneRequest: CloneRequest): Observable<string> => {\n return this.baseHttpService\n .api({\n url: `${this.serviceUrl}/${component.uiTemplateId}/components/${component.id}/clone`,\n method: 'post',\n body: cloneRequest,\n })\n .pipe(map(response => response.clonedRecordId));\n };\n\n public removeComponent$ = (templateId: string, componentId: string): Observable<void> => {\n return this.baseHttpService.api({\n method: 'delete',\n url: `${this.serviceUrl}/${templateId}/components/${componentId}`,\n });\n };\n\n public restoreComponent$ = (templateId: string, componentId: string): Observable<void> => {\n return this.baseHttpService.api({\n method: 'patch',\n url: `${this.serviceUrl}/${templateId}/components/${componentId}`,\n });\n };\n\n public searchComponents$ = (\n templateId: string,\n data: { params?: Dictionary<string>; expression?: Expression },\n ): Observable<TemplateComponent[]> => {\n return this.baseHttpService.api({\n method: 'post',\n url: `${this.serviceUrl}/${templateId}/components/search`,\n params: data.params,\n body: data.expression,\n });\n };\n\n public fetchStoryAttachment = (\n templateId: string,\n componentId: string,\n storyId: string,\n type: TemplateAttachmentType,\n ): Observable<string> => {\n return this.baseHttpService\n .api<string>({\n url: `${this.serviceUrl}/${templateId}/components/${componentId}/stories/${storyId}/attachments/${type}/file`,\n responseType: 'text',\n errorHandler: noop,\n })\n .pipe(catchError(() => of('')));\n };\n\n private convertToComponentStory$ = (\n templateId: string,\n componentId: string,\n storyDto: UIComponentStoryDTO,\n ): Observable<ComponentStory> => {\n return forkJoin([\n this.fetchStoryAttachment(templateId, componentId, storyDto.id, 'html'),\n this.fetchStoryAttachment(templateId, componentId, storyDto.id, 'js'),\n this.fetchStoryAttachment(templateId, componentId, storyDto.id, 'css'),\n this.fetchStoryAttachment(templateId, componentId, storyDto.id, 'json'),\n ]).pipe(\n map(([html, js, css, json]) => ({ html, js, css, json })),\n map(attachments => fromUIComponentStoryDTO(storyDto, attachments)),\n );\n };\n\n public fetchStories$ = (templateId: string, componentId: string, name?: string): Observable<ComponentStory[]> => {\n let params = new HttpParams();\n if (name) {\n params = params.append('name', name);\n }\n\n return this.baseHttpService\n .api<UIComponentStoryDTO[]>({\n url: `${this.serviceUrl}/${templateId}/components/${componentId}/stories`,\n params,\n })\n .pipe(\n switchMap(dtos => {\n if (!dtos.length) {\n return of([]);\n }\n return forkJoin(dtos.map(dto => this.convertToComponentStory$(templateId, componentId, dto)));\n }),\n );\n };\n\n public fetchStory$ = (templateId: string, componentId: string, storyId: string): Observable<ComponentStory> => {\n return this.baseHttpService\n .api<UIComponentStoryDTO>({\n url: `${this.serviceUrl}/${templateId}/components/${componentId}/stories/${storyId}`,\n })\n .pipe(switchMap(dto => this.convertToComponentStory$(templateId, componentId, dto)));\n };\n\n public createComponentStory$ = (templateId: string, story: NewComponentStory): Observable<ComponentStory> => {\n return this.baseHttpService.api<ComponentStory>({\n method: 'post',\n url: `${this.serviceUrl}/${templateId}/components/${story.uiComponentId}/stories`,\n body: story,\n });\n };\n\n public updateComponentStory$ = (templateId: string, story: ComponentStory): Observable<ComponentStory> => {\n const { script, template, styles, section, ...rest } = story;\n\n return this.baseHttpService\n .api<UIComponentStoryDTO>({\n method: 'put',\n url: `${this.serviceUrl}/${templateId}/components/${story.uiComponentId}/stories/${story.id}`,\n body: rest,\n })\n .pipe(map(dto => fromUIComponentStoryDTO(dto, { html: template, js: script, css: styles, json: section })));\n };\n\n public duplicateComponentStory$ = (story: ComponentStory, cloneRequest: CloneRequest): Observable<string> => {\n return this.baseHttpService\n .api({\n url: `${this.serviceUrl}/${story.template}/components/${story.uiComponentId}/stories/${story.id}/clone`,\n method: 'post',\n body: cloneRequest,\n })\n .pipe(map(response => response.clonedRecordId));\n };\n\n public deleteComponentStory$ = (templateId: string, componentId: string, storyId: string): Observable<void> => {\n return this.baseHttpService.api({\n method: 'delete',\n url: `${this.serviceUrl}/${templateId}/components/${componentId}/stories/${storyId}`,\n });\n };\n\n public restoreComponentStory$ = (templateId: string, componentId: string, storyId: string): Observable<void> => {\n return this.baseHttpService.api({\n method: 'patch',\n url: `${this.serviceUrl}/${templateId}/components/${componentId}/stories/${storyId}`,\n });\n };\n\n public uploadStoryAttachments$ = (\n templateId: string,\n componentId: string,\n storyId: string,\n attachments: ComponentStoryAttachments,\n ): Observable<void> => {\n const formData = new FormData();\n if (attachments.html != null) {\n formData.append('html', new Blob([attachments.html]), 'story-template.html');\n }\n if (attachments.css != null) {\n formData.append('css', new Blob([attachments.css]), 'story-styles.css');\n }\n if (attachments.js != null) {\n formData.append('js', new Blob([attachments.js]), 'story-script.js');\n }\n if (attachments.json != null) {\n formData.append('json', new Blob([attachments.json]), 'story-section.json');\n }\n\n return this.baseHttpService.upload({\n method: 'post',\n url: `${this.serviceUrl}/${templateId}/components/${componentId}/stories/${storyId}/attachments`,\n body: formData,\n });\n };\n\n public getTemplateThumbnailUrl(templateId: string) {\n return `${this.serviceUrl}/${templateId}/thumbnail/file`;\n }\n\n public attachTemplateThumbnail$(templateId: string, file: File) {\n const data = new FormData();\n data.append('thumb', file);\n\n return this.baseHttpService.upload({\n method: 'post',\n url: `${this.serviceUrl}/${templateId}/thumbnail`,\n body: data,\n });\n }\n\n public removeTemplateThumbnail$(templateId: string) {\n return this.baseHttpService.api({\n method: 'delete',\n url: `${this.serviceUrl}/${templateId}/thumbnail`,\n });\n }\n\n public fetchComponentAttachments$ = (\n templateId: string,\n component: TemplateComponent,\n ): Observable<ComponentAttachments> => {\n return forkJoin([\n this.fetchComponentAttachmentFile$(templateId, component.id, 'html'),\n this.fetchComponentAttachmentFile$(templateId, component.id, 'js'),\n this.fetchComponentAttachmentFile$(templateId, component.id, 'css'),\n this.fetchComponentAttachmentFile$(templateId, component.id, 'json'),\n ]).pipe(map(([html, js, css, json]) => ({ html, js, css, json })));\n };\n\n public fetchComponentsAttachments$ = (templateId: string): Observable<ComponentAttachments[]> => {\n return this.fetchComponents$(templateId).pipe(\n switchMap(components => {\n return forkJoin(components.map(component => this.fetchComponentAttachments$(templateId, component)));\n }),\n );\n };\n\n private fetchComponentAttachmentFile$ = (\n templateId: string,\n componentId: string,\n attachmentType: TemplateAttachmentType,\n ): Observable<string> => {\n return this.baseHttpService\n .api({\n method: 'get',\n url: `${this.serviceUrl}/${templateId}/components/${componentId}/attachments/${attachmentType}/file`,\n responseType: 'text',\n errorHandler: noop,\n })\n .pipe(catchError(() => of('')));\n };\n\n public uploadComponentAttachments$ = (\n templateId: string,\n componentId: string,\n attachments: ComponentAttachments,\n ): Observable<void> => {\n const formData = new FormData();\n if (attachments.html != null) {\n formData.append('html', new Blob([attachments.html]), 'template.html');\n }\n if (attachments.css != null) {\n formData.append('css', new Blob([attachments.css]), 'styles.css');\n }\n if (attachments.js != null) {\n formData.append('js', new Blob([attachments.js]), 'script.js');\n }\n if (attachments.json != null) {\n formData.append('json', new Blob([attachments.json]), 'section.json');\n }\n\n return this.baseHttpService.upload({\n method: 'post',\n url: `${this.serviceUrl}/${templateId}/components/${componentId}/attachments`,\n body: formData,\n });\n };\n}\n","import { HttpClientModule } from '@angular/common/http';\nimport { NgModule } from '@angular/core';\nimport { BaseHttpService, XrayService } from '@veloceapps/core';\nimport {\n ConfigurationProcessorsApiService,\n ContextDefinitionApiService,\n ProceduresAdminApiService,\n ProceduresApiService,\n RuleGroupsAdminApiService,\n RulesAdminApiService,\n RulesApiService,\n SalesTransactionApiService,\n ScriptsAdminApiService,\n ScriptsApiService,\n UIDefinitionsApiService,\n UITemplatesApiService,\n} from './services';\n\n@NgModule({\n imports: [HttpClientModule],\n providers: [\n BaseHttpService,\n ConfigurationProcessorsApiService,\n ContextDefinitionApiService,\n ProceduresAdminApiService,\n ProceduresApiService,\n RuleGroupsAdminApiService,\n RulesAdminApiService,\n RulesApiService,\n SalesTransactionApiService,\n ScriptsAdminApiService,\n ScriptsApiService,\n UIDefinitionsApiService,\n UITemplatesApiService,\n XrayService,\n ],\n})\nexport class ApiV2Module {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["map","catchError"],"mappings":"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"}
1
+ {"version":3,"file":"veloceapps-api-v2.mjs","sources":["../../../../libs/api/v2/services/configuration-processors-api.service.ts","../../../../libs/api/v2/services/context-definition-api.service.ts","../../../../libs/api/v2/services/procedures-admin-api.service.ts","../../../../libs/api/v2/services/procedures-api.service.ts","../../../../libs/api/v2/services/rule-groups-admin-api.service.ts","../../../../libs/api/v2/services/rules-admin-api.service.ts","../../../../libs/api/v2/services/rules-api.service.ts","../../../../libs/api/v2/services/sales-transactions-api.service.ts","../../../../libs/api/v2/services/scripts-admin-api.service.ts","../../../../libs/api/v2/services/scripts-api.service.ts","../../../../libs/api/v2/utils/ui-definition.utils.ts","../../../../libs/api/v2/services/ui-definitions-api.service.ts","../../../../libs/api/v2/utils/ui-template.utils.ts","../../../../libs/api/v2/services/ui-templates-api.service.ts","../../../../libs/api/v2/api-v2.module.ts","../../../../libs/api/v2/veloceapps-api-v2.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseHttpService, ConfigurationProcessor } from '@veloceapps/core';\nimport { Observable } from 'rxjs';\n\n@Injectable()\nexport class ConfigurationProcessorsApiService {\n private readonly serviceUrl: string = '/v2/configuration/processors/owners';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public fetchConfigurationProcessors$ = (ownerId: string): Observable<ConfigurationProcessor[]> => {\n return this.baseHttpService.api<ConfigurationProcessor[]>({ url: `${this.serviceUrl}/${ownerId}` });\n };\n\n public createConfigurationProcessors$ = (\n configurationProcessor: ConfigurationProcessor,\n ): Observable<ConfigurationProcessor> => {\n return this.baseHttpService.api<ConfigurationProcessor>({\n method: 'post',\n url: `${this.serviceUrl}/${configurationProcessor.ownerId}`,\n body: configurationProcessor,\n });\n };\n\n public updateConfigurationProcessors$ = (\n configurationProcessor: ConfigurationProcessor,\n ): Observable<ConfigurationProcessor> => {\n return this.baseHttpService.api<ConfigurationProcessor>({\n method: 'put',\n url: `${this.serviceUrl}/${configurationProcessor.ownerId}/${configurationProcessor.id}`,\n body: configurationProcessor,\n });\n };\n\n public deleteConfigurationProcessors$ = (configurationProcessor: ConfigurationProcessor): Observable<void> => {\n return this.baseHttpService.api({\n method: 'delete',\n url: `${this.serviceUrl}/${configurationProcessor.ownerId}/${configurationProcessor.id}`,\n });\n };\n}\n","import { Injectable } from '@angular/core';\nimport {\n BaseHttpService,\n BEContextDefinitionStructure,\n ContextDefinition,\n ContextDefinitionStructure,\n ContextMapping,\n RlmProcedure,\n} from '@veloceapps/core';\nimport { Observable, of } from 'rxjs';\nimport { catchError, map } from 'rxjs/operators';\n\n@Injectable()\nexport class ContextDefinitionApiService {\n private readonly serviceUrl: string = '/v2/context-definition';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public fetchContextDefinitions$(): Observable<ContextDefinition[]> {\n return this.baseHttpService.api<ContextDefinition[]>({ url: `${this.serviceUrl}`, skipErrorHandler: true }).pipe(\n catchError(() => {\n return of([]);\n }),\n );\n }\n\n public fetchContextMappings$(id: string): Observable<ContextMapping[]> {\n return this.baseHttpService.api<ContextMapping[]>({ url: `${this.serviceUrl}/${id}/mappings` });\n }\n\n public fetchContextDefinitionStructure$(id: string): Observable<ContextDefinitionStructure> {\n return this.baseHttpService\n .api<BEContextDefinitionStructure>({\n url: `${this.serviceUrl}/${id}/structure/details`,\n skipErrorHandler: true,\n })\n .pipe(\n catchError(() => {\n return of([]);\n }),\n map(objects => {\n return objects.map(object => {\n const tag = object.tags?.[0]?.title;\n const objectAttributes = object.attributes || [];\n return {\n id: object.id,\n title: tag || object.title,\n attributes: objectAttributes.map(attribute => {\n const tag = attribute.tags?.[0]?.title;\n return {\n title: tag || attribute.title,\n fieldType: attribute.fieldType,\n dataType: attribute.dataType,\n };\n }),\n };\n });\n }),\n );\n }\n\n public fetchRlmProcedures(contextDefinitionId?: string): Observable<RlmProcedure[]> {\n const params: Record<string, string | string[]> = {};\n\n if (contextDefinitionId) {\n params['contextDefinitionId'] = contextDefinitionId;\n }\n\n return this.baseHttpService.api<RlmProcedure[]>({\n url: `${this.serviceUrl}/procedures`,\n params,\n });\n }\n}\n","import { HttpParams } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { BaseHttpService, Expression, NewProcedure, Procedure } from '@veloceapps/core';\nimport { map, Observable } from 'rxjs';\nimport { CloneRequest } from '../types';\n\n@Injectable()\nexport class ProceduresAdminApiService {\n private readonly SERVICE_URL: string = '/v2/admin/procedures';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public fetchProcedures$ = (): Observable<Procedure[]> => {\n return this.searchProcedures$(new Expression(), 0, 100);\n };\n\n public searchProcedures$ = (expression: Expression, skip: number, count: number): Observable<Procedure[]> => {\n let params = new HttpParams();\n params = params.set('skip', '' + skip);\n params = params.set('count', '' + count);\n return this.baseHttpService.api({\n method: 'post',\n url: `${this.SERVICE_URL}/search`,\n params,\n body: expression,\n });\n };\n\n public createProcedure$ = (newProcedure: NewProcedure): Observable<Procedure> => {\n return this.baseHttpService.api<Procedure>({\n url: `${this.SERVICE_URL}`,\n method: 'post',\n body: newProcedure,\n });\n };\n\n public updateProcedure$ = (procedure: Procedure): Observable<Procedure> => {\n return this.baseHttpService.api<Procedure>({\n url: `${this.SERVICE_URL}/${procedure.id}`,\n method: 'put',\n body: procedure,\n });\n };\n\n public duplicateProcedure$ = (body: CloneRequest): Observable<string> => {\n return this.baseHttpService\n .api({\n url: `${this.SERVICE_URL}/${body.id}/clone`,\n method: 'post',\n body,\n })\n .pipe(map(response => response.clonedRecordId));\n };\n\n public removeProcedure$ = (id: string): Observable<string> => {\n return this.baseHttpService.api<string>({\n url: `${this.SERVICE_URL}/${id}`,\n method: 'delete',\n });\n };\n\n public restoreProcedure$ = (id: string): Observable<string> => {\n return this.baseHttpService.api<string>({\n url: `${this.SERVICE_URL}/${id}/restore`,\n method: 'patch',\n });\n };\n\n public fetchProcedure$(id: string): Observable<Procedure> {\n return this.baseHttpService.api<Procedure>({\n url: `${this.SERVICE_URL}/${id}`,\n method: 'get',\n });\n }\n\n /**\n * @deprecated\n */\n public fetchDefaultPricingSteps$(): Observable<any> {\n return this.baseHttpService.api<Procedure>({\n url: `/admin/procedures/pricing-steps`,\n method: 'get',\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { BaseHttpService, HttpRequestConfigurableOptions, ProcedureExecuteRequest } from '@veloceapps/core';\nimport { Observable } from 'rxjs';\nimport { ProcedureApplyRequest, ProcedureApplyResponse } from '../types';\n\n@Injectable()\nexport class ProceduresApiService {\n private readonly SERVICE_URL: string = '/v2/procedures';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public apply$(\n request: ProcedureApplyRequest,\n options?: HttpRequestConfigurableOptions,\n ): Observable<ProcedureApplyResponse> {\n return this.baseHttpService.api<ProcedureApplyResponse>({\n url: `${this.SERVICE_URL}/apply`,\n method: 'post',\n body: request,\n ...options,\n });\n }\n\n public execute$(body: ProcedureExecuteRequest) {\n return this.baseHttpService.api<string[]>({\n url: `${this.SERVICE_URL}/execute`,\n method: 'post',\n body,\n });\n }\n\n public catalogExecute$(body: ProcedureExecuteRequest) {\n return this.baseHttpService.api<string[]>({\n url: `${this.SERVICE_URL}/catalog/execute`,\n method: 'post',\n body,\n });\n }\n\n public rlmExecute$(body: ProcedureExecuteRequest) {\n return this.baseHttpService.api<string[]>({\n url: `${this.SERVICE_URL}/rlm/execute`,\n method: 'post',\n body,\n });\n }\n}\n","import { HttpParams } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { BaseHttpService, Expression, NewRuleGroup, RuleGroup } from '@veloceapps/core';\nimport { map, Observable } from 'rxjs';\nimport { CloneRequest } from '../types/clone-request.types';\n\n@Injectable()\nexport class RuleGroupsAdminApiService {\n private readonly serviceUrl: string = '/v2/admin/rule-groups';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public fetchRuleGroups$ = (): Observable<RuleGroup[]> => {\n return this.searchRuleGroups$(new Expression(), 0, 100);\n };\n\n public searchRuleGroups$ = (expression: Expression, skip: number, count: number): Observable<RuleGroup[]> => {\n let params = new HttpParams();\n params = params.set('skip', '' + skip);\n params = params.set('count', '' + count);\n return this.baseHttpService.api({ method: 'post', url: `${this.serviceUrl}/search`, params, body: expression });\n };\n\n public createRuleGroup$ = (ruleGroup: NewRuleGroup): Observable<RuleGroup> => {\n return this.baseHttpService.api<RuleGroup>({\n url: `${this.serviceUrl}`,\n method: 'post',\n body: ruleGroup,\n });\n };\n\n public updateRuleGroup$ = (ruleGroup: RuleGroup): Observable<RuleGroup> => {\n return this.baseHttpService.api<RuleGroup>({\n url: `${this.serviceUrl}/${ruleGroup.id}`,\n method: 'post',\n body: ruleGroup,\n });\n };\n\n public duplicateRuleGroup$ = (body: CloneRequest): Observable<string> => {\n return this.baseHttpService\n .api({\n url: `${this.serviceUrl}/${body.id}/clone`,\n method: 'post',\n body,\n })\n .pipe(map(response => response.clonedRecordId));\n };\n\n public removeRuleGroup$ = (id: string): Observable<string> => {\n return this.baseHttpService.api<string>({\n url: `${this.serviceUrl}/${id}`,\n method: 'delete',\n });\n };\n\n public restoreRuleGroup$ = (id: string): Observable<string> => {\n return this.baseHttpService.api<string>({\n url: `${this.serviceUrl}/${id}/restore`,\n method: 'patch',\n });\n };\n}\n","import { HttpParams } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport {\n BaseHttpService,\n Expression,\n HeaderField,\n NewRule,\n Rule,\n RuleExecuteRequest,\n RuleGroupTypes,\n} from '@veloceapps/core';\nimport { map, Observable } from 'rxjs';\nimport { CloneRequest } from '../types';\n\n@Injectable()\nexport class RulesAdminApiService {\n private readonly serviceUrl: string = '/v2/admin/rules';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public fetchRules$ = (): Observable<Rule[]> => {\n return this.searchRules$(new Expression(), 0, 100);\n };\n\n public searchRules$ = (expression: Expression, skip?: number, count?: number): Observable<Rule[]> => {\n let params = new HttpParams();\n if (typeof skip === 'number') {\n params = params.set('skip', '' + skip);\n }\n if (typeof count === 'number') {\n params = params.set('count', '' + count);\n }\n return this.baseHttpService.api({ method: 'post', url: `${this.serviceUrl}/search`, params, body: expression });\n };\n\n public createRule$ = (rule: NewRule): Observable<Rule> => {\n return this.baseHttpService.api<Rule>({\n url: `${this.serviceUrl}`,\n method: 'post',\n body: rule,\n });\n };\n\n public updateRule$ = (rule: Rule): Observable<Rule> => {\n return this.baseHttpService.api<Rule>({\n url: `${this.serviceUrl}/${rule.id}`,\n method: 'put',\n body: rule,\n });\n };\n\n public duplicateRule$ = (body: CloneRequest): Observable<string> => {\n return this.baseHttpService\n .api({\n url: `${this.serviceUrl}/${body.id}/clone`,\n method: 'post',\n body,\n })\n .pipe(map(response => response.clonedRecordId));\n };\n\n public removeRule$ = (id: string): Observable<string> => {\n return this.baseHttpService.api<string>({\n url: `${this.serviceUrl}/${id}`,\n method: 'delete',\n });\n };\n\n public restoreRule$ = (id: string): Observable<string> => {\n return this.baseHttpService.api<string>({\n url: `${this.serviceUrl}/${id}/restore`,\n method: 'patch',\n });\n };\n\n public fetchRule$(id: string) {\n return this.baseHttpService.api<Rule>({\n url: `${this.serviceUrl}/${id}`,\n method: 'get',\n });\n }\n\n public fetchHeaderFields$() {\n return this.baseHttpService.api<HeaderField[]>({\n url: `${this.serviceUrl}/describe/Header`,\n method: 'get',\n });\n }\n\n public execute$(body: RuleExecuteRequest) {\n const url = this.getExecuteRuleUrl(body.rule.ruleGroupType);\n return this.baseHttpService.api<string[]>({\n url,\n method: 'post',\n body,\n });\n }\n\n private getExecuteRuleUrl(ruleGroupType: RuleGroupTypes): string {\n if (ruleGroupType === RuleGroupTypes.eligibility) {\n return '/v2/rules/eligibility/execute';\n }\n\n if (ruleGroupType === RuleGroupTypes.rlmContextBased || ruleGroupType === RuleGroupTypes.generalContextBased) {\n return '/v2/rules/rlm/execute';\n }\n\n return '/v2/rules/execute';\n }\n}\n","import { Injectable } from '@angular/core';\nimport { BaseHttpService, RuleExecuteRequest, RuleGroupTypes } from '@veloceapps/core';\n\n@Injectable()\nexport class RulesApiService {\n private readonly serviceUrl: string = '/v2/rules';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public execute$(body: RuleExecuteRequest) {\n const url = this.getExecuteRuleUrl(body.rule.ruleGroupType);\n return this.baseHttpService.api<string[]>({\n url,\n method: 'post',\n body,\n });\n }\n\n private getExecuteRuleUrl(ruleGroupType: RuleGroupTypes): string {\n if (ruleGroupType === RuleGroupTypes.eligibility) {\n return `${this.serviceUrl}/eligibility/execute`;\n }\n\n if (ruleGroupType === RuleGroupTypes.catalog) {\n return `${this.serviceUrl}/catalog/execute`;\n }\n\n if (ruleGroupType === RuleGroupTypes.rlmContextBased) {\n return `${this.serviceUrl}/rlm/execute`;\n }\n\n return `${this.serviceUrl}/execute`;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Params } from '@angular/router';\nimport { BaseHttpService, HttpRequestConfigurableOptions, SalesTransaction } from '@veloceapps/core';\nimport { Observable, of } from 'rxjs';\nimport { SalesTransactionRequestParams, SalesTransactionResponse, SalesTransactionUpsertResponse } from '../types';\n\n@Injectable()\nexport class SalesTransactionApiService {\n private readonly SERVICE_URL = '/v2/transactions';\n\n constructor(private httpService: BaseHttpService) {}\n\n /**\n * This endpoint doesn't include orders and assets\n * @param objectId SF record ID (quoteId | accountId | opportunityId | orderId etc)\n * @param params Query params\n * @param options Request options\n */\n public getState(\n objectId: string,\n params?: SalesTransactionRequestParams,\n options?: HttpRequestConfigurableOptions,\n ): Observable<SalesTransactionResponse> {\n return this.httpService.api<SalesTransactionResponse>({\n method: 'get',\n url: `${this.SERVICE_URL}/${objectId}`,\n params: params as Params,\n ...options,\n });\n }\n\n public upsert(\n request: SalesTransaction,\n options?: HttpRequestConfigurableOptions,\n ): Observable<SalesTransactionUpsertResponse> {\n return of({\n id: 'ID',\n } satisfies SalesTransactionUpsertResponse);\n\n // return this.httpService.api({\n // method: 'post',\n // url: `${this.SERVICE_URL}`,\n // body: request,\n // ...options,\n // });\n }\n\n public submit(\n request: SalesTransaction,\n options?: HttpRequestConfigurableOptions,\n ): Observable<SalesTransactionUpsertResponse> {\n return of({\n id: 'ID',\n } satisfies SalesTransactionUpsertResponse);\n\n // return this.httpService.api({\n // method: 'post',\n // url: `${this.SERVICE_URL}`,\n // body: request,\n // ...options,\n // });\n }\n}\n","import { HttpParams } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { BaseHttpService, Expression, NewScript, Script, ScriptDetails } from '@veloceapps/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { CloneRequest } from '../types/clone-request.types';\n\n@Injectable()\nexport class ScriptsAdminApiService {\n private readonly serviceUrl: string = '/v2/admin/scripts';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public fetchScripts$ = (): Observable<Script[]> => {\n return this.baseHttpService.api<Script[]>({ url: `${this.serviceUrl}` });\n };\n\n public searchScripts$ = (expression: Expression, skip?: number, count?: number): Observable<Script[]> => {\n let params = new HttpParams();\n if (typeof skip === 'number') {\n params = params.set('skip', '' + skip);\n }\n if (typeof count === 'number') {\n params = params.set('count', '' + count);\n }\n return this.baseHttpService.api({ method: 'post', url: `${this.serviceUrl}/search`, params, body: expression });\n };\n\n public fetchScript$ = (id: string): Observable<ScriptDetails> => {\n return this.baseHttpService.api<ScriptDetails>({ url: `${this.serviceUrl}/${id}` });\n };\n\n public createScript$ = (script: NewScript): Observable<Script> => {\n return this.baseHttpService.api<Script>({\n url: `${this.serviceUrl}`,\n method: 'post',\n body: script,\n });\n };\n\n public updateScriptMeta$ = (script: Script): Observable<ScriptDetails> => {\n return this.baseHttpService.api<ScriptDetails>({\n url: `${this.serviceUrl}/${script.id}`,\n method: 'put',\n body: script,\n });\n };\n\n public updateScriptDetails$ = (script: ScriptDetails): Observable<ScriptDetails> => {\n return this.baseHttpService.api<ScriptDetails>({\n url: `${this.serviceUrl}/${script.id}`,\n method: 'put',\n body: script,\n });\n };\n\n public cloneScript$ = (cloneRequest: CloneRequest): Observable<string> => {\n return this.baseHttpService\n .api({\n url: `${this.serviceUrl}/${cloneRequest.id}/clone`,\n method: 'post',\n body: cloneRequest,\n })\n .pipe(map(response => response.clonedRecordId));\n };\n\n public removeScript$ = (id: string): Observable<string> => {\n return this.baseHttpService.api<string>({\n url: `${this.serviceUrl}/${id}`,\n method: 'delete',\n });\n };\n\n public restoreScript$ = (id: string): Observable<string> => {\n return this.baseHttpService.api<string>({\n url: `${this.serviceUrl}/${id}/restore`,\n method: 'patch',\n });\n };\n}\n","import { Injectable } from '@angular/core';\nimport { BaseHttpService, ScriptExecuteRequest } from '@veloceapps/core';\nimport { Observable } from 'rxjs';\n\n@Injectable()\nexport class ScriptsApiService {\n private readonly serviceUrl: string = '/v2/scripts';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public execute$ = (body: ScriptExecuteRequest): Observable<any> => {\n return this.baseHttpService.api({\n url: `${this.serviceUrl}/execute`,\n method: 'post',\n body,\n errorHandler: () => null,\n });\n };\n}\n","import { parseJsonStringAsObject, UIDefinitionContainer } from '@veloceapps/core';\nimport { UIDefinitionContainerDTO } from '../types/dto/ui-definition-dto.types';\n\nexport function uiDefinitionFromDTO(container: UIDefinitionContainerDTO): UIDefinitionContainer {\n const { sourceBlob, ...rest } = container;\n\n return {\n ...rest,\n source: parseJsonStringAsObject(sourceBlob),\n };\n}\n\nexport function uiDefinitionToDTO(container: UIDefinitionContainer): UIDefinitionContainerDTO {\n const { source, ...rest } = container;\n\n return {\n ...rest,\n sourceBlob: JSON.stringify(source),\n };\n}\n","import { HttpParams } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { BaseHttpService, NewUIDefinitionContainer, UIDefinitionContainer } from '@veloceapps/core';\nimport { omit } from 'lodash';\nimport { map, Observable } from 'rxjs';\nimport { UIDefinitionContainerDTO } from '../types/dto/ui-definition-dto.types';\nimport { uiDefinitionFromDTO, uiDefinitionToDTO } from '../utils/ui-definition.utils';\n\n@Injectable()\nexport class UIDefinitionsApiService {\n private readonly serviceUrl: string = '/v2/uidefinitions';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public fetch$(modelId: string, version?: number): Observable<UIDefinitionContainer[]> {\n const serviceUrl = this.getServiceUrl(modelId);\n let params = new HttpParams();\n if (version != null) {\n params = params.set('modelVersion', version);\n }\n\n return this.baseHttpService\n .api<UIDefinitionContainerDTO[]>({\n method: 'get',\n url: serviceUrl,\n params: params,\n })\n .pipe(map(containers => containers.map(uiDefinitionFromDTO)));\n }\n\n public create$(modelId: string, uiDefinitionContainer: NewUIDefinitionContainer): Observable<UIDefinitionContainer> {\n const serviceUrl = this.getServiceUrl(modelId);\n const dto = {\n ...omit(uiDefinitionContainer, 'source'),\n name: uiDefinitionContainer.source.name,\n modelId: uiDefinitionContainer.source.modelId,\n templateName: uiDefinitionContainer.source.uiTemplateData?.TEMPLATE_NAME,\n rootType: uiDefinitionContainer.source.uiTemplateData?.ROOT_TYPE,\n defaultFlag: uiDefinitionContainer.source.primary,\n sourceBlob: JSON.stringify(uiDefinitionContainer.source),\n };\n\n return this.baseHttpService\n .api<UIDefinitionContainerDTO>({\n method: 'post',\n url: serviceUrl,\n body: dto,\n })\n .pipe(map(container => uiDefinitionFromDTO(container)));\n }\n\n public get$(modelId: string, uiDefinitionId: string): Observable<UIDefinitionContainer | null> {\n const serviceUrl = this.getServiceUrl(modelId);\n\n return this.baseHttpService\n .api<UIDefinitionContainerDTO>({\n method: 'get',\n url: `${serviceUrl}/${uiDefinitionId}`,\n })\n .pipe(map(container => uiDefinitionFromDTO({ ...container, id: uiDefinitionId })));\n }\n\n public update$(uiDefinitionContainer: UIDefinitionContainer): Observable<UIDefinitionContainer> {\n const serviceUrl = this.getServiceUrl(uiDefinitionContainer.modelId);\n const dto = uiDefinitionToDTO(uiDefinitionContainer);\n\n return this.baseHttpService\n .api<UIDefinitionContainerDTO>({\n method: 'put',\n url: `${serviceUrl}/${uiDefinitionContainer.id}`,\n body: dto,\n })\n .pipe(map(container => uiDefinitionFromDTO(container)));\n }\n\n public delete$(uiDefinitionContainer: UIDefinitionContainer): Observable<void> {\n const serviceUrl = this.getServiceUrl(uiDefinitionContainer.modelId);\n\n return this.baseHttpService.api({\n method: 'delete',\n url: `${serviceUrl}/${uiDefinitionContainer.id}`,\n });\n }\n\n private getServiceUrl(modelId: string): string {\n return `/models/${modelId}/uidefinitions`;\n }\n\n public fetchUIDefinitions$(params?: {\n productId?: string;\n defaultUIDefinitionId?: string;\n }): Observable<UIDefinitionContainer[]> {\n let httpParams = new HttpParams();\n if (params?.productId != null) {\n httpParams = httpParams.set('productId', params.productId);\n }\n if (params?.defaultUIDefinitionId != null) {\n httpParams = httpParams.set('defaultUIDefinitionId', params.defaultUIDefinitionId);\n }\n\n return this.baseHttpService\n .api<UIDefinitionContainerDTO[]>({\n method: 'get',\n url: this.serviceUrl,\n params: httpParams,\n })\n .pipe(map(containers => containers.map(uiDefinitionFromDTO)));\n }\n\n public fetchUIDefinition$(id: string): Observable<UIDefinitionContainer> {\n return this.baseHttpService\n .api({\n method: 'get',\n url: `${this.serviceUrl}/${id}`,\n })\n .pipe(\n map(container => uiDefinitionFromDTO({ ...container, id })),\n map(uiDefinition => {\n const result = uiDefinition;\n if (!uiDefinition.modelId && uiDefinition.source.modelId) {\n result['modelId'] = uiDefinition.source.modelId;\n }\n return result;\n }),\n );\n }\n\n public createUIDefinition$(body: any): Observable<any> {\n return this.baseHttpService.api({\n method: 'post',\n url: this.serviceUrl,\n body,\n });\n }\n\n public updateUIDefinition$(uiDefinition: any): Observable<any> {\n return this.baseHttpService.api({\n method: 'put',\n url: `${this.serviceUrl}/${uiDefinition.id}`,\n body: uiDefinition,\n });\n }\n\n public deleteUIDefinition$(id: string): Observable<any> {\n return this.baseHttpService.api({\n method: 'delete',\n url: `${this.serviceUrl}/${id}`,\n });\n }\n}\n","import { ComponentStory, ComponentStoryAttachments } from '@veloceapps/core';\nimport { UIComponentStoryDTO } from '../types/dto/ui-template-dto.types';\n\nexport const fromUIComponentStoryDTO = (\n dto: UIComponentStoryDTO,\n attachments: ComponentStoryAttachments,\n): ComponentStory => {\n return {\n id: dto.id,\n name: dto.name,\n uiComponentId: dto.uiComponentId,\n description: dto.description,\n section: attachments.json,\n template: attachments.html,\n script: attachments.js,\n styles: attachments.css,\n };\n};\n","import { HttpParams } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport {\n BaseHttpService,\n ComponentAttachments,\n ComponentStory,\n ComponentStoryAttachments,\n Expression,\n NewComponentStory,\n NewTemplateComponent,\n NewUITemplate,\n TemplateAttachmentType,\n TemplateComponent,\n UITemplate,\n} from '@veloceapps/core';\nimport { Dictionary } from 'lodash';\nimport { catchError, forkJoin, map, noop, Observable, of, switchMap } from 'rxjs';\nimport { CloneRequest } from '../types/clone-request.types';\nimport { UIComponentStoryDTO } from '../types/dto/ui-template-dto.types';\nimport { fromUIComponentStoryDTO } from '../utils/ui-template.utils';\n\n@Injectable()\nexport class UITemplatesApiService {\n private readonly serviceUrl: string = '/v2/uitemplates';\n\n constructor(private baseHttpService: BaseHttpService) {}\n\n public fetchTemplates$ = (name?: string): Observable<UITemplate[]> => {\n let params = new HttpParams();\n if (name) {\n params = params.append('name', name);\n }\n\n return this.baseHttpService.api<UITemplate[]>({ url: `${this.serviceUrl}`, params });\n };\n\n public createTemplate$ = (template: NewUITemplate): Observable<UITemplate> => {\n return this.baseHttpService.api<UITemplate>({\n method: 'post',\n url: `${this.serviceUrl}`,\n body: template,\n });\n };\n\n public updateTemplate$ = (template: UITemplate): Observable<UITemplate> => {\n return this.baseHttpService.api<UITemplate>({\n method: 'put',\n url: `${this.serviceUrl}/${template.id}`,\n body: template,\n });\n };\n\n public duplicateTemplate$ = (template: UITemplate, cloneRequest: CloneRequest): Observable<string> => {\n return this.baseHttpService\n .api({\n url: `${this.serviceUrl}/${template.id}/clone`,\n method: 'post',\n body: cloneRequest,\n })\n .pipe(map(response => response.clonedRecordId));\n };\n\n public removeTemplate$ = (id: string): Observable<void> => {\n return this.baseHttpService.api({\n method: 'delete',\n url: `${this.serviceUrl}/${id}`,\n });\n };\n\n public restoreTemplate$ = (id: string): Observable<void> => {\n return this.baseHttpService.api({\n method: 'patch',\n url: `${this.serviceUrl}/${id}`,\n });\n };\n\n public searchTemplates$ = (data: {\n params?: Dictionary<string>;\n expression?: Expression;\n }): Observable<UITemplate[]> => {\n return this.baseHttpService.api({\n method: 'post',\n url: `${this.serviceUrl}/search`,\n params: data.params,\n body: data.expression,\n });\n };\n\n public fetchComponents$ = (templateId: string, name?: string): Observable<TemplateComponent[]> => {\n let params = new HttpParams();\n if (name) {\n params = params.append('name', name);\n }\n\n return this.baseHttpService.api<TemplateComponent[]>({\n url: `${this.serviceUrl}/${templateId}/components`,\n params,\n });\n };\n\n public fetchComponent$ = (templateId: string, componentId: string): Observable<TemplateComponent> => {\n return this.baseHttpService.api<TemplateComponent>({\n url: `${this.serviceUrl}/${templateId}/components/${componentId}`,\n });\n };\n\n public createComponent$ = (component: NewTemplateComponent): Observable<TemplateComponent> => {\n return this.baseHttpService.api<TemplateComponent>({\n method: 'post',\n url: `${this.serviceUrl}/${component.uiTemplateId}/components`,\n body: component,\n });\n };\n\n public updateComponent$ = (component: TemplateComponent): Observable<TemplateComponent> => {\n return this.baseHttpService.api<TemplateComponent>({\n method: 'put',\n url: `${this.serviceUrl}/${component.uiTemplateId}/components/${component.id}`,\n body: component,\n });\n };\n\n public duplicateComponent$ = (component: TemplateComponent, cloneRequest: CloneRequest): Observable<string> => {\n return this.baseHttpService\n .api({\n url: `${this.serviceUrl}/${component.uiTemplateId}/components/${component.id}/clone`,\n method: 'post',\n body: cloneRequest,\n })\n .pipe(map(response => response.clonedRecordId));\n };\n\n public removeComponent$ = (templateId: string, componentId: string): Observable<void> => {\n return this.baseHttpService.api({\n method: 'delete',\n url: `${this.serviceUrl}/${templateId}/components/${componentId}`,\n });\n };\n\n public restoreComponent$ = (templateId: string, componentId: string): Observable<void> => {\n return this.baseHttpService.api({\n method: 'patch',\n url: `${this.serviceUrl}/${templateId}/components/${componentId}`,\n });\n };\n\n public searchComponents$ = (\n templateId: string,\n data: { params?: Dictionary<string>; expression?: Expression },\n ): Observable<TemplateComponent[]> => {\n return this.baseHttpService.api({\n method: 'post',\n url: `${this.serviceUrl}/${templateId}/components/search`,\n params: data.params,\n body: data.expression,\n });\n };\n\n public fetchStoryAttachment = (\n templateId: string,\n componentId: string,\n storyId: string,\n type: TemplateAttachmentType,\n ): Observable<string> => {\n return this.baseHttpService\n .api<string>({\n url: `${this.serviceUrl}/${templateId}/components/${componentId}/stories/${storyId}/attachments/${type}/file`,\n responseType: 'text',\n errorHandler: noop,\n })\n .pipe(catchError(() => of('')));\n };\n\n private convertToComponentStory$ = (\n templateId: string,\n componentId: string,\n storyDto: UIComponentStoryDTO,\n ): Observable<ComponentStory> => {\n return forkJoin([\n this.fetchStoryAttachment(templateId, componentId, storyDto.id, 'html'),\n this.fetchStoryAttachment(templateId, componentId, storyDto.id, 'js'),\n this.fetchStoryAttachment(templateId, componentId, storyDto.id, 'css'),\n this.fetchStoryAttachment(templateId, componentId, storyDto.id, 'json'),\n ]).pipe(\n map(([html, js, css, json]) => ({ html, js, css, json })),\n map(attachments => fromUIComponentStoryDTO(storyDto, attachments)),\n );\n };\n\n public fetchStories$ = (templateId: string, componentId: string, name?: string): Observable<ComponentStory[]> => {\n let params = new HttpParams();\n if (name) {\n params = params.append('name', name);\n }\n\n return this.baseHttpService\n .api<UIComponentStoryDTO[]>({\n url: `${this.serviceUrl}/${templateId}/components/${componentId}/stories`,\n params,\n })\n .pipe(\n switchMap(dtos => {\n if (!dtos.length) {\n return of([]);\n }\n return forkJoin(dtos.map(dto => this.convertToComponentStory$(templateId, componentId, dto)));\n }),\n );\n };\n\n public fetchStory$ = (templateId: string, componentId: string, storyId: string): Observable<ComponentStory> => {\n return this.baseHttpService\n .api<UIComponentStoryDTO>({\n url: `${this.serviceUrl}/${templateId}/components/${componentId}/stories/${storyId}`,\n })\n .pipe(switchMap(dto => this.convertToComponentStory$(templateId, componentId, dto)));\n };\n\n public createComponentStory$ = (templateId: string, story: NewComponentStory): Observable<ComponentStory> => {\n return this.baseHttpService.api<ComponentStory>({\n method: 'post',\n url: `${this.serviceUrl}/${templateId}/components/${story.uiComponentId}/stories`,\n body: story,\n });\n };\n\n public updateComponentStory$ = (templateId: string, story: ComponentStory): Observable<ComponentStory> => {\n const { script, template, styles, section, ...rest } = story;\n\n return this.baseHttpService\n .api<UIComponentStoryDTO>({\n method: 'put',\n url: `${this.serviceUrl}/${templateId}/components/${story.uiComponentId}/stories/${story.id}`,\n body: rest,\n })\n .pipe(map(dto => fromUIComponentStoryDTO(dto, { html: template, js: script, css: styles, json: section })));\n };\n\n public duplicateComponentStory$ = (story: ComponentStory, cloneRequest: CloneRequest): Observable<string> => {\n return this.baseHttpService\n .api({\n url: `${this.serviceUrl}/${story.template}/components/${story.uiComponentId}/stories/${story.id}/clone`,\n method: 'post',\n body: cloneRequest,\n })\n .pipe(map(response => response.clonedRecordId));\n };\n\n public deleteComponentStory$ = (templateId: string, componentId: string, storyId: string): Observable<void> => {\n return this.baseHttpService.api({\n method: 'delete',\n url: `${this.serviceUrl}/${templateId}/components/${componentId}/stories/${storyId}`,\n });\n };\n\n public restoreComponentStory$ = (templateId: string, componentId: string, storyId: string): Observable<void> => {\n return this.baseHttpService.api({\n method: 'patch',\n url: `${this.serviceUrl}/${templateId}/components/${componentId}/stories/${storyId}`,\n });\n };\n\n public uploadStoryAttachments$ = (\n templateId: string,\n componentId: string,\n storyId: string,\n attachments: ComponentStoryAttachments,\n ): Observable<void> => {\n const formData = new FormData();\n if (attachments.html != null) {\n formData.append('html', new Blob([attachments.html]), 'story-template.html');\n }\n if (attachments.css != null) {\n formData.append('css', new Blob([attachments.css]), 'story-styles.css');\n }\n if (attachments.js != null) {\n formData.append('js', new Blob([attachments.js]), 'story-script.js');\n }\n if (attachments.json != null) {\n formData.append('json', new Blob([attachments.json]), 'story-section.json');\n }\n\n return this.baseHttpService.upload({\n method: 'post',\n url: `${this.serviceUrl}/${templateId}/components/${componentId}/stories/${storyId}/attachments`,\n body: formData,\n });\n };\n\n public getTemplateThumbnailUrl(templateId: string) {\n return `${this.serviceUrl}/${templateId}/thumbnail/file`;\n }\n\n public attachTemplateThumbnail$(templateId: string, file: File) {\n const data = new FormData();\n data.append('thumb', file);\n\n return this.baseHttpService.upload({\n method: 'post',\n url: `${this.serviceUrl}/${templateId}/thumbnail`,\n body: data,\n });\n }\n\n public removeTemplateThumbnail$(templateId: string) {\n return this.baseHttpService.api({\n method: 'delete',\n url: `${this.serviceUrl}/${templateId}/thumbnail`,\n });\n }\n\n public fetchComponentAttachments$ = (\n templateId: string,\n component: TemplateComponent,\n ): Observable<ComponentAttachments> => {\n return forkJoin([\n this.fetchComponentAttachmentFile$(templateId, component.id, 'html'),\n this.fetchComponentAttachmentFile$(templateId, component.id, 'js'),\n this.fetchComponentAttachmentFile$(templateId, component.id, 'css'),\n this.fetchComponentAttachmentFile$(templateId, component.id, 'json'),\n ]).pipe(map(([html, js, css, json]) => ({ html, js, css, json })));\n };\n\n public fetchComponentsAttachments$ = (templateId: string): Observable<ComponentAttachments[]> => {\n return this.fetchComponents$(templateId).pipe(\n switchMap(components => {\n return forkJoin(components.map(component => this.fetchComponentAttachments$(templateId, component)));\n }),\n );\n };\n\n private fetchComponentAttachmentFile$ = (\n templateId: string,\n componentId: string,\n attachmentType: TemplateAttachmentType,\n ): Observable<string> => {\n return this.baseHttpService\n .api({\n method: 'get',\n url: `${this.serviceUrl}/${templateId}/components/${componentId}/attachments/${attachmentType}/file`,\n responseType: 'text',\n errorHandler: noop,\n })\n .pipe(catchError(() => of('')));\n };\n\n public uploadComponentAttachments$ = (\n templateId: string,\n componentId: string,\n attachments: ComponentAttachments,\n ): Observable<void> => {\n const formData = new FormData();\n if (attachments.html != null) {\n formData.append('html', new Blob([attachments.html]), 'template.html');\n }\n if (attachments.css != null) {\n formData.append('css', new Blob([attachments.css]), 'styles.css');\n }\n if (attachments.js != null) {\n formData.append('js', new Blob([attachments.js]), 'script.js');\n }\n if (attachments.json != null) {\n formData.append('json', new Blob([attachments.json]), 'section.json');\n }\n\n return this.baseHttpService.upload({\n method: 'post',\n url: `${this.serviceUrl}/${templateId}/components/${componentId}/attachments`,\n body: formData,\n });\n };\n}\n","import { HttpClientModule } from '@angular/common/http';\nimport { NgModule } from '@angular/core';\nimport { BaseHttpService, XrayService } from '@veloceapps/core';\nimport {\n ConfigurationProcessorsApiService,\n ContextDefinitionApiService,\n ProceduresAdminApiService,\n ProceduresApiService,\n RuleGroupsAdminApiService,\n RulesAdminApiService,\n RulesApiService,\n SalesTransactionApiService,\n ScriptsAdminApiService,\n ScriptsApiService,\n UIDefinitionsApiService,\n UITemplatesApiService,\n} from './services';\n\n@NgModule({\n imports: [HttpClientModule],\n providers: [\n BaseHttpService,\n ConfigurationProcessorsApiService,\n ContextDefinitionApiService,\n ProceduresAdminApiService,\n ProceduresApiService,\n RuleGroupsAdminApiService,\n RulesAdminApiService,\n RulesApiService,\n SalesTransactionApiService,\n ScriptsAdminApiService,\n ScriptsApiService,\n UIDefinitionsApiService,\n UITemplatesApiService,\n XrayService,\n ],\n})\nexport class ApiV2Module {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["map","catchError"],"mappings":"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"}
@@ -4,8 +4,8 @@ import * as i0 from '@angular/core';
4
4
  import { Injectable, NgModule } from '@angular/core';
5
5
  import { ApiV2Module } from '@veloceapps/api/v2';
6
6
  import * as i1 from '@veloceapps/core';
7
- import { uiDefinitionFromDTO, DomainComputation, Expression, Operator, isApexError, isCanvasError, ModelTranslatorUtils, EntityUtil, parseJsonSafely, BaseHttpService, XrayService } from '@veloceapps/core';
8
- import { noop, throwError, switchMap, of, map as map$1, from, catchError as catchError$1 } from 'rxjs';
7
+ import { Expression, Operator, isApexError, isCanvasError, ModelTranslatorUtils, EntityUtil, parseJsonSafely, BaseHttpService, XrayService } from '@veloceapps/core';
8
+ import { noop, of, map as map$1, from, catchError as catchError$1 } from 'rxjs';
9
9
  import { map, catchError, tap } from 'rxjs/operators';
10
10
  import * as i1$2 from 'primeng/api';
11
11
  import { isArray } from 'lodash';
@@ -350,110 +350,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
350
350
  type: Injectable
351
351
  }], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
352
352
 
353
- class ConfigurationApiService {
354
- constructor(httpService) {
355
- this.httpService = httpService;
356
- this.SERVICE_URL = '/configuration';
357
- }
358
- configureLineItem({ configurationRequest, runtimeModel, pricingEnabled, }) {
359
- return this.httpService
360
- .api({
361
- method: 'post',
362
- url: `${this.SERVICE_URL}${pricingEnabled ? '/price' : ''}`,
363
- body: configurationRequest,
364
- errorHandler: e => throwError(e),
365
- })
366
- .pipe(map(configurePrice => {
367
- if (runtimeModel) {
368
- return Object.assign(Object.assign({}, configurePrice), { lineItem: this.updateDomains(configurePrice.lineItem, runtimeModel) });
369
- }
370
- else {
371
- return configurePrice;
372
- }
373
- }));
374
- }
375
- customConfigurePrice({ url, configurationRequest, runtimeModel, }) {
376
- return this.httpService
377
- .api({
378
- method: 'post',
379
- url,
380
- body: configurationRequest,
381
- errorHandler: e => throwError(e),
382
- })
383
- .pipe(map(configurePrice => {
384
- if (runtimeModel) {
385
- return Object.assign(Object.assign({}, configurePrice), { lineItem: this.updateDomains(configurePrice.lineItem, runtimeModel) });
386
- }
387
- else {
388
- return configurePrice;
389
- }
390
- }));
391
- }
392
- getRuntimeDataByProductId(productId, offeringId, defaultUIDefinitionId, requiredUIDefinitionId) {
393
- return this.httpService
394
- .api({
395
- method: 'get',
396
- url: `${this.SERVICE_URL}/${productId}/model` + ((offeringId && `/${offeringId}`) || ''),
397
- })
398
- .pipe(switchMap(runtimeData => {
399
- if (requiredUIDefinitionId) {
400
- return this.httpService.api({ method: 'get', url: `/uidefinitions/${requiredUIDefinitionId}` }).pipe(map(uiDefinition => {
401
- return Object.assign(Object.assign({}, runtimeData), { uiDefinitions: [uiDefinition] });
402
- }));
403
- }
404
- const params = { productId };
405
- if (defaultUIDefinitionId) {
406
- params['defaultUIDefinitionId'] = defaultUIDefinitionId;
407
- }
408
- return this.httpService.api({ method: 'get', url: `/uidefinitions`, params }).pipe(map(uiDefinitions => {
409
- return Object.assign(Object.assign({}, runtimeData), { uiDefinitions });
410
- }));
411
- }), map(runtimeData => {
412
- return Object.assign(Object.assign({}, runtimeData), { uiDefinitions: runtimeData.uiDefinitions.map(dto => uiDefinitionFromDTO(dto)) });
413
- }));
414
- }
415
- getRuntimeDataByModelId(modelId) {
416
- return this.httpService.api({
417
- method: 'get',
418
- url: `${this.SERVICE_URL}/${modelId}/model-test`,
419
- });
420
- }
421
- updateDomains(lineItem, runtimeModel) {
422
- var _a, _b, _c;
423
- const component = runtimeModel.components.get(lineItem.type);
424
- const portDomains = Object.assign({}, lineItem.portDomains);
425
- // loop through ports to look for 'None' type domain computations
426
- for (const port of (_a = component === null || component === void 0 ? void 0 : component.ports) !== null && _a !== void 0 ? _a : []) {
427
- const portDomain = portDomains[port.name];
428
- if (((_b = portDomain === null || portDomain === void 0 ? void 0 : portDomain.properties) === null || _b === void 0 ? void 0 : _b['domainComputation']) === DomainComputation.NONE) {
429
- portDomain.domainTypes = port.domainTypes;
430
- }
431
- }
432
- const type = runtimeModel.types.find(({ name }) => {
433
- return lineItem.type === name;
434
- });
435
- const attributeDomains = lineItem.attributeDomains;
436
- if (type) {
437
- const initialDomains = lineItem.attributeDomains;
438
- type.attributes.forEach(attribute => {
439
- if (Object.prototype.hasOwnProperty.call(initialDomains, attribute.name)) {
440
- return;
441
- }
442
- if (attribute.attributeDomain) {
443
- attributeDomains[attribute.name] = attribute.attributeDomain;
444
- }
445
- });
446
- }
447
- return Object.assign(Object.assign({}, lineItem), { lineItems: (_c = lineItem.lineItems) === null || _c === void 0 ? void 0 : _c.map(i => this.updateDomains(i, runtimeModel)), attributeDomains,
448
- portDomains });
449
- }
450
- }
451
- ConfigurationApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ConfigurationApiService, deps: [{ token: i1.BaseHttpService }], target: i0.ɵɵFactoryTarget.Injectable });
452
- ConfigurationApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ConfigurationApiService });
453
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ConfigurationApiService, decorators: [{
454
- type: Injectable
455
- }], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
456
-
457
353
  class ConfigurationSettingsDTO {
458
354
  static fromDTO(dto, key) {
459
355
  return {
@@ -2181,7 +2077,6 @@ ApiModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.
2181
2077
  ApiModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ApiModule, providers: [
2182
2078
  BaseHttpService,
2183
2079
  XrayService,
2184
- ConfigurationApiService,
2185
2080
  ConfigurationSettingsApiService,
2186
2081
  DocumentAttachmentApiService,
2187
2082
  PriceApiService,
@@ -2219,7 +2114,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
2219
2114
  providers: [
2220
2115
  BaseHttpService,
2221
2116
  XrayService,
2222
- ConfigurationApiService,
2223
2117
  ConfigurationSettingsApiService,
2224
2118
  DocumentAttachmentApiService,
2225
2119
  PriceApiService,
@@ -2257,5 +2151,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
2257
2151
  * Generated bundle index. Do not edit.
2258
2152
  */
2259
2153
 
2260
- export { AccountApiService, ApiModule, CatalogAdminApiService, CatalogApiService, ConfigurationApiService, ConfigurationSettingsApiService, ContractedPriceApiService, DeltaApiService, DocumentAttachmentApiService, EndpointsApiService, FlowStateApiService, FlowsApiService, GuidedSellingApiService, GuidedSellingsAdminApiService, OffersApiService, OrgInfoApiService, PicklistsApiService, PortalsApiService, PriceApiService, ProductApiService, ProductModelApiService, PromotionsApiService, RampApiService, RebateProgramApiService, RebateTypeApiService, SalesforceApiService, SandboxManagerApiService, ShoppingCartSettingsApiService, StatefulConfigurationApiService, VeloceAuthService, VeloceObjectsApiService, handleCanvasResponse };
2154
+ export { AccountApiService, ApiModule, CatalogAdminApiService, CatalogApiService, ConfigurationSettingsApiService, ContractedPriceApiService, DeltaApiService, DocumentAttachmentApiService, EndpointsApiService, FlowStateApiService, FlowsApiService, GuidedSellingApiService, GuidedSellingsAdminApiService, OffersApiService, OrgInfoApiService, PicklistsApiService, PortalsApiService, PriceApiService, ProductApiService, ProductModelApiService, PromotionsApiService, RampApiService, RebateProgramApiService, RebateTypeApiService, SalesforceApiService, SandboxManagerApiService, ShoppingCartSettingsApiService, StatefulConfigurationApiService, VeloceAuthService, VeloceObjectsApiService, handleCanvasResponse };
2261
2155
  //# sourceMappingURL=veloceapps-api.mjs.map