@es-joy/jsoe 0.28.2 → 0.30.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/.claude/scheduled_tasks.lock +1 -0
- package/CHANGES.md +25 -0
- package/README.md +4 -0
- package/dist/formatAndTypeChoices.d.ts +6 -6
- package/dist/formatAndTypeChoices.d.ts.map +1 -1
- package/dist/formats/schema.d.ts +5 -0
- package/dist/formats/schema.d.ts.map +1 -1
- package/dist/formats.d.ts +2 -2
- package/dist/formats.d.ts.map +1 -1
- package/dist/fundamentalTypes/dateType.d.ts +26 -2
- package/dist/fundamentalTypes/dateType.d.ts.map +1 -1
- package/dist/fundamentalTypes/domexceptionType.d.ts +7 -0
- package/dist/fundamentalTypes/domexceptionType.d.ts.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/jtltExtensions.d.ts +112 -0
- package/dist/jtltExtensions.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/arraySearchType.d.ts +22 -0
- package/dist/search/fundamentalTypes/arraySearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/bigintSearchType.d.ts +10 -0
- package/dist/search/fundamentalTypes/bigintSearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/blobSearchType.d.ts +19 -0
- package/dist/search/fundamentalTypes/blobSearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/booleanSearchType.d.ts +11 -0
- package/dist/search/fundamentalTypes/booleanSearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/catchSearchType.d.ts +18 -0
- package/dist/search/fundamentalTypes/catchSearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/dateSearchType.d.ts +15 -0
- package/dist/search/fundamentalTypes/dateSearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/domexceptionSearchType.d.ts +16 -0
- package/dist/search/fundamentalTypes/domexceptionSearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/enumSearchType.d.ts +26 -0
- package/dist/search/fundamentalTypes/enumSearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/errorSearchType.d.ts +9 -0
- package/dist/search/fundamentalTypes/errorSearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/fileSearchType.d.ts +28 -0
- package/dist/search/fundamentalTypes/fileSearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/filelistSearchType.d.ts +24 -0
- package/dist/search/fundamentalTypes/filelistSearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/functionSearchType.d.ts +18 -0
- package/dist/search/fundamentalTypes/functionSearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/mapSearchType.d.ts +22 -0
- package/dist/search/fundamentalTypes/mapSearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/nanSearchType.d.ts +7 -0
- package/dist/search/fundamentalTypes/nanSearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/nullSearchType.d.ts +7 -0
- package/dist/search/fundamentalTypes/nullSearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/numberSearchType.d.ts +11 -0
- package/dist/search/fundamentalTypes/numberSearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/objectSearchType.d.ts +21 -0
- package/dist/search/fundamentalTypes/objectSearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/promiseSearchType.d.ts +20 -0
- package/dist/search/fundamentalTypes/promiseSearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/regexpSearchType.d.ts +20 -0
- package/dist/search/fundamentalTypes/regexpSearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/setSearchType.d.ts +15 -0
- package/dist/search/fundamentalTypes/setSearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/stringSearchType.d.ts +21 -0
- package/dist/search/fundamentalTypes/stringSearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/symbolSearchType.d.ts +16 -0
- package/dist/search/fundamentalTypes/symbolSearchType.d.ts.map +1 -0
- package/dist/search/fundamentalTypes/undefinedSearchType.d.ts +7 -0
- package/dist/search/fundamentalTypes/undefinedSearchType.d.ts.map +1 -0
- package/dist/search/index.d.ts +70 -0
- package/dist/search/index.d.ts.map +1 -0
- package/dist/search/queryTree.d.ts +12 -1
- package/dist/search/queryTree.d.ts.map +1 -1
- package/dist/search/queryTreeBuilders.d.ts +18 -0
- package/dist/search/queryTreeBuilders.d.ts.map +1 -1
- package/dist/search/searchDispatch.d.ts +44 -0
- package/dist/search/searchDispatch.d.ts.map +1 -1
- package/dist/search/searchElementUtils.d.ts +106 -0
- package/dist/search/searchElementUtils.d.ts.map +1 -0
- package/dist/search/searchUtils.d.ts +550 -0
- package/dist/search/searchUtils.d.ts.map +1 -0
- package/dist/search/subTypes/blobHTMLSearchType.d.ts +36 -0
- package/dist/search/subTypes/blobHTMLSearchType.d.ts.map +1 -0
- package/dist/search/subTypes/recordSearchType.d.ts +18 -0
- package/dist/search/subTypes/recordSearchType.d.ts.map +1 -0
- package/dist/search/subTypes/tupleSearchType.d.ts +21 -0
- package/dist/search/subTypes/tupleSearchType.d.ts.map +1 -0
- package/dist/search/superTypes/SpecialRealNumberSearchType.d.ts +14 -0
- package/dist/search/superTypes/SpecialRealNumberSearchType.d.ts.map +1 -0
- package/dist/search/superTypes/buffersourceSearchType.d.ts +17 -0
- package/dist/search/superTypes/buffersourceSearchType.d.ts.map +1 -0
- package/dist/search/superTypes/dommatrixSearchType.d.ts +11 -0
- package/dist/search/superTypes/dommatrixSearchType.d.ts.map +1 -0
- package/dist/search/superTypes/dompointSearchType.d.ts +9 -0
- package/dist/search/superTypes/dompointSearchType.d.ts.map +1 -0
- package/dist/search/superTypes/domrectSearchType.d.ts +9 -0
- package/dist/search/superTypes/domrectSearchType.d.ts.map +1 -0
- package/dist/search/superTypes/errorsSpecialSearchType.d.ts +11 -0
- package/dist/search/superTypes/errorsSpecialSearchType.d.ts.map +1 -0
- package/dist/search/unions/discriminatedUnionSearchType.d.ts +12 -0
- package/dist/search/unions/discriminatedUnionSearchType.d.ts.map +1 -0
- package/dist/search/unions/unionFamilySearchType.d.ts +36 -0
- package/dist/search/unions/unionFamilySearchType.d.ts.map +1 -0
- package/dist/search/unions/unionSearchType.d.ts +8 -0
- package/dist/search/unions/unionSearchType.d.ts.map +1 -0
- package/dist/search/unions/xorSearchType.d.ts +12 -0
- package/dist/search/unions/xorSearchType.d.ts.map +1 -0
- package/dist/superTypes/buffersourceType.d.ts.map +1 -1
- package/dist/typeChoices.d.ts +3 -3
- package/dist/typeChoices.d.ts.map +1 -1
- package/dist/types.d.ts +3 -3
- package/dist/types.d.ts.map +1 -1
- package/package.json +5 -4
- package/pnpm-workspace.yaml +1 -1
- package/rollup.config.js +12 -0
- package/src/formatAndTypeChoices.js +4 -4
- package/src/formats/schema.js +1 -1
- package/src/formats.js +1 -1
- package/src/fundamentalTypes/dateType.js +40 -14
- package/src/fundamentalTypes/domexceptionType.js +41 -33
- package/src/fundamentalTypes/regexpType.js +1 -1
- package/src/index.js +6 -0
- package/src/jsoe.css +204 -0
- package/src/jtltExtensions.js +103 -0
- package/src/search/fundamentalTypes/arraySearchType.js +101 -0
- package/src/search/fundamentalTypes/bigintSearchType.js +68 -0
- package/src/search/fundamentalTypes/blobSearchType.js +42 -0
- package/src/search/fundamentalTypes/booleanSearchType.js +40 -0
- package/src/search/fundamentalTypes/catchSearchType.js +59 -0
- package/src/search/fundamentalTypes/dateSearchType.js +166 -0
- package/src/search/fundamentalTypes/domexceptionSearchType.js +84 -0
- package/src/search/fundamentalTypes/enumSearchType.js +62 -0
- package/src/search/fundamentalTypes/errorSearchType.js +11 -0
- package/src/search/fundamentalTypes/fileSearchType.js +94 -0
- package/src/search/fundamentalTypes/filelistSearchType.js +103 -0
- package/src/search/fundamentalTypes/functionSearchType.js +102 -0
- package/src/search/fundamentalTypes/mapSearchType.js +117 -0
- package/src/search/fundamentalTypes/nanSearchType.js +11 -0
- package/src/search/fundamentalTypes/nullSearchType.js +11 -0
- package/src/search/fundamentalTypes/numberSearchType.js +59 -0
- package/src/search/fundamentalTypes/objectSearchType.js +367 -0
- package/src/search/fundamentalTypes/promiseSearchType.js +61 -0
- package/src/search/fundamentalTypes/regexpSearchType.js +72 -0
- package/src/search/fundamentalTypes/setSearchType.js +91 -0
- package/src/search/fundamentalTypes/stringSearchType.js +44 -0
- package/src/search/fundamentalTypes/symbolSearchType.js +39 -0
- package/src/search/fundamentalTypes/undefinedSearchType.js +11 -0
- package/src/search/index.js +96 -0
- package/src/search/queryTree.js +244 -0
- package/src/search/queryTreeBuilders.js +233 -0
- package/src/search/searchDispatch.js +291 -0
- package/src/search/searchElementUtils.js +373 -0
- package/src/search/searchUtils.js +847 -0
- package/src/search/subTypes/blobHTMLSearchType.js +122 -0
- package/src/search/subTypes/recordSearchType.js +105 -0
- package/src/search/subTypes/tupleSearchType.js +152 -0
- package/src/search/superTypes/SpecialRealNumberSearchType.js +42 -0
- package/src/search/superTypes/buffersourceSearchType.js +53 -0
- package/src/search/superTypes/dommatrixSearchType.js +24 -0
- package/src/search/superTypes/dompointSearchType.js +15 -0
- package/src/search/superTypes/domrectSearchType.js +15 -0
- package/src/search/superTypes/errorsSpecialSearchType.js +15 -0
- package/src/search/unions/discriminatedUnionSearchType.js +16 -0
- package/src/search/unions/unionFamilySearchType.js +168 -0
- package/src/search/unions/unionSearchType.js +12 -0
- package/src/search/unions/xorSearchType.js +16 -0
- package/src/superTypes/buffersourceType.js +13 -15
- package/src/typeChoices.js +2 -2
- package/src/types.js +2 -2
- package/tsconfig-prod.json +12 -0
- package/tsconfig.json +5 -10
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
import {jml} from '../../vendor-imports.js';
|
|
2
|
+
import {buildPathLabel, findOwnControl} from '../searchUtils.js';
|
|
3
|
+
import {makeTypeOfLeaf, combineAnd} from '../queryTreeBuilders.js';
|
|
4
|
+
import {findSearchElement, getQueryViaElement, hasGetQuery} from '../searchElementUtils.js';
|
|
5
|
+
import {getSearchSchemaType, buildSearchWidget} from '../searchDispatch.js';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* @typedef {import('../searchDispatch.js').SearchTypeObject} SearchTypeObject
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* @param {HTMLElement} el
|
|
13
|
+
* @returns {el is HTMLSelectElement}
|
|
14
|
+
*/
|
|
15
|
+
function isSelectElement (el) {
|
|
16
|
+
return el.nodeName.toLowerCase() === 'select';
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* @typedef {{
|
|
21
|
+
* discriminator?: string,
|
|
22
|
+
* options: import('../../formats/schema.js').ZodexSchema[]
|
|
23
|
+
* }} UnionLikeSchemaObject
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Shared implementation behind `unionSearchType.js`, `xorSearchType.js` and
|
|
28
|
+
* `discriminatedUnionSearchType.js`: all three share the exact same
|
|
29
|
+
* "has type <type pull-down>" shape (README) - `SzUnion`/`SzXor` carry
|
|
30
|
+
* only `options`, `SzDiscriminatedUnion` additionally carries a
|
|
31
|
+
* `discriminator` field name (`zodexy`'s schema types), so `discriminated`
|
|
32
|
+
* is the only behavioral difference. Picking a branch also renders that
|
|
33
|
+
* branch's own recursively-built search widget below the pull-down (not
|
|
34
|
+
* just "is type X" - "X matches Y" too), matching every other composite
|
|
35
|
+
* built so far.
|
|
36
|
+
*
|
|
37
|
+
* Each `<option>` carries its branch's search-dispatch key and (for a
|
|
38
|
+
* discriminated union) its discriminator value as `data-*` attributes,
|
|
39
|
+
* since `getQuery()` runs as a `$define` mixin method installed once on the
|
|
40
|
+
* tag's shared prototype - the branch metadata needs to be read back off
|
|
41
|
+
* the currently-selected `<option>` itself at query time, not closed over
|
|
42
|
+
* from this factory's one-time call.
|
|
43
|
+
* @param {{tagName: string, discriminated: boolean}} cfg
|
|
44
|
+
* @returns {SearchTypeObject}
|
|
45
|
+
*/
|
|
46
|
+
export function makeUnionFamilySearchType ({tagName, discriminated}) {
|
|
47
|
+
return {
|
|
48
|
+
buildUI ({schemaObject, path, typeNamespace, topRoot, types, originalJSON}) {
|
|
49
|
+
const label = buildPathLabel(schemaObject, path);
|
|
50
|
+
const name = `${typeNamespace}-${tagName}`;
|
|
51
|
+
const unionLikeSchemaObject = /** @type {UnionLikeSchemaObject} */ (
|
|
52
|
+
/** @type {unknown} */ (schemaObject)
|
|
53
|
+
);
|
|
54
|
+
const {options} = unionLikeSchemaObject;
|
|
55
|
+
const discriminator = discriminated
|
|
56
|
+
? unionLikeSchemaObject.discriminator
|
|
57
|
+
: undefined;
|
|
58
|
+
|
|
59
|
+
const branches = options.map((option, idx) => {
|
|
60
|
+
const searchType = getSearchSchemaType(option);
|
|
61
|
+
let discriminatorValue;
|
|
62
|
+
if (discriminator) {
|
|
63
|
+
const discSchema = /** @type {{properties?: {[key: string]: any}}} */ (
|
|
64
|
+
option
|
|
65
|
+
).properties?.[discriminator];
|
|
66
|
+
if (discSchema?.type === 'literal') {
|
|
67
|
+
[discriminatorValue] = discSchema.values;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
const optLabel = discriminatorValue === undefined
|
|
71
|
+
? (buildPathLabel(option, `${path}/${idx}`) || searchType)
|
|
72
|
+
: String(discriminatorValue);
|
|
73
|
+
return {idx, option, searchType, discriminatorValue, optLabel};
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
return [tagName, {
|
|
77
|
+
dataset: {searchPath: path, searchKind: tagName},
|
|
78
|
+
title: label,
|
|
79
|
+
$define: {
|
|
80
|
+
/** @this {HTMLElement} */
|
|
81
|
+
getQuery () {
|
|
82
|
+
const searchPath = this.dataset.searchPath ?? '';
|
|
83
|
+
const select = /** @type {HTMLSelectElement|undefined} */ (
|
|
84
|
+
findOwnControl(this, 'select.jsoeSearchTypeOf')
|
|
85
|
+
);
|
|
86
|
+
if (!select || select.value === '') {
|
|
87
|
+
return undefined;
|
|
88
|
+
}
|
|
89
|
+
const selectedOption = select.selectedOptions[0];
|
|
90
|
+
const searchType = selectedOption?.dataset.searchType ?? '';
|
|
91
|
+
const rawDiscriminatorValue = selectedOption?.dataset.discriminatorValue;
|
|
92
|
+
const typeOfLeaf = makeTypeOfLeaf(
|
|
93
|
+
searchPath,
|
|
94
|
+
searchType,
|
|
95
|
+
rawDiscriminatorValue === undefined
|
|
96
|
+
? undefined
|
|
97
|
+
: JSON.parse(rawDiscriminatorValue)
|
|
98
|
+
);
|
|
99
|
+
const branchEl = findSearchElement(this, searchPath);
|
|
100
|
+
const branchQuery = branchEl && hasGetQuery(branchEl)
|
|
101
|
+
? branchEl.getQuery()
|
|
102
|
+
: undefined;
|
|
103
|
+
return combineAnd([typeOfLeaf, branchQuery]);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}, [
|
|
107
|
+
['span', {class: 'searchLabel'}, [label]],
|
|
108
|
+
['label', [
|
|
109
|
+
'Has type: ',
|
|
110
|
+
['select', {
|
|
111
|
+
name,
|
|
112
|
+
class: 'jsoeSearchTypeOf',
|
|
113
|
+
// The "(any)" placeholder's `value: ''` below is exactly what
|
|
114
|
+
// native `required` treats as "nothing selected", so choosing
|
|
115
|
+
// any real branch already satisfies it - no custom validity
|
|
116
|
+
// code needed. A union/xor/discriminatedUnion has no other
|
|
117
|
+
// possible constraint (unlike `mapSearchType.js`'s key/value or
|
|
118
|
+
// `objectSearchType.js`'s properties), so this alone is "no
|
|
119
|
+
// absent values" for the whole widget, not just one facet of it.
|
|
120
|
+
required: true,
|
|
121
|
+
$on: {
|
|
122
|
+
change () {
|
|
123
|
+
if (!isSelectElement(this)) {
|
|
124
|
+
return;
|
|
125
|
+
}
|
|
126
|
+
const container = this.closest(tagName)?.querySelector(
|
|
127
|
+
'.searchUnionBranch'
|
|
128
|
+
);
|
|
129
|
+
if (!container) {
|
|
130
|
+
return;
|
|
131
|
+
}
|
|
132
|
+
container.textContent = '';
|
|
133
|
+
if (this.value === '') {
|
|
134
|
+
return;
|
|
135
|
+
}
|
|
136
|
+
const branch = branches[Number(this.value)];
|
|
137
|
+
const branchArr = buildSearchWidget({
|
|
138
|
+
schemaObject: branch.option,
|
|
139
|
+
path,
|
|
140
|
+
typeNamespace,
|
|
141
|
+
topRoot,
|
|
142
|
+
types,
|
|
143
|
+
originalJSON
|
|
144
|
+
});
|
|
145
|
+
container.append(/** @type {HTMLElement} */ (jml(...branchArr)));
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
}, [
|
|
149
|
+
['option', {value: ''}, ['(any)']],
|
|
150
|
+
...branches.map(({idx, searchType, discriminatorValue, optLabel}) => (
|
|
151
|
+
['option', {
|
|
152
|
+
value: String(idx),
|
|
153
|
+
dataset: {
|
|
154
|
+
searchType,
|
|
155
|
+
...(discriminatorValue === undefined
|
|
156
|
+
? {}
|
|
157
|
+
: {discriminatorValue: JSON.stringify(discriminatorValue)})
|
|
158
|
+
}
|
|
159
|
+
}, [optLabel]]
|
|
160
|
+
))
|
|
161
|
+
]]
|
|
162
|
+
]],
|
|
163
|
+
['div', {class: 'searchUnionBranch'}]
|
|
164
|
+
]];
|
|
165
|
+
},
|
|
166
|
+
getQuery: getQueryViaElement
|
|
167
|
+
};
|
|
168
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import {makeUnionFamilySearchType} from './unionFamilySearchType.js';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Union: "Has type <type pull-down>" (README) - see
|
|
5
|
+
* `unionFamilySearchType.js` for the shared implementation.
|
|
6
|
+
* @type {import('../searchDispatch.js').SearchTypeObject}
|
|
7
|
+
*/
|
|
8
|
+
const unionSearchType = makeUnionFamilySearchType({
|
|
9
|
+
tagName: 'jsoe-search-union', discriminated: false
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
export default unionSearchType;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import {makeUnionFamilySearchType} from './unionFamilySearchType.js';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Xor (exclusive union): "Has type <type pull-down>" (README) - see
|
|
5
|
+
* `unionFamilySearchType.js` for the shared implementation.
|
|
6
|
+
* `getXorBranchMatchInfo` (`src/formats/schema.js`) is deliberately not
|
|
7
|
+
* reused here, same as the search plan already rules out for xor generally
|
|
8
|
+
* (§4): it requires a concrete value to test branch match, which the search
|
|
9
|
+
* side never has.
|
|
10
|
+
* @type {import('../searchDispatch.js').SearchTypeObject}
|
|
11
|
+
*/
|
|
12
|
+
const xorSearchType = makeUnionFamilySearchType({
|
|
13
|
+
tagName: 'jsoe-search-xor', discriminated: false
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
export default xorSearchType;
|
|
@@ -72,26 +72,26 @@ const getMinMaxForTypedArray = (typedArray) => {
|
|
|
72
72
|
};
|
|
73
73
|
|
|
74
74
|
/**
|
|
75
|
-
* @typedef {"Int8Array"|"Uint8Array"|"Uint8ClampedArray"
|
|
76
|
-
* "Int16Array"|"Uint16Array"|"Int32Array"|"Uint32Array"
|
|
77
|
-
* "Float32Array"|"Float64Array"|"BigInt64Array"
|
|
78
|
-
* "BigUint64Array"} TypedArray
|
|
75
|
+
* @typedef {"Int8Array"|"Uint8Array"|"Uint8ClampedArray"
|
|
76
|
+
* |"Int16Array"|"Uint16Array"|"Int32Array"|"Uint32Array"
|
|
77
|
+
* |"Float32Array"|"Float64Array"|"BigInt64Array"
|
|
78
|
+
* |"BigUint64Array"} TypedArray
|
|
79
79
|
*/
|
|
80
80
|
|
|
81
81
|
/**
|
|
82
|
-
* @typedef {Int8Array|Uint8Array|Uint8ClampedArray
|
|
83
|
-
* Int16Array|Uint16Array|Int32Array|Uint32Array
|
|
84
|
-
* Float32Array|Float64Array|BigInt64Array
|
|
85
|
-
* BigUint64Array} TypedArrayInstance
|
|
82
|
+
* @typedef {Int8Array|Uint8Array|Uint8ClampedArray
|
|
83
|
+
* |Int16Array|Uint16Array|Int32Array|Uint32Array
|
|
84
|
+
* |Float32Array|Float64Array|BigInt64Array
|
|
85
|
+
* |BigUint64Array} TypedArrayInstance
|
|
86
86
|
*/
|
|
87
87
|
|
|
88
88
|
/**
|
|
89
89
|
* @param {TypedArray} prop
|
|
90
|
-
* @returns {Int8ArrayConstructor|Uint8ArrayConstructor
|
|
91
|
-
* Uint8ClampedArrayConstructor|Int16ArrayConstructor
|
|
92
|
-
* Uint16ArrayConstructor|Int32ArrayConstructor|Uint32ArrayConstructor
|
|
93
|
-
* Float32ArrayConstructor|Float64ArrayConstructor
|
|
94
|
-
* BigInt64ArrayConstructor|BigUint64ArrayConstructor}
|
|
90
|
+
* @returns {Int8ArrayConstructor|Uint8ArrayConstructor
|
|
91
|
+
* |Uint8ClampedArrayConstructor|Int16ArrayConstructor
|
|
92
|
+
* |Uint16ArrayConstructor|Int32ArrayConstructor|Uint32ArrayConstructor
|
|
93
|
+
* |Float32ArrayConstructor|Float64ArrayConstructor
|
|
94
|
+
* |BigInt64ArrayConstructor|BigUint64ArrayConstructor}
|
|
95
95
|
*/
|
|
96
96
|
const getTypedArray = (prop) => {
|
|
97
97
|
switch (prop) {
|
|
@@ -164,7 +164,6 @@ const buffersourceType = {
|
|
|
164
164
|
dataViewByteOffset,
|
|
165
165
|
dataViewByteLength, length
|
|
166
166
|
} = o;
|
|
167
|
-
// @ts-expect-error Ok
|
|
168
167
|
const buffer = new ArrayBuffer(byteLength, {maxByteLength});
|
|
169
168
|
|
|
170
169
|
let typedArray, TypedArray;
|
|
@@ -471,7 +470,6 @@ const buffersourceType = {
|
|
|
471
470
|
);
|
|
472
471
|
|
|
473
472
|
const buffer = new ArrayBuffer(
|
|
474
|
-
// @ts-expect-error New ArrayBuffer argument
|
|
475
473
|
byteLengthVal, maxByteLength ? {maxByteLength} : undefined
|
|
476
474
|
);
|
|
477
475
|
|
package/src/typeChoices.js
CHANGED
|
@@ -29,7 +29,7 @@ import deepEqual from 'fast-deep-equal/es6/index.js';
|
|
|
29
29
|
*/
|
|
30
30
|
/**
|
|
31
31
|
* @callback Validate
|
|
32
|
-
* @param {{avoidReport?: boolean}} cfg
|
|
32
|
+
* @param {{avoidReport?: boolean}} [cfg]
|
|
33
33
|
* @returns {boolean}
|
|
34
34
|
*/
|
|
35
35
|
/**
|
|
@@ -127,7 +127,7 @@ import deepEqual from 'fast-deep-equal/es6/index.js';
|
|
|
127
127
|
/**
|
|
128
128
|
* @callback SetValue
|
|
129
129
|
* @param {import('./formats.js').StructuredCloneValue} value
|
|
130
|
-
* @param {import('./types.js').StateObject} stateObj
|
|
130
|
+
* @param {import('./types.js').StateObject} [stateObj]
|
|
131
131
|
* @returns {Promise<void>}
|
|
132
132
|
*/
|
|
133
133
|
|
package/src/types.js
CHANGED
|
@@ -641,8 +641,8 @@ class Types {
|
|
|
641
641
|
/**
|
|
642
642
|
* @param {import('./formats.js').AvailableFormat} format
|
|
643
643
|
* @param {StructuredCloneValue} record
|
|
644
|
-
* @param {StateObject} stateObj
|
|
645
|
-
* @returns {Promise<
|
|
644
|
+
* @param {StateObject} [stateObj]
|
|
645
|
+
* @returns {Promise<HTMLElement>}
|
|
646
646
|
*/
|
|
647
647
|
async getControlsForFormatAndValue (
|
|
648
648
|
format, record, stateObj
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
{
|
|
2
|
+
"extends": "./tsconfig.json",
|
|
3
|
+
"compilerOptions": {
|
|
4
|
+
"noEmit": false,
|
|
5
|
+
"declaration": true,
|
|
6
|
+
"declarationMap": true,
|
|
7
|
+
"emitDeclarationOnly": true,
|
|
8
|
+
"rootDir": "src",
|
|
9
|
+
"outDir": "dist"
|
|
10
|
+
},
|
|
11
|
+
"include": ["src/**/*.js", "typings/sceditor.d.ts", "typings/json-6.d.ts"]
|
|
12
|
+
}
|
package/tsconfig.json
CHANGED
|
@@ -1,20 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"compilerOptions": {
|
|
3
|
-
"lib": ["
|
|
4
|
-
"skipLibCheck": true,
|
|
3
|
+
"lib": ["ESNext", "dom"],
|
|
5
4
|
"moduleResolution": "nodenext",
|
|
6
5
|
"module": "NodeNext",
|
|
7
6
|
"allowJs": true,
|
|
8
7
|
"checkJs": true,
|
|
9
|
-
"noEmit": false,
|
|
10
|
-
"declaration": true,
|
|
11
|
-
"declarationMap": true,
|
|
12
|
-
"emitDeclarationOnly": true,
|
|
13
8
|
"strict": true,
|
|
9
|
+
"noEmit": true,
|
|
14
10
|
"target": "es2020",
|
|
15
|
-
"
|
|
16
|
-
"outDir": "dist"
|
|
11
|
+
"types": ["node"]
|
|
17
12
|
},
|
|
18
|
-
"include": ["
|
|
19
|
-
"exclude": ["node_modules", "src/deepEqual.js"]
|
|
13
|
+
"include": ["**/*.ts", "**/*.js", "../typings/CypressPlugins.d.ts", "../typings/sceditor.d.ts", "../typings/json-6.d.ts"],
|
|
14
|
+
"exclude": ["rollup.config.js", ".agents", "vendor", "coverage", "instrumented", "node_modules", "dist", "src/deepEqual.js"]
|
|
20
15
|
}
|