@aidc-toolkit/app-extension 1.0.52 → 1.0.53-beta
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/dist/app-extension-options.d.ts +52 -0
- package/dist/app-extension-options.d.ts.map +1 -0
- package/dist/app-extension-options.js +2 -0
- package/dist/app-extension-options.js.map +1 -0
- package/dist/app-extension.d.ts +194 -0
- package/dist/app-extension.d.ts.map +1 -0
- package/dist/app-extension.js +141 -0
- package/dist/app-extension.js.map +1 -0
- package/dist/app-helper-proxy.d.ts +57 -0
- package/dist/app-helper-proxy.d.ts.map +1 -0
- package/dist/app-helper-proxy.js +354 -0
- package/dist/app-helper-proxy.js.map +1 -0
- package/dist/{descriptor-Df-lif4q.d.cts → descriptor.d.ts} +13 -13
- package/dist/descriptor.d.ts.map +1 -0
- package/dist/descriptor.js +44 -0
- package/dist/descriptor.js.map +1 -0
- package/dist/generator/functions-generator.d.ts +103 -0
- package/dist/generator/functions-generator.d.ts.map +1 -0
- package/dist/generator/functions-generator.js +179 -0
- package/dist/generator/functions-generator.js.map +1 -0
- package/dist/generator/generator.d.ts +121 -0
- package/dist/generator/generator.d.ts.map +1 -0
- package/dist/generator/generator.js +186 -0
- package/dist/generator/generator.js.map +1 -0
- package/dist/generator/index.d.ts +18 -223
- package/dist/generator/index.d.ts.map +1 -0
- package/dist/generator/index.js +3 -1
- package/dist/generator/index.js.map +1 -0
- package/dist/generator/locale-resources-generator.d.ts +2 -0
- package/dist/generator/locale-resources-generator.d.ts.map +1 -0
- package/dist/generator/locale-resources-generator.js +333 -0
- package/dist/generator/locale-resources-generator.js.map +1 -0
- package/dist/gs1/character-set-proxy.d.ts +12 -0
- package/dist/gs1/character-set-proxy.d.ts.map +1 -0
- package/dist/gs1/character-set-proxy.js +126 -0
- package/dist/gs1/character-set-proxy.js.map +1 -0
- package/dist/gs1/check-proxy.d.ts +11 -0
- package/dist/gs1/check-proxy.d.ts.map +1 -0
- package/dist/gs1/check-proxy.js +163 -0
- package/dist/gs1/check-proxy.js.map +1 -0
- package/dist/gs1/gcp-length-proxy.d.ts +11 -0
- package/dist/gs1/gcp-length-proxy.d.ts.map +1 -0
- package/dist/gs1/gcp-length-proxy.js +187 -0
- package/dist/gs1/gcp-length-proxy.js.map +1 -0
- package/dist/gs1/gtin-creator-proxy.d.ts +10 -0
- package/dist/gs1/gtin-creator-proxy.d.ts.map +1 -0
- package/dist/gs1/gtin-creator-proxy.js +85 -0
- package/dist/gs1/gtin-creator-proxy.js.map +1 -0
- package/dist/gs1/gtin-descriptor.d.ts +3 -0
- package/dist/gs1/gtin-descriptor.d.ts.map +1 -0
- package/dist/gs1/gtin-descriptor.js +8 -0
- package/dist/gs1/gtin-descriptor.js.map +1 -0
- package/dist/gs1/gtin-validator-proxy.d.ts +26 -0
- package/dist/gs1/gtin-validator-proxy.d.ts.map +1 -0
- package/dist/gs1/gtin-validator-proxy.js +256 -0
- package/dist/gs1/gtin-validator-proxy.js.map +1 -0
- package/dist/gs1/identifier-creator-proxy.d.ts +30 -0
- package/dist/gs1/identifier-creator-proxy.d.ts.map +1 -0
- package/dist/gs1/identifier-creator-proxy.js +318 -0
- package/dist/gs1/identifier-creator-proxy.js.map +1 -0
- package/dist/gs1/identifier-descriptor.d.ts +4 -0
- package/dist/gs1/identifier-descriptor.d.ts.map +1 -0
- package/dist/gs1/identifier-descriptor.js +14 -0
- package/dist/gs1/identifier-descriptor.js.map +1 -0
- package/dist/gs1/identifier-type.d.ts +22 -0
- package/dist/gs1/identifier-type.d.ts.map +1 -0
- package/dist/gs1/identifier-type.js +34 -0
- package/dist/gs1/identifier-type.js.map +1 -0
- package/dist/gs1/identifier-validator-proxy.d.ts +29 -0
- package/dist/gs1/identifier-validator-proxy.d.ts.map +1 -0
- package/dist/gs1/identifier-validator-proxy.js +212 -0
- package/dist/gs1/identifier-validator-proxy.js.map +1 -0
- package/dist/gs1/index.d.ts +11 -185
- package/dist/gs1/index.d.ts.map +1 -0
- package/dist/gs1/index.js +11 -1
- package/dist/gs1/index.js.map +1 -0
- package/dist/gs1/non-gtin-creator-proxy.d.ts +37 -0
- package/dist/gs1/non-gtin-creator-proxy.d.ts.map +1 -0
- package/dist/gs1/non-gtin-creator-proxy.js +301 -0
- package/dist/gs1/non-gtin-creator-proxy.js.map +1 -0
- package/dist/gs1/non-gtin-validator-proxy.d.ts +36 -0
- package/dist/gs1/non-gtin-validator-proxy.d.ts.map +1 -0
- package/dist/gs1/non-gtin-validator-proxy.js +302 -0
- package/dist/gs1/non-gtin-validator-proxy.js.map +1 -0
- package/dist/gs1/prefix-definition-descriptor.d.ts +4 -0
- package/dist/gs1/prefix-definition-descriptor.d.ts.map +1 -0
- package/dist/gs1/prefix-definition-descriptor.js +16 -0
- package/dist/gs1/prefix-definition-descriptor.js.map +1 -0
- package/dist/gs1/prefix-manager-proxy.d.ts +8 -0
- package/dist/gs1/prefix-manager-proxy.d.ts.map +1 -0
- package/dist/gs1/prefix-manager-proxy.js +94 -0
- package/dist/gs1/prefix-manager-proxy.js.map +1 -0
- package/dist/gs1/variable-measure-proxy.d.ts +7 -0
- package/dist/gs1/variable-measure-proxy.d.ts.map +1 -0
- package/dist/gs1/variable-measure-proxy.js +114 -0
- package/dist/gs1/variable-measure-proxy.js.map +1 -0
- package/dist/gs1/verified-by-gs1-proxy.d.ts +7 -0
- package/dist/gs1/verified-by-gs1-proxy.d.ts.map +1 -0
- package/dist/gs1/verified-by-gs1-proxy.js +100 -0
- package/dist/gs1/verified-by-gs1-proxy.js.map +1 -0
- package/dist/index.d.ts +22 -847
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +7 -1
- package/dist/index.js.map +1 -0
- package/dist/lib-proxy.d.ts +121 -0
- package/dist/lib-proxy.d.ts.map +1 -0
- package/dist/lib-proxy.js +259 -0
- package/dist/lib-proxy.js.map +1 -0
- package/dist/{index.d.cts → locale/en/locale-resources.d.ts} +2 -98
- package/dist/locale/en/locale-resources.d.ts.map +1 -0
- package/dist/locale/en/locale-resources.js +754 -0
- package/dist/locale/en/locale-resources.js.map +1 -0
- package/dist/locale/fr/locale-resources.d.ts +755 -0
- package/dist/locale/fr/locale-resources.d.ts.map +1 -0
- package/dist/locale/fr/locale-resources.js +754 -0
- package/dist/locale/fr/locale-resources.js.map +1 -0
- package/dist/locale/i18n.d.ts +27 -0
- package/dist/locale/i18n.d.ts.map +1 -0
- package/dist/locale/i18n.js +36 -0
- package/dist/locale/i18n.js.map +1 -0
- package/dist/proxy.d.ts +135 -0
- package/dist/proxy.d.ts.map +1 -0
- package/dist/proxy.js +291 -0
- package/dist/proxy.js.map +1 -0
- package/dist/streaming.d.ts +10 -0
- package/dist/streaming.d.ts.map +1 -0
- package/dist/streaming.js +2 -0
- package/dist/streaming.js.map +1 -0
- package/dist/type.d.ts +72 -0
- package/dist/type.d.ts.map +1 -0
- package/dist/type.js +2 -0
- package/dist/type.js.map +1 -0
- package/dist/utility/character-set-descriptor.d.ts +6 -0
- package/dist/utility/character-set-descriptor.d.ts.map +1 -0
- package/dist/utility/character-set-descriptor.js +28 -0
- package/dist/utility/character-set-descriptor.js.map +1 -0
- package/dist/utility/character-set-proxy.d.ts +32 -0
- package/dist/utility/character-set-proxy.d.ts.map +1 -0
- package/dist/utility/character-set-proxy.js +278 -0
- package/dist/utility/character-set-proxy.js.map +1 -0
- package/dist/utility/index.d.ts +4 -0
- package/dist/utility/index.d.ts.map +1 -0
- package/dist/utility/index.js +4 -0
- package/dist/utility/index.js.map +1 -0
- package/dist/utility/reg-exp-proxy.d.ts +8 -0
- package/dist/utility/reg-exp-proxy.d.ts.map +1 -0
- package/dist/utility/reg-exp-proxy.js +103 -0
- package/dist/utility/reg-exp-proxy.js.map +1 -0
- package/dist/utility/string-descriptor.d.ts +4 -0
- package/dist/utility/string-descriptor.d.ts.map +1 -0
- package/dist/utility/string-descriptor.js +12 -0
- package/dist/utility/string-descriptor.js.map +1 -0
- package/dist/utility/string-proxy.d.ts +7 -0
- package/dist/utility/string-proxy.d.ts.map +1 -0
- package/dist/utility/string-proxy.js +63 -0
- package/dist/utility/string-proxy.js.map +1 -0
- package/dist/utility/transformer-descriptor.d.ts +6 -0
- package/dist/utility/transformer-descriptor.d.ts.map +1 -0
- package/dist/utility/transformer-descriptor.js +24 -0
- package/dist/utility/transformer-descriptor.js.map +1 -0
- package/dist/utility/transformer-proxy.d.ts +10 -0
- package/dist/utility/transformer-proxy.d.ts.map +1 -0
- package/dist/utility/transformer-proxy.js +111 -0
- package/dist/utility/transformer-proxy.js.map +1 -0
- package/dist/version.d.ts +5 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +5 -0
- package/dist/version.js.map +1 -0
- package/package.json +5 -5
- package/src/version.ts +1 -1
- package/tsconfig-src.tsbuildinfo +1 -1
- package/dist/character-set-proxy-CQCOcqR3.d.cts +0 -473
- package/dist/character-set-proxy-CQCOcqR3.d.ts +0 -473
- package/dist/chunk-4BTJEN4N.js +0 -1
- package/dist/chunk-G5IU2ZOV.js +0 -1
- package/dist/chunk-WLXID4YR.js +0 -1
- package/dist/descriptor-Df-lif4q.d.ts +0 -185
- package/dist/generator/index.cjs +0 -17
- package/dist/generator/index.d.cts +0 -224
- package/dist/gs1/index.cjs +0 -1
- package/dist/gs1/index.d.cts +0 -185
- package/dist/index.cjs +0 -17
|
@@ -0,0 +1,354 @@
|
|
|
1
|
+
var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
|
|
2
|
+
var useValue = arguments.length > 2;
|
|
3
|
+
for (var i = 0; i < initializers.length; i++) {
|
|
4
|
+
value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
|
|
5
|
+
}
|
|
6
|
+
return useValue ? value : void 0;
|
|
7
|
+
};
|
|
8
|
+
var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
|
|
9
|
+
function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
|
|
10
|
+
var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
|
|
11
|
+
var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
|
|
12
|
+
var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
|
|
13
|
+
var _, done = false;
|
|
14
|
+
for (var i = decorators.length - 1; i >= 0; i--) {
|
|
15
|
+
var context = {};
|
|
16
|
+
for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
|
|
17
|
+
for (var p in contextIn.access) context.access[p] = contextIn.access[p];
|
|
18
|
+
context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
|
|
19
|
+
var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
|
|
20
|
+
if (kind === "accessor") {
|
|
21
|
+
if (result === void 0) continue;
|
|
22
|
+
if (result === null || typeof result !== "object") throw new TypeError("Object expected");
|
|
23
|
+
if (_ = accept(result.get)) descriptor.get = _;
|
|
24
|
+
if (_ = accept(result.set)) descriptor.set = _;
|
|
25
|
+
if (_ = accept(result.init)) initializers.unshift(_);
|
|
26
|
+
}
|
|
27
|
+
else if (_ = accept(result)) {
|
|
28
|
+
if (kind === "field") initializers.unshift(_);
|
|
29
|
+
else descriptor[key] = _;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
if (target) Object.defineProperty(target, contextIn.name, descriptor);
|
|
33
|
+
done = true;
|
|
34
|
+
};
|
|
35
|
+
import { isNullish, logLevelOf } from "@aidc-toolkit/core";
|
|
36
|
+
import { Multiplicities, Types } from "./descriptor.js";
|
|
37
|
+
import { LibProxy } from "./lib-proxy.js";
|
|
38
|
+
import { i18nextAppExtension } from "./locale/i18n.js";
|
|
39
|
+
import { proxy } from "./proxy.js";
|
|
40
|
+
const spillArrayParameterDescriptor = {
|
|
41
|
+
name: "spillArray",
|
|
42
|
+
type: Types.Any,
|
|
43
|
+
multiplicity: Multiplicities.Array,
|
|
44
|
+
isRequired: true
|
|
45
|
+
};
|
|
46
|
+
const spillMaximumParameterDescriptor = {
|
|
47
|
+
name: "spillMaximum",
|
|
48
|
+
type: Types.Number,
|
|
49
|
+
multiplicity: Multiplicities.Singleton,
|
|
50
|
+
isRequired: false
|
|
51
|
+
};
|
|
52
|
+
const spillMaximumWidthParameterDescriptor = {
|
|
53
|
+
extendsDescriptor: spillMaximumParameterDescriptor,
|
|
54
|
+
sortOrder: 0,
|
|
55
|
+
name: "spillMaximumWidth"
|
|
56
|
+
};
|
|
57
|
+
const spillMaximumHeightParameterDescriptor = {
|
|
58
|
+
extendsDescriptor: spillMaximumParameterDescriptor,
|
|
59
|
+
sortOrder: 1,
|
|
60
|
+
name: "spillMaximumHeight"
|
|
61
|
+
};
|
|
62
|
+
const logLevelParameterDescriptor = {
|
|
63
|
+
name: "logLevel",
|
|
64
|
+
type: Types.String,
|
|
65
|
+
multiplicity: Multiplicities.Singleton,
|
|
66
|
+
isRequired: false
|
|
67
|
+
};
|
|
68
|
+
/**
|
|
69
|
+
* Application helper.
|
|
70
|
+
*/
|
|
71
|
+
let AppHelperProxy = (() => {
|
|
72
|
+
let _classDecorators = [proxy.describeClass(false, {
|
|
73
|
+
category: "helper"
|
|
74
|
+
})];
|
|
75
|
+
let _classDescriptor;
|
|
76
|
+
let _classExtraInitializers = [];
|
|
77
|
+
let _classThis;
|
|
78
|
+
let _classSuper = LibProxy;
|
|
79
|
+
let _instanceExtraInitializers = [];
|
|
80
|
+
let _version_decorators;
|
|
81
|
+
let _spill_decorators;
|
|
82
|
+
let _loggerMessages_decorators;
|
|
83
|
+
let _loggerStream_decorators;
|
|
84
|
+
var AppHelperProxy = class extends _classSuper {
|
|
85
|
+
static { _classThis = this; }
|
|
86
|
+
static {
|
|
87
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
88
|
+
_version_decorators = [proxy.describeMethod({
|
|
89
|
+
type: Types.String,
|
|
90
|
+
multiplicity: Multiplicities.Singleton,
|
|
91
|
+
parameterDescriptors: []
|
|
92
|
+
})];
|
|
93
|
+
_spill_decorators = [proxy.describeMethod({
|
|
94
|
+
type: Types.Any,
|
|
95
|
+
multiplicity: Multiplicities.Matrix,
|
|
96
|
+
isAsync: true,
|
|
97
|
+
requiresContext: true,
|
|
98
|
+
parameterDescriptors: [spillArrayParameterDescriptor, spillMaximumHeightParameterDescriptor, spillMaximumWidthParameterDescriptor]
|
|
99
|
+
})];
|
|
100
|
+
_loggerMessages_decorators = [proxy.describeMethod({
|
|
101
|
+
type: Types.String,
|
|
102
|
+
multiplicity: Multiplicities.Array,
|
|
103
|
+
isHidden: true,
|
|
104
|
+
isVolatile: true,
|
|
105
|
+
parameterDescriptors: [logLevelParameterDescriptor]
|
|
106
|
+
})];
|
|
107
|
+
_loggerStream_decorators = [proxy.describeMethod({
|
|
108
|
+
type: Types.String,
|
|
109
|
+
multiplicity: Multiplicities.Array,
|
|
110
|
+
isHidden: true,
|
|
111
|
+
isStream: true,
|
|
112
|
+
parameterDescriptors: [logLevelParameterDescriptor]
|
|
113
|
+
})];
|
|
114
|
+
__esDecorate(this, null, _version_decorators, { kind: "method", name: "version", static: false, private: false, access: { has: obj => "version" in obj, get: obj => obj.version }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
115
|
+
__esDecorate(this, null, _spill_decorators, { kind: "method", name: "spill", static: false, private: false, access: { has: obj => "spill" in obj, get: obj => obj.spill }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
116
|
+
__esDecorate(this, null, _loggerMessages_decorators, { kind: "method", name: "loggerMessages", static: false, private: false, access: { has: obj => "loggerMessages" in obj, get: obj => obj.loggerMessages }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
117
|
+
__esDecorate(this, null, _loggerStream_decorators, { kind: "method", name: "loggerStream", static: false, private: false, access: { has: obj => "loggerStream" in obj, get: obj => obj.loggerStream }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
118
|
+
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
119
|
+
AppHelperProxy = _classThis = _classDescriptor.value;
|
|
120
|
+
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
121
|
+
__runInitializers(_classThis, _classExtraInitializers);
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Get the version.
|
|
125
|
+
*
|
|
126
|
+
* @returns
|
|
127
|
+
* Version.
|
|
128
|
+
*/
|
|
129
|
+
version() {
|
|
130
|
+
return this.appExtension.version;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Provide default values for maximum width and height if required.
|
|
134
|
+
*
|
|
135
|
+
* @param maximumDimensions
|
|
136
|
+
* Maximum dimensions provided to function.
|
|
137
|
+
*
|
|
138
|
+
* @param invocationContext
|
|
139
|
+
* Invocation context.
|
|
140
|
+
*
|
|
141
|
+
* @returns
|
|
142
|
+
* Array of maximum width and maximum height.
|
|
143
|
+
*/
|
|
144
|
+
async #defaultMaximums(maximumDimensions, invocationContext) {
|
|
145
|
+
if (isNullish(invocationContext)) {
|
|
146
|
+
// Application error; no localization necessary.
|
|
147
|
+
throw new Error("Invocation context not provided by application");
|
|
148
|
+
}
|
|
149
|
+
const maximumWidth = maximumDimensions.width;
|
|
150
|
+
const maximumHeight = maximumDimensions.height;
|
|
151
|
+
let definedMaximumWidth;
|
|
152
|
+
let definedMaximumHeight;
|
|
153
|
+
// Skip any extra work if both values are provided.
|
|
154
|
+
if (isNullish(maximumWidth) || isNullish(maximumHeight)) {
|
|
155
|
+
const sheetAddress = await this.appExtension.getSheetAddress(invocationContext);
|
|
156
|
+
definedMaximumWidth = maximumWidth ?? this.appExtension.maximumWidth - sheetAddress.columnIndex;
|
|
157
|
+
definedMaximumHeight = maximumHeight ?? this.appExtension.maximumHeight - sheetAddress.rowIndex;
|
|
158
|
+
}
|
|
159
|
+
else {
|
|
160
|
+
definedMaximumWidth = maximumWidth;
|
|
161
|
+
definedMaximumHeight = maximumHeight;
|
|
162
|
+
}
|
|
163
|
+
return {
|
|
164
|
+
width: definedMaximumWidth,
|
|
165
|
+
height: definedMaximumHeight
|
|
166
|
+
};
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Spill a one-dimensional matrix to fit a rectangle within a given maximum height and width.
|
|
170
|
+
*
|
|
171
|
+
* @param arrayValues
|
|
172
|
+
* Matrix values. Matrix is length 1 or contains arrays of length 1 with the values.
|
|
173
|
+
*
|
|
174
|
+
* @param maximumHeight
|
|
175
|
+
* Maximum height.
|
|
176
|
+
*
|
|
177
|
+
* @param maximumWidth
|
|
178
|
+
* Maximum width.
|
|
179
|
+
*
|
|
180
|
+
* @param invocationContext
|
|
181
|
+
* Invocation context.
|
|
182
|
+
*
|
|
183
|
+
* @returns
|
|
184
|
+
* Matrix spilled within maximum height and maximum width.
|
|
185
|
+
*/
|
|
186
|
+
async spill(arrayValues, maximumHeight, maximumWidth, invocationContext) {
|
|
187
|
+
let result;
|
|
188
|
+
// Assume matrix is uniformly two-dimensional.
|
|
189
|
+
const height = arrayValues.length;
|
|
190
|
+
const width = height !== 0 ? arrayValues[0].length : 0;
|
|
191
|
+
const isArrayOrError = this.singletonResult(() => {
|
|
192
|
+
if (height > 1 && width > 1) {
|
|
193
|
+
throw new RangeError(i18nextAppExtension.t("Proxy.matrixMustBeArray"));
|
|
194
|
+
}
|
|
195
|
+
return true;
|
|
196
|
+
});
|
|
197
|
+
if (isArrayOrError === true) {
|
|
198
|
+
const maximumDimensions = await this.#defaultMaximums({
|
|
199
|
+
width: maximumWidth,
|
|
200
|
+
height: maximumHeight
|
|
201
|
+
}, invocationContext);
|
|
202
|
+
const isHorizontal = height === 1;
|
|
203
|
+
const length = isHorizontal ? width : height;
|
|
204
|
+
const maximumParallel = isHorizontal ? maximumDimensions.width : maximumDimensions.height;
|
|
205
|
+
const maximumPerpendicular = isHorizontal ? maximumDimensions.height : maximumDimensions.width;
|
|
206
|
+
const maximumArea = maximumParallel * maximumPerpendicular;
|
|
207
|
+
// Lengths 0 and 1 are valid and require no special processing.
|
|
208
|
+
if (length > 1 && length <= maximumArea) {
|
|
209
|
+
const lengthSquareRoot = Math.sqrt(length);
|
|
210
|
+
let spillParallel = undefined;
|
|
211
|
+
// Array that has a length of a power of 10 is treated specially.
|
|
212
|
+
if (Number.isInteger(Math.log10(length))) {
|
|
213
|
+
// Try spill that is a power of 10, favouring the parallel direction.
|
|
214
|
+
let spillParallel10 = 10 ** Math.ceil(Math.log10(lengthSquareRoot));
|
|
215
|
+
// Favour the perpendicular direction if not enough parallel space.
|
|
216
|
+
if (spillParallel10 > maximumParallel) {
|
|
217
|
+
spillParallel10 /= 10;
|
|
218
|
+
}
|
|
219
|
+
// Take result as the spill parallel if it fits.
|
|
220
|
+
if (spillParallel10 <= maximumParallel && length / spillParallel10 <= maximumPerpendicular) {
|
|
221
|
+
spillParallel = spillParallel10;
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
// Make spill as square as possible, favouring the parallel direction.
|
|
225
|
+
spillParallel ??= Math.max(Math.min(Math.ceil(lengthSquareRoot), maximumParallel), Math.floor(length / maximumPerpendicular));
|
|
226
|
+
const spillPerpendicular = Math.ceil(length / spillParallel);
|
|
227
|
+
result = [];
|
|
228
|
+
if (isHorizontal) {
|
|
229
|
+
let startIndex = 0;
|
|
230
|
+
do {
|
|
231
|
+
const endIndex = startIndex + spillParallel;
|
|
232
|
+
// Each row is a slice of the original single row.
|
|
233
|
+
const row = arrayValues[0].slice(startIndex, endIndex);
|
|
234
|
+
// Row length will be anywhere from 1 to spillParallel.
|
|
235
|
+
if (row.length < spillParallel) {
|
|
236
|
+
const rowLength = row.length;
|
|
237
|
+
row.length = spillParallel;
|
|
238
|
+
// Fill empty cells with empty string.
|
|
239
|
+
row.fill("", rowLength, spillParallel);
|
|
240
|
+
}
|
|
241
|
+
result.push(row);
|
|
242
|
+
startIndex = endIndex;
|
|
243
|
+
} while (startIndex < length);
|
|
244
|
+
}
|
|
245
|
+
else {
|
|
246
|
+
for (let rowIndex = 0; rowIndex < spillParallel; rowIndex++) {
|
|
247
|
+
const row = [];
|
|
248
|
+
// Each column is a slice of the original single column.
|
|
249
|
+
for (let valueIndex = rowIndex; valueIndex < length; valueIndex += spillParallel) {
|
|
250
|
+
row.push(arrayValues[valueIndex][0]);
|
|
251
|
+
}
|
|
252
|
+
// Row length will always be spillPerpendicular or spillPerpendicular - 1.
|
|
253
|
+
if (row.length < spillPerpendicular) {
|
|
254
|
+
row[spillPerpendicular - 1] = "";
|
|
255
|
+
}
|
|
256
|
+
result.push(row);
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
else {
|
|
261
|
+
// Return matrix unmodified and let application handle spill error if any.
|
|
262
|
+
result = arrayValues;
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
else {
|
|
266
|
+
// Return error as only element in matrix.
|
|
267
|
+
result = [[isArrayOrError]];
|
|
268
|
+
}
|
|
269
|
+
return result;
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* Get the logger messages. This is a snapshot, with the option to change the log level for the next call.
|
|
273
|
+
*
|
|
274
|
+
* @param logLevelString
|
|
275
|
+
* Log level as string.
|
|
276
|
+
*
|
|
277
|
+
* @returns
|
|
278
|
+
* Logger messages.
|
|
279
|
+
*/
|
|
280
|
+
loggerMessages(logLevelString) {
|
|
281
|
+
const appExtension = this.appExtension;
|
|
282
|
+
let logLevel = undefined;
|
|
283
|
+
if (!isNullish(logLevelString)) {
|
|
284
|
+
try {
|
|
285
|
+
logLevel = logLevelOf(logLevelString);
|
|
286
|
+
}
|
|
287
|
+
catch {
|
|
288
|
+
// Ignore error.
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
// Set log level if required.
|
|
292
|
+
if (logLevel !== undefined) {
|
|
293
|
+
appExtension.logger.settings.minLevel = logLevel;
|
|
294
|
+
}
|
|
295
|
+
return appExtension.memoryTransport.messages.map(message => [message]);
|
|
296
|
+
}
|
|
297
|
+
/**
|
|
298
|
+
* Get the logger messages as a stream.
|
|
299
|
+
*
|
|
300
|
+
* @param logLevelString
|
|
301
|
+
* Log level as string.
|
|
302
|
+
*
|
|
303
|
+
* @param streamingContext
|
|
304
|
+
* Streaming context.
|
|
305
|
+
*/
|
|
306
|
+
loggerStream(logLevelString, streamingContext) {
|
|
307
|
+
if (isNullish(streamingContext)) {
|
|
308
|
+
// Application error; no localization necessary.
|
|
309
|
+
throw new Error("Streaming context not provided by application");
|
|
310
|
+
}
|
|
311
|
+
const appExtension = this.appExtension;
|
|
312
|
+
let notificationCallbackAdded = false;
|
|
313
|
+
let previousLogLevel = undefined;
|
|
314
|
+
const streamingConsumerCallback = appExtension.installStreaming(streamingContext, () => {
|
|
315
|
+
if (notificationCallbackAdded) {
|
|
316
|
+
appExtension.memoryTransport.removeNotificationCallback(AppHelperProxy.name);
|
|
317
|
+
}
|
|
318
|
+
if (previousLogLevel !== undefined) {
|
|
319
|
+
appExtension.logger.settings.minLevel = previousLogLevel;
|
|
320
|
+
}
|
|
321
|
+
});
|
|
322
|
+
if (appExtension.memoryTransport.addNotificationCallback(AppHelperProxy.name, (_message, messages) => {
|
|
323
|
+
streamingConsumerCallback(this.iterableResult(() => messages));
|
|
324
|
+
})) {
|
|
325
|
+
notificationCallbackAdded = true;
|
|
326
|
+
let logLevel = undefined;
|
|
327
|
+
if (!isNullish(logLevelString)) {
|
|
328
|
+
try {
|
|
329
|
+
logLevel = logLevelOf(logLevelString);
|
|
330
|
+
}
|
|
331
|
+
catch {
|
|
332
|
+
// Ignore error.
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
// Set log level if required.
|
|
336
|
+
if (logLevel !== undefined) {
|
|
337
|
+
previousLogLevel = appExtension.logger.settings.minLevel;
|
|
338
|
+
appExtension.logger.settings.minLevel = logLevel;
|
|
339
|
+
}
|
|
340
|
+
}
|
|
341
|
+
else {
|
|
342
|
+
// Diagnostic tool; localization not required.
|
|
343
|
+
streamingConsumerCallback([["Only one logger stream allowable per workbook"]]);
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
constructor() {
|
|
347
|
+
super(...arguments);
|
|
348
|
+
__runInitializers(this, _instanceExtraInitializers);
|
|
349
|
+
}
|
|
350
|
+
};
|
|
351
|
+
return AppHelperProxy = _classThis;
|
|
352
|
+
})();
|
|
353
|
+
export { AppHelperProxy };
|
|
354
|
+
//# sourceMappingURL=app-helper-proxy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app-helper-proxy.js","sourceRoot":"","sources":["../src/app-helper-proxy.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ interface Descriptor {
|
|
|
10
10
|
/**
|
|
11
11
|
* Types supported by proxy methods.
|
|
12
12
|
*/
|
|
13
|
-
declare const Types: {
|
|
13
|
+
export declare const Types: {
|
|
14
14
|
/**
|
|
15
15
|
* String.
|
|
16
16
|
*/
|
|
@@ -31,15 +31,15 @@ declare const Types: {
|
|
|
31
31
|
/**
|
|
32
32
|
* Type key.
|
|
33
33
|
*/
|
|
34
|
-
type TypeKey = keyof typeof Types;
|
|
34
|
+
export type TypeKey = keyof typeof Types;
|
|
35
35
|
/**
|
|
36
36
|
* Type.
|
|
37
37
|
*/
|
|
38
|
-
type Type = typeof Types[TypeKey];
|
|
38
|
+
export type Type = typeof Types[TypeKey];
|
|
39
39
|
/**
|
|
40
40
|
* Multiplicities supported by proxy methods.
|
|
41
41
|
*/
|
|
42
|
-
declare const Multiplicities: {
|
|
42
|
+
export declare const Multiplicities: {
|
|
43
43
|
/**
|
|
44
44
|
* Parameter or return value is a singleton.
|
|
45
45
|
*/
|
|
@@ -61,11 +61,11 @@ declare const Multiplicities: {
|
|
|
61
61
|
/**
|
|
62
62
|
* Multiplicity key.
|
|
63
63
|
*/
|
|
64
|
-
type MultiplicityKey = keyof typeof Multiplicities;
|
|
64
|
+
export type MultiplicityKey = keyof typeof Multiplicities;
|
|
65
65
|
/**
|
|
66
66
|
* Multiplicity.
|
|
67
67
|
*/
|
|
68
|
-
type Multiplicity = typeof Multiplicities[MultiplicityKey];
|
|
68
|
+
export type Multiplicity = typeof Multiplicities[MultiplicityKey];
|
|
69
69
|
/**
|
|
70
70
|
* Type descriptor.
|
|
71
71
|
*/
|
|
@@ -82,7 +82,7 @@ interface TypeDescriptor extends Descriptor {
|
|
|
82
82
|
/**
|
|
83
83
|
* Parameter descriptor.
|
|
84
84
|
*/
|
|
85
|
-
interface ParameterDescriptor extends TypeDescriptor {
|
|
85
|
+
export interface ParameterDescriptor extends TypeDescriptor {
|
|
86
86
|
/**
|
|
87
87
|
* True if required.
|
|
88
88
|
*/
|
|
@@ -91,7 +91,7 @@ interface ParameterDescriptor extends TypeDescriptor {
|
|
|
91
91
|
/**
|
|
92
92
|
* Extends parameter descriptor.
|
|
93
93
|
*/
|
|
94
|
-
interface ExtendsParameterDescriptor extends Partial<ParameterDescriptor> {
|
|
94
|
+
export interface ExtendsParameterDescriptor extends Partial<ParameterDescriptor> {
|
|
95
95
|
/**
|
|
96
96
|
* Parameter descriptor that this one extends.
|
|
97
97
|
*/
|
|
@@ -104,7 +104,7 @@ interface ExtendsParameterDescriptor extends Partial<ParameterDescriptor> {
|
|
|
104
104
|
/**
|
|
105
105
|
* Replacement parameter descriptor.
|
|
106
106
|
*/
|
|
107
|
-
interface ReplacementParameterDescriptor {
|
|
107
|
+
export interface ReplacementParameterDescriptor {
|
|
108
108
|
/**
|
|
109
109
|
* Name to replace.
|
|
110
110
|
*/
|
|
@@ -117,7 +117,7 @@ interface ReplacementParameterDescriptor {
|
|
|
117
117
|
/**
|
|
118
118
|
* Method descriptor.
|
|
119
119
|
*/
|
|
120
|
-
interface MethodDescriptor extends TypeDescriptor {
|
|
120
|
+
export interface MethodDescriptor extends TypeDescriptor {
|
|
121
121
|
/**
|
|
122
122
|
* If true, method is asynchronous.
|
|
123
123
|
*/
|
|
@@ -159,7 +159,7 @@ interface MethodDescriptor extends TypeDescriptor {
|
|
|
159
159
|
/**
|
|
160
160
|
* Class descriptor.
|
|
161
161
|
*/
|
|
162
|
-
interface ClassDescriptor extends Descriptor {
|
|
162
|
+
export interface ClassDescriptor extends Descriptor {
|
|
163
163
|
/**
|
|
164
164
|
* Class namespace. If not provided, class is at the top level.
|
|
165
165
|
*/
|
|
@@ -181,5 +181,5 @@ interface ClassDescriptor extends Descriptor {
|
|
|
181
181
|
*/
|
|
182
182
|
readonly methodDescriptors: readonly MethodDescriptor[];
|
|
183
183
|
}
|
|
184
|
-
|
|
185
|
-
|
|
184
|
+
export {};
|
|
185
|
+
//# sourceMappingURL=descriptor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"descriptor.d.ts","sourceRoot":"","sources":["../src/descriptor.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,UAAU,UAAU;IAChB;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,eAAO,MAAM,KAAK;IACd;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;CAEG,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,MAAM,OAAO,KAAK,CAAC;AAEzC;;GAEG;AACH,MAAM,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC;AAEzC;;GAEG;AACH,eAAO,MAAM,cAAc;IACvB;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;;OAGG;;CAEG,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,cAAc,CAAC;AAE1D;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,cAAc,CAAC,eAAe,CAAC,CAAC;AAElE;;GAEG;AACH,UAAU,cAAe,SAAQ,UAAU;IACvC;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IAEpB;;OAEG;IACH,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,cAAc;IACvD;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,0BAA2B,SAAQ,OAAO,CAAC,mBAAmB,CAAC;IAC5E;;OAEG;IACH,QAAQ,CAAC,iBAAiB,EAAE,mBAAmB,GAAG,0BAA0B,CAAC;IAE7E;;OAEG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC3C;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,WAAW,EAAE,mBAAmB,CAAC;CAC7C;AAED;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,cAAc;IACpD;;OAEG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC;IAExB;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;IAEzB;;OAEG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,IAAI,CAAC;IAEhC;;OAEG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC;IAE3B;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;IAEzB;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC;IAE5B;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAE9B;;OAEG;IACH,QAAQ,CAAC,oBAAoB,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAE9D;;OAEG;IACH,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,UAAU;IAC/C;;OAEG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAExC;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAE1C;;OAEG;IACH,QAAQ,CAAC,+BAA+B,CAAC,EAAE,8BAA8B,EAAE,CAAC;IAE5E;;OAEG;IACH,QAAQ,CAAC,iBAAiB,EAAE,SAAS,gBAAgB,EAAE,CAAC;CAC3D"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Types supported by proxy methods.
|
|
3
|
+
*/
|
|
4
|
+
export const Types = {
|
|
5
|
+
/**
|
|
6
|
+
* String.
|
|
7
|
+
*/
|
|
8
|
+
String: 0,
|
|
9
|
+
/**
|
|
10
|
+
* Number or enumeration.
|
|
11
|
+
*/
|
|
12
|
+
Number: 1,
|
|
13
|
+
/**
|
|
14
|
+
* Boolean.
|
|
15
|
+
*/
|
|
16
|
+
Boolean: 2,
|
|
17
|
+
/**
|
|
18
|
+
* Any.
|
|
19
|
+
*/
|
|
20
|
+
Any: 3
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* Multiplicities supported by proxy methods.
|
|
24
|
+
*/
|
|
25
|
+
export const Multiplicities = {
|
|
26
|
+
/**
|
|
27
|
+
* Parameter or return value is a singleton.
|
|
28
|
+
*/
|
|
29
|
+
Singleton: 0,
|
|
30
|
+
/**
|
|
31
|
+
* Parameter or return value is a singleton or an array.
|
|
32
|
+
*/
|
|
33
|
+
Array: 1,
|
|
34
|
+
/**
|
|
35
|
+
* Parameter or return value is a singleton, an array, or a matrix.
|
|
36
|
+
*/
|
|
37
|
+
Matrix: 2,
|
|
38
|
+
/**
|
|
39
|
+
* Parameter value is a singleton or array but is treated as a singleton internally and doesn't drive multiplicity
|
|
40
|
+
* of the return value. Return value is an array for use as a singleton array parameter.
|
|
41
|
+
*/
|
|
42
|
+
SingletonArray: 3
|
|
43
|
+
};
|
|
44
|
+
//# sourceMappingURL=descriptor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"descriptor.js","sourceRoot":"","sources":["../src/descriptor.ts"],"names":[],"mappings":"AAUA;;GAEG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG;IACjB;;OAEG;IACH,MAAM,EAAE,CAAC;IAET;;OAEG;IACH,MAAM,EAAE,CAAC;IAET;;OAEG;IACH,OAAO,EAAE,CAAC;IAEV;;OAEG;IACH,GAAG,EAAE,CAAC;CACA,CAAC;AAYX;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC1B;;OAEG;IACH,SAAS,EAAE,CAAC;IAEZ;;OAEG;IACH,KAAK,EAAE,CAAC;IAER;;OAEG;IACH,MAAM,EAAE,CAAC;IAET;;;OAGG;IACH,cAAc,EAAE,CAAC;CACX,CAAC"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { type ClassDescriptor, type MethodDescriptor, type ParameterDescriptor } from "../descriptor.js";
|
|
2
|
+
import { type FunctionLocalization, Generator, type Localization } from "./generator.js";
|
|
3
|
+
/**
|
|
4
|
+
* Class type alias.
|
|
5
|
+
*/
|
|
6
|
+
export interface ClassTypeAlias {
|
|
7
|
+
/**
|
|
8
|
+
* Name.
|
|
9
|
+
*/
|
|
10
|
+
readonly name: string;
|
|
11
|
+
/**
|
|
12
|
+
* Getter function.
|
|
13
|
+
*/
|
|
14
|
+
readonly getter: string;
|
|
15
|
+
/**
|
|
16
|
+
* Declaration associating name with implementation type and creating getter function.
|
|
17
|
+
*/
|
|
18
|
+
readonly declaration: string[];
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Function implementation.
|
|
22
|
+
*/
|
|
23
|
+
export interface FunctionImplementation {
|
|
24
|
+
/**
|
|
25
|
+
* Function name.
|
|
26
|
+
*/
|
|
27
|
+
readonly functionName: string;
|
|
28
|
+
/**
|
|
29
|
+
* Parameter localizations with JavaScript type and parameter descriptor.
|
|
30
|
+
*/
|
|
31
|
+
readonly parameterLocalizations: ReadonlyArray<Localization & {
|
|
32
|
+
/**
|
|
33
|
+
* JavaScript type.
|
|
34
|
+
*/
|
|
35
|
+
javaScriptType: string;
|
|
36
|
+
/**
|
|
37
|
+
* Parameter descriptor.
|
|
38
|
+
*/
|
|
39
|
+
parameterDescriptor?: ParameterDescriptor;
|
|
40
|
+
}>;
|
|
41
|
+
/**
|
|
42
|
+
* Declaration.
|
|
43
|
+
*/
|
|
44
|
+
readonly declaration: string[];
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Generator with helpers for writing TypeScript functions file.
|
|
48
|
+
*/
|
|
49
|
+
export declare abstract class FunctionsGenerator extends Generator {
|
|
50
|
+
#private;
|
|
51
|
+
protected static readonly BASE_IMPORTS: string[];
|
|
52
|
+
/**
|
|
53
|
+
* Constructor.
|
|
54
|
+
*
|
|
55
|
+
* @param version
|
|
56
|
+
* Package version.
|
|
57
|
+
*
|
|
58
|
+
* @param inline
|
|
59
|
+
* If true, functions are declared inline rather than using `function`.
|
|
60
|
+
*
|
|
61
|
+
* @param supportsContext
|
|
62
|
+
* If true, application extension supports context.
|
|
63
|
+
*/
|
|
64
|
+
constructor(version: string, inline: boolean, supportsContext: boolean);
|
|
65
|
+
/**
|
|
66
|
+
* Get the class type alias.
|
|
67
|
+
*/
|
|
68
|
+
get classTypeAlias(): ClassTypeAlias;
|
|
69
|
+
/**
|
|
70
|
+
* Get the import statement for a namespace.
|
|
71
|
+
*
|
|
72
|
+
* @param namespace
|
|
73
|
+
* Namespace.
|
|
74
|
+
*
|
|
75
|
+
* @returns
|
|
76
|
+
* Import statement.
|
|
77
|
+
*/
|
|
78
|
+
protected getNamespaceImport(namespace: string): string;
|
|
79
|
+
/**
|
|
80
|
+
* @inheritDoc
|
|
81
|
+
*/
|
|
82
|
+
protected createClassProxy(classDescriptor: ClassDescriptor): void;
|
|
83
|
+
/**
|
|
84
|
+
* Get a function implementation.
|
|
85
|
+
*
|
|
86
|
+
* @param methodDescriptor
|
|
87
|
+
* Method descriptor.
|
|
88
|
+
*
|
|
89
|
+
* @param functionNamePrefix
|
|
90
|
+
* Function name prefix.
|
|
91
|
+
*
|
|
92
|
+
* @param functionLocalization
|
|
93
|
+
* Function localization. May be undefined for hidden functions, in which case generated
|
|
94
|
+
*
|
|
95
|
+
* @param parameterCallback
|
|
96
|
+
* Callback to modify parameter in implementation function call.
|
|
97
|
+
*
|
|
98
|
+
* @returns
|
|
99
|
+
* Function implementation.
|
|
100
|
+
*/
|
|
101
|
+
protected getFunctionImplementation(methodDescriptor: MethodDescriptor, functionNamePrefix: string, functionLocalization: FunctionLocalization | undefined, parameterCallback?: (name: string, parameterDescriptor: ParameterDescriptor) => string): FunctionImplementation;
|
|
102
|
+
}
|
|
103
|
+
//# sourceMappingURL=functions-generator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"functions-generator.d.ts","sourceRoot":"","sources":["../../src/generator/functions-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EAG3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,KAAK,oBAAoB,EAAE,SAAS,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEzF;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC;;OAEG;IACH,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAE9B;;OAEG;IACH,QAAQ,CAAC,sBAAsB,EAAE,aAAa,CAAC,YAAY,GAAG;QAC1D;;WAEG;QACH,cAAc,EAAE,MAAM,CAAC;QAEvB;;WAEG;QACH,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;KAC7C,CAAC,CAAC;IAEH;;OAEG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;CAClC;AAED;;GAEG;AACH,8BAAsB,kBAAmB,SAAQ,SAAS;;IAgBtD,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,WAGpC;IAiBF;;;;;;;;;;;OAWG;gBACS,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO;IAOtE;;OAEG;IACH,IAAI,cAAc,IAAI,cAAc,CAEnC;IAED;;;;;;;;OAQG;IACH,SAAS,CAAC,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAIvD;;OAEG;cACgB,gBAAgB,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI;IA6B3E;;;;;;;;;;;;;;;;;OAiBG;IACH,SAAS,CAAC,yBAAyB,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,EAAE,oBAAoB,EAAE,oBAAoB,GAAG,SAAS,EAAE,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,mBAAmB,EAAE,mBAAmB,KAAK,MAAM,GAAG,sBAAsB;CAyE9Q"}
|