@opra/common 1.17.3 → 1.17.4
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/browser/index.cjs +5 -5
- package/browser/index.mjs +5 -5
- package/cjs/document/factory/data-type.factory.js +5 -5
- package/esm/document/factory/data-type.factory.js +5 -5
- package/package.json +3 -3
- package/types/document/common/data-type-map.d.ts +1 -1
- package/types/document/factory/data-type.factory.d.ts +1 -1
- package/types/helpers/responsive-map.d.ts +2 -2
|
@@ -152,7 +152,7 @@ class DataTypeFactory {
|
|
|
152
152
|
* @param thunk
|
|
153
153
|
* @protected
|
|
154
154
|
*/
|
|
155
|
-
static async _importDataTypeArgs(context, owner, thunk) {
|
|
155
|
+
static async _importDataTypeArgs(context, owner, thunk, checkCircularDeps) {
|
|
156
156
|
thunk = await (0, index_js_1.resolveThunk)(thunk);
|
|
157
157
|
const { importQueue, initArgsMap } = context;
|
|
158
158
|
// Check if data type already exist (maybe a builtin type or already imported)
|
|
@@ -226,7 +226,7 @@ class DataTypeFactory {
|
|
|
226
226
|
if (metadata.name) {
|
|
227
227
|
const curr = initArgsMap?.get(metadata.name);
|
|
228
228
|
if (curr) {
|
|
229
|
-
if (curr[initializingSymbol])
|
|
229
|
+
if (checkCircularDeps && curr[initializingSymbol])
|
|
230
230
|
return context.addError('Circular reference detected');
|
|
231
231
|
return metadata.name;
|
|
232
232
|
}
|
|
@@ -297,7 +297,7 @@ class DataTypeFactory {
|
|
|
297
297
|
await context.enterAsync('.base', async () => {
|
|
298
298
|
let baseArgs;
|
|
299
299
|
if (metadata.base) {
|
|
300
|
-
baseArgs = await this._importDataTypeArgs(context, owner, metadata.base);
|
|
300
|
+
baseArgs = await this._importDataTypeArgs(context, owner, metadata.base, true);
|
|
301
301
|
}
|
|
302
302
|
else if (initArgs.ctor) {
|
|
303
303
|
const baseClass = Object.getPrototypeOf(initArgs.ctor.prototype).constructor;
|
|
@@ -362,7 +362,7 @@ class DataTypeFactory {
|
|
|
362
362
|
await context.enterAsync('.base', async () => {
|
|
363
363
|
let baseArgs;
|
|
364
364
|
if (metadata.base) {
|
|
365
|
-
baseArgs = await this._importDataTypeArgs(context, owner, metadata.base);
|
|
365
|
+
baseArgs = await this._importDataTypeArgs(context, owner, metadata.base, true);
|
|
366
366
|
}
|
|
367
367
|
else if (initArgs.ctor) {
|
|
368
368
|
const baseClass = Object.getPrototypeOf(initArgs.ctor.prototype).constructor;
|
|
@@ -395,7 +395,7 @@ class DataTypeFactory {
|
|
|
395
395
|
await context.enterAsync('.base', async () => {
|
|
396
396
|
let baseArgs;
|
|
397
397
|
if (metadata.base) {
|
|
398
|
-
baseArgs = await this._importDataTypeArgs(context, owner, metadata.base);
|
|
398
|
+
baseArgs = await this._importDataTypeArgs(context, owner, metadata.base, true);
|
|
399
399
|
}
|
|
400
400
|
else if (initArgs.ctor) {
|
|
401
401
|
const baseClass = Object.getPrototypeOf(initArgs.ctor.prototype).constructor;
|
|
@@ -149,7 +149,7 @@ export class DataTypeFactory {
|
|
|
149
149
|
* @param thunk
|
|
150
150
|
* @protected
|
|
151
151
|
*/
|
|
152
|
-
static async _importDataTypeArgs(context, owner, thunk) {
|
|
152
|
+
static async _importDataTypeArgs(context, owner, thunk, checkCircularDeps) {
|
|
153
153
|
thunk = await resolveThunk(thunk);
|
|
154
154
|
const { importQueue, initArgsMap } = context;
|
|
155
155
|
// Check if data type already exist (maybe a builtin type or already imported)
|
|
@@ -223,7 +223,7 @@ export class DataTypeFactory {
|
|
|
223
223
|
if (metadata.name) {
|
|
224
224
|
const curr = initArgsMap?.get(metadata.name);
|
|
225
225
|
if (curr) {
|
|
226
|
-
if (curr[initializingSymbol])
|
|
226
|
+
if (checkCircularDeps && curr[initializingSymbol])
|
|
227
227
|
return context.addError('Circular reference detected');
|
|
228
228
|
return metadata.name;
|
|
229
229
|
}
|
|
@@ -294,7 +294,7 @@ export class DataTypeFactory {
|
|
|
294
294
|
await context.enterAsync('.base', async () => {
|
|
295
295
|
let baseArgs;
|
|
296
296
|
if (metadata.base) {
|
|
297
|
-
baseArgs = await this._importDataTypeArgs(context, owner, metadata.base);
|
|
297
|
+
baseArgs = await this._importDataTypeArgs(context, owner, metadata.base, true);
|
|
298
298
|
}
|
|
299
299
|
else if (initArgs.ctor) {
|
|
300
300
|
const baseClass = Object.getPrototypeOf(initArgs.ctor.prototype).constructor;
|
|
@@ -359,7 +359,7 @@ export class DataTypeFactory {
|
|
|
359
359
|
await context.enterAsync('.base', async () => {
|
|
360
360
|
let baseArgs;
|
|
361
361
|
if (metadata.base) {
|
|
362
|
-
baseArgs = await this._importDataTypeArgs(context, owner, metadata.base);
|
|
362
|
+
baseArgs = await this._importDataTypeArgs(context, owner, metadata.base, true);
|
|
363
363
|
}
|
|
364
364
|
else if (initArgs.ctor) {
|
|
365
365
|
const baseClass = Object.getPrototypeOf(initArgs.ctor.prototype).constructor;
|
|
@@ -392,7 +392,7 @@ export class DataTypeFactory {
|
|
|
392
392
|
await context.enterAsync('.base', async () => {
|
|
393
393
|
let baseArgs;
|
|
394
394
|
if (metadata.base) {
|
|
395
|
-
baseArgs = await this._importDataTypeArgs(context, owner, metadata.base);
|
|
395
|
+
baseArgs = await this._importDataTypeArgs(context, owner, metadata.base, true);
|
|
396
396
|
}
|
|
397
397
|
else if (initArgs.ctor) {
|
|
398
398
|
const baseClass = Object.getPrototypeOf(initArgs.ctor.prototype).constructor;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opra/common",
|
|
3
|
-
"version": "1.17.
|
|
3
|
+
"version": "1.17.4",
|
|
4
4
|
"description": "Opra common package",
|
|
5
5
|
"author": "Panates",
|
|
6
6
|
"license": "MIT",
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"@browsery/http-parser": "^0.5.9-r4",
|
|
11
11
|
"@browsery/i18next": "^24.2.2",
|
|
12
12
|
"@browsery/type-is": "^1.6.18-r8",
|
|
13
|
-
"@jsopen/objects": "^1.6.
|
|
13
|
+
"@jsopen/objects": "^1.6.2",
|
|
14
14
|
"fast-tokenizer": "^1.7.0",
|
|
15
15
|
"putil-promisify": "^1.10.1",
|
|
16
16
|
"putil-varhelpers": "^1.6.5",
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
"super-fast-md5": "^1.0.3",
|
|
19
19
|
"tslib": "^2.8.1",
|
|
20
20
|
"uid": "^2.0.2",
|
|
21
|
-
"valgen": "^5.15.
|
|
21
|
+
"valgen": "^5.15.2"
|
|
22
22
|
},
|
|
23
23
|
"type": "module",
|
|
24
24
|
"exports": {
|
|
@@ -10,7 +10,7 @@ export declare class DataTypeMap {
|
|
|
10
10
|
protected [kMap]: ResponsiveMap<DataType>;
|
|
11
11
|
protected [kCtorMap]: WeakMap<object | Function | Type<any>, string>;
|
|
12
12
|
get size(): number;
|
|
13
|
-
forEach(callbackFn: (value: DataType, key: string, map:
|
|
13
|
+
forEach(callbackFn: (value: DataType, key: string, map: ResponsiveMap<DataType>) => void, thisArg?: any): void;
|
|
14
14
|
get(nameOrCtor: string | Type | Function | object): DataType | undefined;
|
|
15
15
|
set(name: string, dataType: DataType): void;
|
|
16
16
|
has(nameOrCtor: string | Type | Function | object | DataType): boolean;
|
|
@@ -95,7 +95,7 @@ export declare class DataTypeFactory {
|
|
|
95
95
|
* @param thunk
|
|
96
96
|
* @protected
|
|
97
97
|
*/
|
|
98
|
-
protected static _importDataTypeArgs(context: DataTypeFactory.Context, owner: DocumentElement, thunk: string | Type | OpraSchema.DataType | object): Promise<DataTypeFactory.DataTypeInitArguments | string | void>;
|
|
98
|
+
protected static _importDataTypeArgs(context: DataTypeFactory.Context, owner: DocumentElement, thunk: string | Type | OpraSchema.DataType | object, checkCircularDeps?: boolean): Promise<DataTypeFactory.DataTypeInitArguments | string | void>;
|
|
99
99
|
protected static _prepareDataTypeArgs(context: DataTypeFactory.Context, initArgs: DataTypeFactory.DataTypeInitArguments, metadata: OpraSchema.DataTypeBase | DataType.Metadata): Promise<void>;
|
|
100
100
|
protected static _prepareComplexTypeArgs(context: DataTypeFactory.Context, owner: DocumentElement, initArgs: DataTypeFactory.ComplexTypeInit, metadata: ComplexType.Metadata | OpraSchema.ComplexType): Promise<void>;
|
|
101
101
|
protected static _prepareEnumTypeArgs(context: DataTypeFactory.Context, owner: DocumentElement, initArgs: DataTypeFactory.EnumTypeInit, metadata: EnumType.Metadata | OpraSchema.EnumType): Promise<void>;
|
|
@@ -11,7 +11,7 @@ declare const kSize: unique symbol;
|
|
|
11
11
|
/**
|
|
12
12
|
* A Map implementation that supports case-insensitivity and ordered keys
|
|
13
13
|
*/
|
|
14
|
-
export declare class ResponsiveMap<V>
|
|
14
|
+
export declare class ResponsiveMap<V> {
|
|
15
15
|
private [kSize];
|
|
16
16
|
private [kEntries];
|
|
17
17
|
private [kKeyMap];
|
|
@@ -20,7 +20,7 @@ export declare class ResponsiveMap<V> implements Map<string, V> {
|
|
|
20
20
|
constructor(init?: ResponsiveMapInit<V> | null, options?: ResponsiveMapOptions);
|
|
21
21
|
get size(): number;
|
|
22
22
|
clear(): void;
|
|
23
|
-
forEach(callbackfn: (value: V, key: string, map:
|
|
23
|
+
forEach(callbackfn: (value: V, key: string, map: ResponsiveMap<V>) => void, thisArg?: any): void;
|
|
24
24
|
get(key: string): V | undefined;
|
|
25
25
|
has(key: string): boolean;
|
|
26
26
|
set(key: string, value: V): this;
|