@sap/artifact-management-types 1.25.0 → 1.26.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sap/artifact-management-types",
3
- "version": "1.25.0",
3
+ "version": "1.26.0",
4
4
  "description": "Type signatures for artifact management",
5
5
  "types": "./src/index.d.ts",
6
6
  "main": "./src/index.d.ts",
@@ -10,7 +10,7 @@
10
10
  "pack": "npm run modify-types-import && npm pack"
11
11
  },
12
12
  "dependencies": {
13
- "@sap/artifact-management-base-types": "1.25.0"
13
+ "@sap/artifact-management-base-types": "1.26.0"
14
14
  },
15
15
  "devDependencies": {
16
16
  "gulp": "4.0.2"
@@ -54,5 +54,5 @@ export default class CFProjectBuilder implements ProjectBuilder {
54
54
  private generateOverviewApplication;
55
55
  private generateURLFromMetadataService;
56
56
  private generateURLFromHtml5RepoService;
57
- private addDestinationForMtx;
57
+ private modifyMtx;
58
58
  }
@@ -0,0 +1,33 @@
1
+ import { Item, ProjectEntityReaderReadOptions, ProjectFileSystem } from '@sap/artifact-management-base-types';
2
+ import { ViewModel, Element, EntityType } from './model/model';
3
+ export default class CalculationViewItemReader {
4
+ private static readonly itemTags;
5
+ private parseBaseMeasureColumns;
6
+ private parseCalculatedMeasureColumns;
7
+ private parseRestrictedMeasureColumns;
8
+ private parseCalculatedColumns;
9
+ private parseDataSourceColumns;
10
+ private parseDataSources;
11
+ private getExposedColumns;
12
+ private getParsedXML;
13
+ private getNameAndNamespace;
14
+ getDetails({ fs, matchedFiles }: ProjectEntityReaderReadOptions): Promise<Item[]>;
15
+ static getDetail(fs: ProjectFileSystem, filePath: string): Promise<ViewModel | null>;
16
+ static viewModelToItem(viewModel: ViewModel, file: string): Item;
17
+ }
18
+ export declare const ProxyResolver: {
19
+ resolve(fs: ProjectFileSystem, rootModel: ViewModel, isAssociation: boolean): Promise<void[]>;
20
+ _resolveEntities(fs: ProjectFileSystem, rootModel: ViewModel, isAssociation: boolean): Promise<void[]>;
21
+ };
22
+ export declare class ProjectApiGeneralReader {
23
+ static getDetailByName(fs: ProjectFileSystem, entityName: string): Promise<{
24
+ type: EntityType;
25
+ columns: Element[];
26
+ } | null>;
27
+ private static getCdsEntityDetail;
28
+ static getCalculationViewDetail(fs: ProjectFileSystem, entityName: string): Promise<{
29
+ type: EntityType;
30
+ columns: Element[];
31
+ } | null>;
32
+ private static getCalculationViewFile;
33
+ }
@@ -0,0 +1,38 @@
1
+ interface Node {
2
+ nextSibling: any;
3
+ }
4
+ export default class XmlReader {
5
+ documentProperties: any;
6
+ _xmlDocument: Node;
7
+ _hasMovedDown: boolean;
8
+ _current: Node | null;
9
+ skippedNodes: any;
10
+ _skippedNodesStack: any[];
11
+ _removePrefixFunctions: any;
12
+ _isRead: boolean;
13
+ context: any;
14
+ private checkParserError;
15
+ private parseDocument;
16
+ private detectLineEndings;
17
+ private createDocumentProperties;
18
+ private fixLineEndings;
19
+ private _getParentSkippedNodes;
20
+ removePrefix(namespace: string, value: any): any;
21
+ private _tryMoveTo;
22
+ tryMoveTo(name: string, namespace?: string, match?: any): boolean;
23
+ tryMoveToIntermediate(name: string, namespace?: string, match?: any): boolean;
24
+ moveToIntermediate(name: string, namespace?: string, match?: any): this;
25
+ moveTo(name: string, namespace?: string, match?: any): this;
26
+ tryMoveDown(): boolean;
27
+ moveUp(): XmlReader;
28
+ moveDown(): this;
29
+ skipChildren(): this;
30
+ next(): this;
31
+ buildAttributes(attributeMapping: any, existingProperties?: any): any;
32
+ getAttribute(name: string, namespace?: string): string | null;
33
+ consumeAttribute(name: string, namespace?: string): string | null;
34
+ getContent(): any;
35
+ consumeContent(): any;
36
+ constructor(xmlDocument: string | Node, fixMixedLineEndings: string, forceLineEndings: boolean);
37
+ }
38
+ export {};
@@ -0,0 +1,44 @@
1
+ interface ChildNode {
2
+ }
3
+ interface Node {
4
+ }
5
+ export default abstract class Util {
6
+ private static XSI_NS;
7
+ private static XML_NS;
8
+ private static XMLNS_PREFIX;
9
+ static XMLNS_REGEX: RegExp;
10
+ static SELECTOR_REGEX: RegExp;
11
+ private static createSelectorNS;
12
+ static isMSXML(): boolean;
13
+ static parseInt(value: string): number;
14
+ static parseBool(value: string): boolean;
15
+ static createIntSelector(name: string): object;
16
+ static createBoolSelector(name: string): object;
17
+ static createSelector(name: string, valueMapper: any): object;
18
+ static createXsiSelector(name: string, valueMapper: any): object;
19
+ static parseSelector(selector: any): any;
20
+ }
21
+ export declare class SkippedNodes {
22
+ nodeName: string | undefined;
23
+ xmlnsAttributes: any[];
24
+ attributes: object;
25
+ attributeNames: any[];
26
+ nodesBefore: Node[];
27
+ childNodes: ChildNode[];
28
+ nodesAfter: any[];
29
+ intermediateElements: object;
30
+ constructor(nodeName?: string);
31
+ }
32
+ export declare class DocumentProperties {
33
+ detectedLineEndings: string;
34
+ hasMixedLineEndings: boolean;
35
+ spacesBeforeDocumentElement: string;
36
+ spacesAfterDocumentElement: string;
37
+ }
38
+ export declare class XmlReaderException extends Error {
39
+ message: string;
40
+ name: string;
41
+ constructor(node: Node | null | undefined, message: string);
42
+ toString(): string;
43
+ }
44
+ export {};
@@ -0,0 +1,401 @@
1
+ import modelbase, { ModelCollection, AbstractModelClass, WritableCalcViewModel } from './modelbase';
2
+ import { ValueFilter } from './sharedmodel';
3
+ export declare enum DataCategory {
4
+ DEFAULT = "DEFAULT",
5
+ DIMENSION = "DIMENSION",
6
+ CUBE = "CUBE",
7
+ FACT = "FACT",
8
+ TEXT = "TEXT",
9
+ HIERARCHY = "HIERARCHY"
10
+ }
11
+ export declare enum EntityType {
12
+ DATABASE_VIEW = "DATA_BASE_VIEW",
13
+ DATABASE_TABLE = "DATA_BASE_TABLE",
14
+ ATTRIBUTE_VIEW = "ATTRIBUTEVIEW",
15
+ ANALYTIC_VIEW = "ANALYTICVIEW",
16
+ CALCULATION_VIEW = "CALCULATIONVIEW",
17
+ TABLE_FUNCTION = "hdbtablefunction",
18
+ SCALAR_FUNCTION = "hdbscalarfunction",
19
+ PROCEDURE = "hdbprocedure",
20
+ CATALOG_PROCEDURE = "procedure",
21
+ GRAPH_WORKSPACE = "GRAPH_WORKSPACE"
22
+ }
23
+ export declare enum HierarchyFunction {
24
+ HIERARCHY = "HIERARCHY",
25
+ HIERARCHY_LEVELED = "HIERARCHY_LEVELED",
26
+ HIERARCHY_TEMPORAL = "HIERARCHY_TEMPORAL",
27
+ HIERARCHY_SPANTREE = "HIERARCHY_SPANTREE",
28
+ HIERARCHY_DESCENDANTS = "HIERARCHY_DESCENDANTS",
29
+ HIERARCHY_ANCESTORS = "HIERARCHY_ANCESTORS",
30
+ HIERARCHY_SIBLINGS = "HIERARCHY_SIBLINGS"
31
+ }
32
+ export declare enum JoinType {
33
+ REFERENTIAL = "referential",
34
+ INNER = "inner",
35
+ LEFT_OUTER = "leftOuter",
36
+ RIGHT_OUTER = "rightOuter",
37
+ FULL_OUTER = "fullOuter",
38
+ TEXT_TABLE = "textTable"
39
+ }
40
+ export declare enum OutputType {
41
+ Vertices = "vertices",
42
+ Edges = "edges"
43
+ }
44
+ export declare enum ViewNodeType {
45
+ JoinNode = "JoinNode",
46
+ Projection = "Projection",
47
+ Aggregation = "Aggregation",
48
+ Rank = "Rank",
49
+ WindowFunction = "WindowFunction",
50
+ Union = "Union",
51
+ Script = "Script",
52
+ Graph = "Graph",
53
+ Intersect = "Intersect",
54
+ Minus = "Minus",
55
+ TableFunction = "TableFunction",
56
+ Hierarchy = "Hierarchy",
57
+ NonEquiJoinNode = "NonEquiJoinNode",
58
+ Anonymize = "Anonymize"
59
+ }
60
+ export declare enum PrimitiveType {
61
+ VARCHAR = "VARCHAR",
62
+ NVARCHAR = "NVARCHAR",
63
+ TINYINT = "TINYINT",
64
+ SMALLINT = "SMALLINT",
65
+ INTEGER = "INTEGER",
66
+ BIGINT = "BIGINT",
67
+ DECIMAL = "DECIMAL",
68
+ REAL = "REAL",
69
+ FLOAT = "FLOAT",
70
+ DOUBLE = "DOUBLE",
71
+ SMALLDECIMAL = "SMALLDECIMAL",
72
+ NUMERIC = "NUMERIC",
73
+ BOOLEAN = "BOOLEAN",
74
+ BLOB = "BLOB",
75
+ NCLOB = "NCLOB",
76
+ VARBINARY = "VARBINARY",
77
+ DATE = "DATE",
78
+ SECONDDATE = "SECONDDATE",
79
+ TIME = "TIME",
80
+ TIMESTAMP = "TIMESTAMP"
81
+ }
82
+ export declare enum MeasureType {
83
+ RESTRICTION = "restriction",
84
+ COUNTER = "counter",
85
+ CALCULATED_MEASURE = "calculatedMeasure"
86
+ }
87
+ export declare enum SemanticType {
88
+ EMPTY = "empty",
89
+ AMOUNT = "amount",
90
+ QUANTITY = "quantity",
91
+ CURRENCY_CODE = "currencyCode",
92
+ UNIT_OF_MEASURE = "unitOfMeasure",
93
+ TIME = "time",
94
+ DATE = "date",
95
+ DATE_BUSINESS_DATE_FROM = "date.businessDateFrom",
96
+ DATE_BUSINESS_DATE_TO = "date.businessDateTo",
97
+ GEO_LOCATION_LONGITUDE = "geoLocation.longitude",
98
+ GEO_LOCATION_LATITUDE = "geoLocation.latitude",
99
+ GEO_LOCATION_CARTO_ID = "geoLocation.cartoId",
100
+ GEO_LOCATION_NORMALIZED_NAME = "geoLocation.normalizedName",
101
+ CLIENT = "client",
102
+ LANGUAGE = "language",
103
+ DESCRIPTION = "description",
104
+ HYPERLINK = "hyperlink"
105
+ }
106
+ export declare enum ExpressionLanguage {
107
+ COLUMN_ENGINE = "COLUMN_ENGINE",
108
+ SQL = "SQL"
109
+ }
110
+ export declare enum SortDirection {
111
+ ASC = "ASC",
112
+ DESC = "DESC"
113
+ }
114
+ declare class SortAttribute extends AbstractModelClass<SortAttribute> {
115
+ id: string;
116
+ direction: SortDirection;
117
+ constructor(attributes: WritableCalcViewModel<SortAttribute>, skippedNodes: any);
118
+ }
119
+ declare class Expression extends AbstractModelClass<Expression> {
120
+ formula: string;
121
+ expressionLanguage: ExpressionLanguage;
122
+ constructor(attributes: WritableCalcViewModel<Expression>, skippedNodes?: any);
123
+ }
124
+ export declare class Entity extends AbstractModelClass<Entity> {
125
+ protected readonly $$keyAttributeName = "id";
126
+ name: string;
127
+ id: string;
128
+ type: EntityType;
129
+ isProxy: boolean;
130
+ isLoadFromXML: boolean;
131
+ readonly elements: ModelCollection<Element>;
132
+ constructor(attributes: any, skippedNodes: any);
133
+ createElement(attributes: WritableCalcViewModel<Element> & {
134
+ name: string;
135
+ }, skippedNodes?: any, nextElementName?: string): Element;
136
+ createOrMergeElement(attributes: WritableCalcViewModel<Element> & {
137
+ name: string;
138
+ }, skippedNodes?: any, nextElementName?: string): Element;
139
+ }
140
+ export declare class Parameter extends AbstractModelClass<Parameter> {
141
+ protected $$keyAttributeName: string;
142
+ name: string;
143
+ isVariable: boolean;
144
+ private readonly _fuzzySimilarity;
145
+ readonly assignedElements: ModelCollection<Element>;
146
+ constructor(attributes: WritableCalcViewModel<Parameter> & {
147
+ name: string;
148
+ }, skippedNodes: any);
149
+ }
150
+ export declare class UDFParameter extends AbstractModelClass<UDFParameter> {
151
+ private readonly _element;
152
+ private readonly _parameter;
153
+ constructor(attributes: any, skippedNodes: any);
154
+ get element(): Element | null;
155
+ set element(value: Element | null);
156
+ get parameter(): Parameter | null;
157
+ set parameter(value: Parameter | null);
158
+ }
159
+ export declare class Order extends AbstractModelClass<Order> {
160
+ private readonly _byElement;
161
+ constructor(attributes: any, skippedNodes: any);
162
+ get byElement(): Element;
163
+ set byElement(value: Element);
164
+ }
165
+ export declare class ColumnView extends AbstractModelClass<ColumnView> {
166
+ id: string;
167
+ dataCategory: DataCategory;
168
+ readonly parameters: ModelCollection<Parameter>;
169
+ readonly viewNodes: ModelCollection<ViewNode>;
170
+ _defaultNode: ViewNode;
171
+ _defaultNodeElementInstancesArray: Element[];
172
+ constructor(attributes: any, skippedNodes: any);
173
+ createViewNode(attributes: WritableCalcViewModel<ViewNode> & {
174
+ name: string;
175
+ }, skippedNodes: any, isDefaultNode?: boolean): ViewNode;
176
+ createOrMergeViewNode(attributes: WritableCalcViewModel<ViewNode> & {
177
+ name: string;
178
+ }, skippedNodes: any, isDefaultNode?: boolean): ViewNode;
179
+ createParameter(attributes: WritableCalcViewModel<Parameter> & {
180
+ name: string;
181
+ }, skippedNodes: any): Parameter;
182
+ getDefaultNode(): ViewNode;
183
+ setDefaultNode(viewNode: ViewNode): void;
184
+ }
185
+ export declare class ViewModel extends modelbase.AbstractModel {
186
+ private readonly _columnView;
187
+ readonly _entities: ModelCollection<Entity>;
188
+ readonly referenceEntities: ModelCollection<Entity>;
189
+ constructor();
190
+ get columnView(): ColumnView;
191
+ set columnView(value: ColumnView);
192
+ createColumnView(attributes: any, skippedNodes: any): ColumnView;
193
+ createEntity(attributes: any, skippedNodes?: any): Entity;
194
+ }
195
+ export declare class ViewNode extends AbstractModelClass<ViewNode> {
196
+ protected readonly $$keyAttributeName = "name";
197
+ _isDefaultNode: boolean;
198
+ name: string;
199
+ type: ViewNodeType;
200
+ action?: any;
201
+ useDimensionViewHierarchies: boolean;
202
+ hierarchyFunction?: HierarchyFunction;
203
+ private readonly _filterExpression;
204
+ readonly inputs: ModelCollection<Input>;
205
+ readonly elements: ModelCollection<Element>;
206
+ readonly joins: ModelCollection<Join>;
207
+ private readonly _rankingFilter;
208
+ private readonly _windowFunction;
209
+ readonly sortAttributes: ModelCollection<SortAttribute>;
210
+ viewAttributeKeys: any;
211
+ constructor(attributes: WritableCalcViewModel<ViewNode>, skippedNodes: any);
212
+ get filterExpression(): Expression | null;
213
+ set filterExpression(value: Expression | null);
214
+ get rankingFilter(): RankFilter | null;
215
+ set rankingFilter(value: RankFilter | null);
216
+ get windowFunction(): WindowFunction | null;
217
+ set windowFunction(value: WindowFunction | null);
218
+ $getContainer(): ColumnView;
219
+ createInput(attributes: WritableCalcViewModel<Input>, skippedNodes: any): Input;
220
+ createElementWithoutAddingIntoElementCollection(attributes: WritableCalcViewModel<Element> & {
221
+ name: string;
222
+ }, skippedNodes?: any): Element;
223
+ createOrMergeElement(attributes: WritableCalcViewModel<Element> & {
224
+ name: string;
225
+ }, skippedNodes: any): Element;
226
+ createJoin(attributes: WritableCalcViewModel<Join>, skippedNodes: any): Join;
227
+ createSortAttributes(attributes: WritableCalcViewModel<SortAttribute>, skippedNodes: any): SortAttribute;
228
+ createFilterExpression(attributes: WritableCalcViewModel<Expression>, skippedNodes: any): Expression;
229
+ createRankFilter(attributes: WritableCalcViewModel<RankFilter>, skippedNodes?: any): RankFilter;
230
+ createWindowFunction(attributes: WritableCalcViewModel<WindowFunction>, skippedNodes?: any): WindowFunction;
231
+ isDefaultNode(): boolean;
232
+ isScriptNode(): boolean;
233
+ isJoinNode(): boolean;
234
+ isStarJoin(): boolean;
235
+ getDefaultInput(): Input | undefined;
236
+ getAllMappingsOfViewNode(): {
237
+ [key: string]: {
238
+ mapping: Mapping;
239
+ input: Input;
240
+ };
241
+ };
242
+ }
243
+ declare class RankFilter extends AbstractModelClass<RankFilter> {
244
+ type: string;
245
+ offset: string;
246
+ offsetParameter: string;
247
+ offsetReference: string;
248
+ dynamicPartitionElements: boolean;
249
+ rankViewAttributeName: string;
250
+ readonly orders: ModelCollection<Order>;
251
+ private readonly _rankThreshold;
252
+ readonly partitionElements: ModelCollection<Element>;
253
+ constructor(attributes: WritableCalcViewModel<RankFilter>, skippedNodes: any);
254
+ get rankThreshold(): UDFParameter | null;
255
+ set rankThreshold(value: UDFParameter | null);
256
+ createOrMergeRankThreshold(attributes: WritableCalcViewModel<UDFParameter>, skippedNodes: any): UDFParameter | null;
257
+ createOrder(attributes: WritableCalcViewModel<Order>, skippedNodes: any): Order;
258
+ }
259
+ declare class WindowFunction extends AbstractModelClass<WindowFunction> {
260
+ name: string;
261
+ functionArguments: string[];
262
+ readonly orderAttributes: ModelCollection<Order>;
263
+ readonly partitionAttributes: ModelCollection<Element>;
264
+ private readonly _resultElement;
265
+ constructor(attributes: any, skippedNodes: any);
266
+ get resultElement(): Element | null;
267
+ set resultElement(value: Element | null);
268
+ createOrder(attributes: WritableCalcViewModel<Order>, skippedNodes?: any): Order;
269
+ }
270
+ export declare class Join extends AbstractModelClass<Join> {
271
+ joinType: JoinType;
272
+ private readonly _temporalJoinProperties;
273
+ private readonly _leftInput;
274
+ private readonly _rightInput;
275
+ readonly leftElements: ModelCollection<Element>;
276
+ readonly rightElements: ModelCollection<Element>;
277
+ constructor(attributes: any, skippedNodes: any);
278
+ get temporalJoinProperties(): TemporalJoinProperties | null;
279
+ set temporalJoinProperties(value: TemporalJoinProperties | null);
280
+ get leftInput(): Input | null;
281
+ set leftInput(value: Input | null);
282
+ get rightInput(): Input | null;
283
+ set rightInput(value: Input | null);
284
+ createTemporalJoinProperties(attributes: WritableCalcViewModel<TemporalJoinProperties>, skippedNodes?: any): TemporalJoinProperties;
285
+ }
286
+ declare class TemporalJoinProperties extends AbstractModelClass<TemporalJoinProperties> {
287
+ temporalCondition: TemporalCondition;
288
+ private readonly _temporalElement;
289
+ private readonly _fromElement;
290
+ private readonly _toElement;
291
+ constructor(attributes: WritableCalcViewModel<TemporalJoinProperties>, skippedNodes: any);
292
+ get temporalElement(): Element | null;
293
+ set temporalElement(value: Element | null);
294
+ get fromElement(): Element | null;
295
+ set fromElement(value: Element | null);
296
+ get toElement(): Element | null;
297
+ set toElement(value: Element | null);
298
+ }
299
+ export declare enum TemporalCondition {
300
+ INCLUDE_TO_EXCLUDE_FROM = "INCLUDE_TO_EXCLUDE_FROM",
301
+ EXCLUDE_TO_INCLUDE_FROM = "EXCLUDE_TO_INCLUDE_FROM",
302
+ EXCLUDE_BOTH = "EXCLUDE_BOTH",
303
+ INCLUDE_BOTH = "INCLUDE_BOTH"
304
+ }
305
+ export declare enum AggregationBehavior {
306
+ NONE = "none",
307
+ SUM = "sum",
308
+ MIN = "min",
309
+ MAX = "max",
310
+ COUNT = "count",
311
+ FORMULA = "formula"
312
+ }
313
+ export declare enum ExceptionAggregationBehavior {
314
+ COUNT_DISTINCT = "countDistinct"
315
+ }
316
+ export declare enum MappingType {
317
+ ElementMapping = "ElementMapping",
318
+ ConstantElementMapping = "ConstantElementMapping",
319
+ InputMapping = "InputMapping"
320
+ }
321
+ export declare class Mapping extends AbstractModelClass<Mapping> {
322
+ type: MappingType;
323
+ private readonly _targetElement;
324
+ private readonly _sourceElement;
325
+ private readonly _sourceInput;
326
+ constructor(attributes: WritableCalcViewModel<Mapping>, skippedNodes: any);
327
+ get targetElement(): Element | null;
328
+ set targetElement(value: Element | null);
329
+ get sourceElement(): Element | null;
330
+ set sourceElement(value: Element | null);
331
+ get sourceInput(): Input | null;
332
+ set sourceInput(value: Input | null);
333
+ }
334
+ export declare class Input extends AbstractModelClass<Input> {
335
+ alias: string;
336
+ repositoryInputNodeId: string;
337
+ selectAll: boolean;
338
+ outputName?: OutputType;
339
+ readonly mappings: ModelCollection<Mapping>;
340
+ private _source;
341
+ constructor(attributes: WritableCalcViewModel<Input>, skippedNodes: any);
342
+ getSource(): ViewNode | Entity | null;
343
+ setSource(source: ViewNode | Entity): ViewNode | Entity;
344
+ createMapping(attributes: WritableCalcViewModel<Mapping>, skippedNodes: any): Mapping;
345
+ }
346
+ export declare class Element extends AbstractModelClass<Element> {
347
+ protected readonly $$keyAttributeName = "name";
348
+ name: string;
349
+ measureType?: MeasureType;
350
+ keep?: boolean;
351
+ transparentFilter?: boolean;
352
+ isProxy: boolean;
353
+ generatedColumn: boolean;
354
+ inlineType?: SimpleType;
355
+ calculationDefinition?: any;
356
+ readonly restrictions: ModelCollection<ElementRefFilter>;
357
+ private readonly _restrictionExpression;
358
+ constructor(attributes: WritableCalcViewModel<Element>, skippedNodes?: any);
359
+ get restrictionExpression(): Expression | null;
360
+ set restrictionExpression(value: Expression | null);
361
+ createOrMergeSimpleType(attributes: WritableCalcViewModel<SimpleType>, skippedNodes?: any): SimpleType;
362
+ getMapping(): Mapping | undefined;
363
+ createDefaultMapping(attributes: WritableCalcViewModel<Mapping>, skippedNodes: any): Mapping | null;
364
+ createCalculationDefinition(attributes: WritableCalcViewModel<Expression>): any;
365
+ createRestriction(attributes: WritableCalcViewModel<ElementRefFilter>, skippedNodes: any): ElementRefFilter;
366
+ createRestrictionExpression(attributes: WritableCalcViewModel<Expression>): Expression;
367
+ isCalculatedColumn(): boolean;
368
+ isRestrictedColumn(): boolean;
369
+ isHierarchyGererated(): true | undefined;
370
+ }
371
+ export declare class SimpleType extends AbstractModelClass<SimpleType> {
372
+ primitiveType: PrimitiveType;
373
+ length?: number;
374
+ precision?: number;
375
+ scale?: number;
376
+ semanticType?: SemanticType;
377
+ isDerived?: boolean;
378
+ presentationScale?: number;
379
+ readonly valueRanges: ModelCollection<ValueRange>;
380
+ constructor(attributes: WritableCalcViewModel<SimpleType>, skippedNodes: any);
381
+ }
382
+ export declare class ValueRange extends AbstractModelClass<ValueRange> {
383
+ protected readonly $$keyAttributeName = "value";
384
+ value: string;
385
+ label?: string;
386
+ constructor(attributes: WritableCalcViewModel<ValueRange>, skippedNodes: any);
387
+ }
388
+ /**
389
+ * @class ElementRefFilter - Similar to ElementFilter; but this one contains object based reference to Element
390
+ * @property {Element} element - Element reference
391
+ * @property {ModelCollection} valueFilters - Collection of objects of type sharedmodel.ValueFilter
392
+ */
393
+ export declare class ElementRefFilter extends AbstractModelClass<ElementRefFilter> {
394
+ type: string;
395
+ readonly valueFilters: ModelCollection<ValueFilter>;
396
+ private readonly _element;
397
+ get element(): Element;
398
+ set element(value: Element);
399
+ createValueFilter(attributes: WritableCalcViewModel<ValueFilter>, skippedNodes: any): ValueFilter;
400
+ }
401
+ export {};
@@ -0,0 +1,105 @@
1
+ export declare class ModelException extends Error {
2
+ objects: any;
3
+ constructor(message: string, objects?: any);
4
+ }
5
+ export declare class ObjectAlreadyExistsException extends ModelException {
6
+ name: string;
7
+ constructor(object: any, key: string, containingFeature: any);
8
+ }
9
+ export declare class TransformationException extends ModelException {
10
+ name: string;
11
+ constructor(message: string, objects: any[]);
12
+ }
13
+ export declare class UnsupportedOperationException extends ModelException {
14
+ name: string;
15
+ constructor(feature: any);
16
+ }
17
+ export declare class AttributeMissingException extends ModelException {
18
+ name: string;
19
+ constructor(object: any, attributeName: string);
20
+ }
21
+ declare class ModelFeature {
22
+ _owner: AbstractModel | AbstractModelClass<any> | null;
23
+ _name: string;
24
+ _isContainment: boolean;
25
+ constructor(_owner: AbstractModel | AbstractModelClass<any> | null, _name: string, _isContainment: boolean);
26
+ isContainment(): boolean;
27
+ getOwner(): AbstractModel | AbstractModelClass<any>;
28
+ }
29
+ export declare class SingleValueContainer<T extends AbstractModelClass<T>> extends ModelFeature {
30
+ _value: T | null;
31
+ constructor(owner: AbstractModel | AbstractModelClass<any> | null, name: string, isContainment: boolean);
32
+ set(value: T): void;
33
+ get(): T | null;
34
+ }
35
+ export declare class ModelCollection<T extends AbstractModelClass<T>> extends ModelFeature {
36
+ _keys: (string | undefined)[];
37
+ _values: {
38
+ [key: string]: T;
39
+ };
40
+ constructor(owner: AbstractModel | AbstractModelClass<any>, name: string, isContainment: boolean);
41
+ foreach(func: (value: T, key?: string, context?: any) => void): void;
42
+ setAt(index: number, value: T): void;
43
+ getAt(index: number): T | undefined;
44
+ addValue(value: T): T;
45
+ addValueNextKey(value: T, nextKey: string): T;
46
+ add(key: string, value: T): void;
47
+ addKeyValueNextKey(key: string, value: T, nextKey: string): void;
48
+ private _addBefore;
49
+ private addByIndex;
50
+ indexOf(key: string): number;
51
+ get(key: string): T;
52
+ _remove(key: string, noSplice: boolean): void;
53
+ remove(key: string, noSplice: boolean, deep?: boolean): T;
54
+ count(): number;
55
+ getUniqueKeyNumber(): string;
56
+ getUniqueKey(elementName: string, suffix?: string): string;
57
+ }
58
+ export declare abstract class AbstractModel {
59
+ $$isLoading: boolean;
60
+ constructor(isLoading?: any);
61
+ $getModel(): AbstractModel;
62
+ }
63
+ declare type IfEquals<X, Y> = (<T>() => T extends X ? 1 : 2) extends (<T>() => T extends Y ? 1 : 2) ? true : false;
64
+ declare type NonReadonlyKeys<T> = {
65
+ [K in keyof T]: IfEquals<{
66
+ -readonly [P in K]: T[P];
67
+ }, {
68
+ [P in K]: T[P];
69
+ }> extends true ? K : never;
70
+ }[keyof T];
71
+ declare type NonFunctionKeys<T> = {
72
+ [K in keyof T]: T[K] extends Function ? never : K;
73
+ }[keyof T];
74
+ export declare type WritableCalcViewModel<T> = Partial<Pick<T, NonReadonlyKeys<T> & NonFunctionKeys<T>>>;
75
+ export declare abstract class AbstractModelClass<T extends AbstractModelClass<T>> {
76
+ private $$containingFeature;
77
+ private $$model;
78
+ private $$removed;
79
+ private $$usingFeatures;
80
+ private $$usingFeatureKeys;
81
+ private $$defaultKeyValue;
82
+ private $$skippedNodes;
83
+ protected $$keyAttributeName?: string;
84
+ constructor(attributes: WritableCalcViewModel<T>, skippedNodes?: any);
85
+ $addSkippedNodes(skippedNodes: any): void;
86
+ $setAttributes(changedAttributes: any, skippedNodes?: any): void;
87
+ $getModel(): AbstractModel | null;
88
+ $setModel(model: AbstractModel | null): void;
89
+ $getContainer(): AbstractModel | AbstractModelClass<any> | null;
90
+ $$setContainingFeature(feature: SingleValueContainer<any> | ModelCollection<any> | null): void;
91
+ $getKeyAttributeName(): string | undefined;
92
+ $getKeyAttributeValue(): string;
93
+ $hasKeyAttribute(): boolean;
94
+ $rename(newKey: string | number, doNotRenameContainment?: boolean): void;
95
+ }
96
+ declare const _default: {
97
+ ModelCollection: typeof ModelCollection;
98
+ AbstractModel: typeof AbstractModel;
99
+ AbstractModelClass: typeof AbstractModelClass;
100
+ ModelException: typeof ModelException;
101
+ AttributeMissingException: typeof AttributeMissingException;
102
+ UnsupportedOperationException: typeof UnsupportedOperationException;
103
+ TransformationException: typeof TransformationException;
104
+ };
105
+ export default _default;
@@ -0,0 +1,33 @@
1
+ import XmlReader from './XmlReader';
2
+ import { AbstractModelClass, WritableCalcViewModel } from './modelbase';
3
+ export declare class ValueFilter extends AbstractModelClass<ValueFilter> {
4
+ operator: ValueFilterOperator;
5
+ constructor(attributes: WritableCalcViewModel<ValueFilter>, skippedNodes: any);
6
+ }
7
+ declare enum ValueFilterOperator {
8
+ EQUAL = "EQ",
9
+ LESS_THAN = "LT",
10
+ LESS_EQUAL = "LE",
11
+ GREATER_THAN = "GT",
12
+ GREATER_EQUAL = "GE",
13
+ BETWEEN = "BT",
14
+ IN = "IN",
15
+ CONTAINS_PATTERN = "CP",
16
+ IS_NULL = "NL",
17
+ IS_NOT_NULL = "NU"
18
+ }
19
+ declare const _default: {
20
+ NameSpace: {
21
+ CALCULATION: string;
22
+ ACCESSCONTROL: string;
23
+ PRIVILEGE: string;
24
+ VARIABLE: string;
25
+ DATAFOUNDATION: string;
26
+ DIMENSION: string;
27
+ GRAPH: string;
28
+ };
29
+ ValueFilter: typeof ValueFilter;
30
+ parseDescriptions: (reader: XmlReader, attributes: any) => any;
31
+ parseValueFilter: (reader: XmlReader) => ValueFilter;
32
+ };
33
+ export default _default;
@@ -0,0 +1,62 @@
1
+ import { ColumnView, Element, Entity, EntityType, Input, ViewModel, ViewNode, ViewNodeType } from '../model/model';
2
+ import XmlReader from '../model/XmlReader';
3
+ export default abstract class CalculationViewXmlParser {
4
+ static propagateDataTypeToDefaultNode(columnView: ColumnView): void;
5
+ private static _propagateDataTypeToViewNode;
6
+ private static _getInlineTypeFromSource;
7
+ static parseScenario(xml: string, model: ViewModel, fixMixedLineEndings: boolean, forceLineEndings: boolean): void;
8
+ private static _getDefaultNodeElementInstanceByElementName;
9
+ private static _createDefaultNodeElementInstanceByElementName;
10
+ private static _setSkippedNodes;
11
+ private static _checkProxyElementsInDefaultNode;
12
+ private static parseOrigin;
13
+ private static processInternalExternalConversion;
14
+ private static parseMaskingExpression;
15
+ private static parseVariable;
16
+ private static parseDataSource;
17
+ private static processTypedObjectExternalTypeOfElement;
18
+ private static processTypedObjectExternalTypeOfElementParameterMapping;
19
+ private static parseCalculationView;
20
+ private static parseViewAttribute;
21
+ private static parseRestrictedViewAttribute;
22
+ private static parseRankingFilter;
23
+ private static parseCalculatedViewAttribute;
24
+ private static parseInput;
25
+ static parseMapping(reader: XmlReader, input: Input, columnView: ColumnView, isSimpleMapping: boolean, mappingElementName?: string): boolean;
26
+ private static parseVariableMappings;
27
+ static parseVariableMapping(reader: XmlReader, variableMappingTagName?: string, columnView?: ColumnView): any;
28
+ private static postProcessVariableMappings;
29
+ static parseLogicalModel(reader: XmlReader, columnView: ColumnView, outputViewType: ViewNodeType, outputViewName: string, dataSources: {
30
+ [key: string]: {
31
+ id?: string;
32
+ type?: string;
33
+ };
34
+ }, isStarJoin: boolean): void;
35
+ private static parseStarJoinPrivateJoinColumns;
36
+ private static parseStarJoinSharedJoinColumns;
37
+ private static parseStarJoinJoinProperties;
38
+ private static processTemporalJoinProperties;
39
+ private static processStarJoinAliasedSharedJoinColumns;
40
+ private static parseAssociatedHierarchyFeature;
41
+ private static processStarJoinSemanticAttributeMappings;
42
+ private static remove$localFromStarJoinPrivateJoinColumns;
43
+ private static getStarJoinViewNodeInput;
44
+ private static getStarJoinViewNodeInputSource;
45
+ private static parseCurrencyAndUnitConversion;
46
+ static createDefaultNodeElement(viewNode: ViewNode, attributes: any, isScriptNode: boolean, isStarJoin: boolean): void;
47
+ private static parseUnitCurrencyAttribute;
48
+ static parseAttribute(reader: XmlReader, viewNode: ViewNode, allAttributes: Element[]): boolean;
49
+ static parseCalculatedAttribute(reader: XmlReader, viewNode: ViewNode, allAttributes: Element[]): boolean;
50
+ static parseMeasure(reader: XmlReader, viewNode: ViewNode, allAttributes: Element[]): any;
51
+ static parseCalculatedMeasure(reader: XmlReader, viewNode: ViewNode, allAttributes: Element[]): any;
52
+ static parseRestrictedMeasure(reader: XmlReader, viewNode: ViewNode, allAttributes: Element[]): any;
53
+ private static parseExceptionAggregationMetadata;
54
+ private static doLoadPostProcessing;
55
+ private static registerForLoadPostProcessing;
56
+ private static excecuteLoadPostProcessingCallBackQueue;
57
+ }
58
+ export declare const getElementFromColumnView: (columnView: ColumnView, name: string) => Element | null;
59
+ export declare const getEntity: (columnView: ColumnView, id: string, entityType?: EntityType | undefined) => Entity;
60
+ export declare const getElementFromsharedEntity: (entity: Entity, elementName: string) => Element;
61
+ export declare const getParameterFromColumnView: (columnView: ColumnView, name: string) => import("../model/model").Parameter | null;
62
+ export declare const processUDFParameter: (columnView: ColumnView, udfParameter: any, values: any) => any;
@@ -0,0 +1,14 @@
1
+ import XmlReader from '../model/XmlReader';
2
+ import { ColumnView, ViewNode } from '../model/model';
3
+ export default abstract class CalculationViewXmlParserHelper {
4
+ static populateSimpleTypeAttributesFromElementAttributes(elementAttributes: any, simpleTypeAttributes: any): void;
5
+ static mapViewNodeType(type: any): any;
6
+ static createEndUserTextsIfRequired(object: any, attributes: any): void;
7
+ static getBooleanFromString(input: any): any;
8
+ static populateJoinAttributesFromViewNodeAttributes(joinAttributes: any, viewNodeAttributes: any): void;
9
+ static mapRepositoryTypeToEntityType(type: any): any;
10
+ static isItDesigntimeRepositoryObject(type: any): boolean;
11
+ static processWindowFunction(reader: XmlReader, columnView: ColumnView, viewNode: ViewNode): void;
12
+ static checkForStarJoinWithDomAPI(reader: XmlReader): boolean;
13
+ static parseUDFParameter(reader: XmlReader, parentTagName: string): any;
14
+ }
@@ -78,4 +78,6 @@ export default class ProjectImpl implements ProjectApi {
78
78
  getDataInfo(data: any, mainEntityName?: string, logger?: IChildLogger): Promise<any>;
79
79
  private modifyCDSProfile;
80
80
  private modifyCDSProductionDB;
81
+ private modifyLowcodeEventHandler;
82
+ private modifyPackgeJSON;
81
83
  }