@hanzogui/react-native-web-internals 3.0.6 → 4.3.1
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/cjs/StyleSheet/__tests__/compiler-createReactDOMStyle-test.cjs +62 -37
- package/dist/cjs/StyleSheet/__tests__/compiler-test.cjs +129 -117
- package/dist/cjs/StyleSheet/__tests__/dom-createOrderedCSSStyleSheet-test.cjs +69 -30
- package/dist/cjs/StyleSheet/__tests__/index-test.cjs +127 -95
- package/dist/cjs/StyleSheet/__tests__/preprocess-test.cjs +26 -13
- package/dist/cjs/StyleSheet/__tests__/validate-test.cjs +30 -15
- package/dist/cjs/StyleSheet/compiler/createReactDOMStyle.cjs +141 -68
- package/dist/cjs/StyleSheet/compiler/hash.cjs +12 -10
- package/dist/cjs/StyleSheet/compiler/hyphenateStyleName.cjs +18 -14
- package/dist/cjs/StyleSheet/compiler/index.cjs +234 -173
- package/dist/cjs/StyleSheet/compiler/normalizeColor.cjs +27 -18
- package/dist/cjs/StyleSheet/compiler/normalizeValueWithProperty.cjs +30 -23
- package/dist/cjs/StyleSheet/compiler/resolveShadowValue.cjs +36 -32
- package/dist/cjs/StyleSheet/dom/createCSSStyleSheet.cjs +30 -15
- package/dist/cjs/StyleSheet/dom/createOrderedCSSStyleSheet.cjs +62 -37
- package/dist/cjs/StyleSheet/dom/index.cjs +56 -34
- package/dist/cjs/StyleSheet/index.cjs +25 -18
- package/dist/cjs/StyleSheet/preprocess.cjs +94 -81
- package/dist/cjs/StyleSheet/validate.cjs +67 -44
- package/dist/cjs/TextAncestorContext.cjs +13 -11
- package/dist/cjs/colorProps.cjs +22 -20
- package/dist/cjs/index.cjs +47 -45
- package/dist/cjs/modules/AccessibilityUtil/__tests__/propsToAccessibilityComponent-test.cjs +19 -12
- package/dist/cjs/modules/AccessibilityUtil/__tests__/propsToAriaRole-test.cjs +17 -11
- package/dist/cjs/modules/AccessibilityUtil/index.cjs +15 -13
- package/dist/cjs/modules/AccessibilityUtil/isDisabled.cjs +12 -10
- package/dist/cjs/modules/AccessibilityUtil/propsToAccessibilityComponent.cjs +45 -38
- package/dist/cjs/modules/AccessibilityUtil/propsToAriaRole.cjs +34 -30
- package/dist/cjs/modules/AssetRegistry/index.cjs +12 -10
- package/dist/cjs/modules/ImageLoader/index.cjs +117 -71
- package/dist/cjs/modules/InteractionManager.cjs +155 -99
- package/dist/cjs/modules/Platform/__tests__/index-test.cjs +21 -13
- package/dist/cjs/modules/Platform/index.cjs +12 -10
- package/dist/cjs/modules/TextInputState/index.cjs +28 -13
- package/dist/cjs/modules/UIManager/__tests__/index-test.cjs +77 -56
- package/dist/cjs/modules/UIManager/index.cjs +47 -42
- package/dist/cjs/modules/canUseDOM.cjs +13 -11
- package/dist/cjs/modules/createDOMProps/__tests__/index-test.cjs +75 -54
- package/dist/cjs/modules/createDOMProps/index.cjs +353 -145
- package/dist/cjs/modules/createEventHandle/__tests__/index-test.cjs +238 -160
- package/dist/cjs/modules/createEventHandle/index.cjs +46 -25
- package/dist/cjs/modules/dismissKeyboard/index.cjs +12 -10
- package/dist/cjs/modules/forwardedProps/index.cjs +137 -135
- package/dist/cjs/modules/getBoundingClientRect/index.cjs +18 -11
- package/dist/cjs/modules/invariant.cjs +21 -15
- package/dist/cjs/modules/isSelectionValid/index.cjs +18 -17
- package/dist/cjs/modules/isWebColor/index.cjs +12 -10
- package/dist/cjs/modules/mergeRefs/__tests__/index-test.cjs +21 -15
- package/dist/cjs/modules/mergeRefs/index.cjs +24 -21
- package/dist/cjs/modules/modality/__tests__/index-test.cjs +44 -17
- package/dist/cjs/modules/modality/index.cjs +148 -71
- package/dist/cjs/modules/multiplyStyleLengthValue/__tests__/index-test.cjs +18 -10
- package/dist/cjs/modules/multiplyStyleLengthValue/index.cjs +26 -20
- package/dist/cjs/modules/normalizeColor/index.cjs +22 -17
- package/dist/cjs/modules/pick/index.cjs +19 -11
- package/dist/cjs/modules/processColor/__tests__/index-test.cjs +43 -24
- package/dist/cjs/modules/processColor/index.cjs +32 -24
- package/dist/cjs/modules/requestIdleCallback/index.cjs +28 -26
- package/dist/cjs/modules/setValueForStyles/dangerousStyleValue.cjs +38 -18
- package/dist/cjs/modules/setValueForStyles/index.cjs +25 -14
- package/dist/cjs/modules/unitlessNumbers/index.cjs +68 -64
- package/dist/cjs/modules/useElementLayout/index.cjs +25 -20
- package/dist/cjs/modules/useEvent/__tests__/index-test.cjs +255 -173
- package/dist/cjs/modules/useEvent/index.cjs +40 -28
- package/dist/cjs/modules/useHover/__tests__/index-test.cjs +233 -124
- package/dist/cjs/modules/useHover/index.cjs +105 -62
- package/dist/cjs/modules/useLayoutEffect/index.cjs +26 -24
- package/dist/cjs/modules/useLocale/index.cjs +33 -30
- package/dist/cjs/modules/useLocale/isLocaleRTL.cjs +63 -58
- package/dist/cjs/modules/useMergeRefs/__tests__/index-test.cjs +54 -31
- package/dist/cjs/modules/useMergeRefs/index.cjs +26 -24
- package/dist/cjs/modules/usePlatformMethods/index.cjs +21 -14
- package/dist/cjs/modules/useStable/__tests__/index-test.cjs +60 -30
- package/dist/cjs/modules/useStable/index.cjs +29 -24
- package/dist/cjs/styleTypes.cjs +7 -5
- package/dist/cjs/types.cjs +7 -5
- package/dist/esm/StyleSheet/__tests__/compiler-createReactDOMStyle-test.mjs +53 -30
- package/dist/esm/StyleSheet/__tests__/compiler-createReactDOMStyle-test.mjs.map +1 -1
- package/dist/esm/StyleSheet/__tests__/compiler-test.mjs +129 -117
- package/dist/esm/StyleSheet/__tests__/compiler-test.mjs.map +1 -1
- package/dist/esm/StyleSheet/__tests__/dom-createOrderedCSSStyleSheet-test.mjs +60 -23
- package/dist/esm/StyleSheet/__tests__/dom-createOrderedCSSStyleSheet-test.mjs.map +1 -1
- package/dist/esm/StyleSheet/__tests__/index-test.mjs +118 -88
- package/dist/esm/StyleSheet/__tests__/index-test.mjs.map +1 -1
- package/dist/esm/StyleSheet/__tests__/preprocess-test.mjs +26 -13
- package/dist/esm/StyleSheet/__tests__/preprocess-test.mjs.map +1 -1
- package/dist/esm/StyleSheet/__tests__/validate-test.mjs +30 -15
- package/dist/esm/StyleSheet/__tests__/validate-test.mjs.map +1 -1
- package/dist/esm/StyleSheet/compiler/createReactDOMStyle.mjs +127 -56
- package/dist/esm/StyleSheet/compiler/createReactDOMStyle.mjs.map +1 -1
- package/dist/esm/StyleSheet/compiler/hyphenateStyleName.mjs +6 -4
- package/dist/esm/StyleSheet/compiler/hyphenateStyleName.mjs.map +1 -1
- package/dist/esm/StyleSheet/compiler/index.mjs +218 -159
- package/dist/esm/StyleSheet/compiler/index.mjs.map +1 -1
- package/dist/esm/StyleSheet/compiler/normalizeColor.mjs +13 -6
- package/dist/esm/StyleSheet/compiler/normalizeColor.mjs.map +1 -1
- package/dist/esm/StyleSheet/compiler/normalizeValueWithProperty.mjs +16 -11
- package/dist/esm/StyleSheet/compiler/normalizeValueWithProperty.mjs.map +1 -1
- package/dist/esm/StyleSheet/compiler/resolveShadowValue.mjs +22 -20
- package/dist/esm/StyleSheet/compiler/resolveShadowValue.mjs.map +1 -1
- package/dist/esm/StyleSheet/dom/createCSSStyleSheet.mjs +18 -5
- package/dist/esm/StyleSheet/dom/createCSSStyleSheet.mjs.map +1 -1
- package/dist/esm/StyleSheet/dom/createOrderedCSSStyleSheet.mjs +50 -27
- package/dist/esm/StyleSheet/dom/createOrderedCSSStyleSheet.mjs.map +1 -1
- package/dist/esm/StyleSheet/dom/index.mjs +41 -21
- package/dist/esm/StyleSheet/dom/index.mjs.map +1 -1
- package/dist/esm/StyleSheet/index.mjs +13 -8
- package/dist/esm/StyleSheet/index.mjs.map +1 -1
- package/dist/esm/StyleSheet/preprocess.mjs +80 -69
- package/dist/esm/StyleSheet/preprocess.mjs.map +1 -1
- package/dist/esm/StyleSheet/validate.mjs +55 -34
- package/dist/esm/StyleSheet/validate.mjs.map +1 -1
- package/dist/esm/TextAncestorContext.mjs +1 -1
- package/dist/esm/TextAncestorContext.mjs.map +1 -1
- package/dist/esm/colorProps.mjs +10 -10
- package/dist/esm/modules/AccessibilityUtil/__tests__/propsToAccessibilityComponent-test.mjs +10 -5
- package/dist/esm/modules/AccessibilityUtil/__tests__/propsToAccessibilityComponent-test.mjs.map +1 -1
- package/dist/esm/modules/AccessibilityUtil/__tests__/propsToAriaRole-test.mjs +8 -4
- package/dist/esm/modules/AccessibilityUtil/__tests__/propsToAriaRole-test.mjs.map +1 -1
- package/dist/esm/modules/AccessibilityUtil/propsToAccessibilityComponent.mjs +33 -28
- package/dist/esm/modules/AccessibilityUtil/propsToAccessibilityComponent.mjs.map +1 -1
- package/dist/esm/modules/AccessibilityUtil/propsToAriaRole.mjs +22 -20
- package/dist/esm/modules/AccessibilityUtil/propsToAriaRole.mjs.map +1 -1
- package/dist/esm/modules/ImageLoader/index.mjs +105 -61
- package/dist/esm/modules/ImageLoader/index.mjs.map +1 -1
- package/dist/esm/modules/InteractionManager.mjs +141 -87
- package/dist/esm/modules/InteractionManager.mjs.map +1 -1
- package/dist/esm/modules/Platform/__tests__/index-test.mjs +12 -6
- package/dist/esm/modules/Platform/__tests__/index-test.mjs.map +1 -1
- package/dist/esm/modules/TextInputState/index.mjs +16 -3
- package/dist/esm/modules/TextInputState/index.mjs.map +1 -1
- package/dist/esm/modules/UIManager/__tests__/index-test.mjs +68 -49
- package/dist/esm/modules/UIManager/__tests__/index-test.mjs.map +1 -1
- package/dist/esm/modules/UIManager/index.mjs +35 -32
- package/dist/esm/modules/UIManager/index.mjs.map +1 -1
- package/dist/esm/modules/canUseDOM.mjs +1 -1
- package/dist/esm/modules/canUseDOM.mjs.map +1 -1
- package/dist/esm/modules/createDOMProps/__tests__/index-test.mjs +66 -47
- package/dist/esm/modules/createDOMProps/__tests__/index-test.mjs.map +1 -1
- package/dist/esm/modules/createDOMProps/index.mjs +339 -133
- package/dist/esm/modules/createDOMProps/index.mjs.map +1 -1
- package/dist/esm/modules/createEventHandle/__tests__/index-test.mjs +222 -146
- package/dist/esm/modules/createEventHandle/__tests__/index-test.mjs.map +1 -1
- package/dist/esm/modules/createEventHandle/index.mjs +34 -15
- package/dist/esm/modules/createEventHandle/index.mjs.map +1 -1
- package/dist/esm/modules/forwardedProps/index.mjs +125 -125
- package/dist/esm/modules/forwardedProps/index.mjs.map +1 -1
- package/dist/esm/modules/getBoundingClientRect/index.mjs +6 -1
- package/dist/esm/modules/getBoundingClientRect/index.mjs.map +1 -1
- package/dist/esm/modules/invariant.mjs +9 -5
- package/dist/esm/modules/invariant.mjs.map +1 -1
- package/dist/esm/modules/isSelectionValid/index.mjs +6 -7
- package/dist/esm/modules/isSelectionValid/index.mjs.map +1 -1
- package/dist/esm/modules/mergeRefs/__tests__/index-test.mjs +8 -4
- package/dist/esm/modules/mergeRefs/__tests__/index-test.mjs.map +1 -1
- package/dist/esm/modules/mergeRefs/index.mjs +12 -11
- package/dist/esm/modules/mergeRefs/index.mjs.map +1 -1
- package/dist/esm/modules/modality/__tests__/index-test.mjs +42 -15
- package/dist/esm/modules/modality/__tests__/index-test.mjs.map +1 -1
- package/dist/esm/modules/modality/index.mjs +134 -59
- package/dist/esm/modules/modality/index.mjs.map +1 -1
- package/dist/esm/modules/multiplyStyleLengthValue/__tests__/index-test.mjs +9 -3
- package/dist/esm/modules/multiplyStyleLengthValue/__tests__/index-test.mjs.map +1 -1
- package/dist/esm/modules/multiplyStyleLengthValue/index.mjs +14 -10
- package/dist/esm/modules/multiplyStyleLengthValue/index.mjs.map +1 -1
- package/dist/esm/modules/normalizeColor/index.mjs +8 -5
- package/dist/esm/modules/normalizeColor/index.mjs.map +1 -1
- package/dist/esm/modules/pick/index.mjs +7 -1
- package/dist/esm/modules/pick/index.mjs.map +1 -1
- package/dist/esm/modules/processColor/__tests__/index-test.mjs +34 -17
- package/dist/esm/modules/processColor/__tests__/index-test.mjs.map +1 -1
- package/dist/esm/modules/processColor/index.mjs +8 -2
- package/dist/esm/modules/processColor/index.mjs.map +1 -1
- package/dist/esm/modules/requestIdleCallback/index.mjs +16 -16
- package/dist/esm/modules/requestIdleCallback/index.mjs.map +1 -1
- package/dist/esm/modules/setValueForStyles/dangerousStyleValue.mjs +24 -6
- package/dist/esm/modules/setValueForStyles/dangerousStyleValue.mjs.map +1 -1
- package/dist/esm/modules/setValueForStyles/index.mjs +13 -4
- package/dist/esm/modules/setValueForStyles/index.mjs.map +1 -1
- package/dist/esm/modules/unitlessNumbers/index.mjs +56 -54
- package/dist/esm/modules/unitlessNumbers/index.mjs.map +1 -1
- package/dist/esm/modules/useElementLayout/index.mjs +11 -8
- package/dist/esm/modules/useElementLayout/index.mjs.map +1 -1
- package/dist/esm/modules/useEvent/__tests__/index-test.mjs +240 -160
- package/dist/esm/modules/useEvent/__tests__/index-test.mjs.map +1 -1
- package/dist/esm/modules/useEvent/index.mjs +25 -15
- package/dist/esm/modules/useEvent/index.mjs.map +1 -1
- package/dist/esm/modules/useHover/__tests__/index-test.mjs +217 -110
- package/dist/esm/modules/useHover/__tests__/index-test.mjs.map +1 -1
- package/dist/esm/modules/useHover/index.mjs +90 -49
- package/dist/esm/modules/useHover/index.mjs.map +1 -1
- package/dist/esm/modules/useLocale/index.mjs +6 -5
- package/dist/esm/modules/useLocale/index.mjs.map +1 -1
- package/dist/esm/modules/useLocale/isLocaleRTL.mjs +51 -48
- package/dist/esm/modules/useLocale/isLocaleRTL.mjs.map +1 -1
- package/dist/esm/modules/useMergeRefs/__tests__/index-test.mjs +40 -19
- package/dist/esm/modules/useMergeRefs/__tests__/index-test.mjs.map +1 -1
- package/dist/esm/modules/usePlatformMethods/index.mjs +7 -2
- package/dist/esm/modules/usePlatformMethods/index.mjs.map +1 -1
- package/dist/esm/modules/useStable/__tests__/index-test.mjs +47 -19
- package/dist/esm/modules/useStable/__tests__/index-test.mjs.map +1 -1
- package/dist/esm/modules/useStable/index.mjs +5 -2
- package/dist/esm/modules/useStable/index.mjs.map +1 -1
- package/package.json +1 -1
- package/src/StyleSheet/compiler/normalizeColor.tsx +1 -1
|
@@ -1,44 +1,65 @@
|
|
|
1
1
|
const invalidShortforms = {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
2
|
+
background: true,
|
|
3
|
+
borderBottom: true,
|
|
4
|
+
borderLeft: true,
|
|
5
|
+
borderRight: true,
|
|
6
|
+
borderTop: true,
|
|
7
|
+
font: true,
|
|
8
|
+
grid: true,
|
|
9
|
+
outline: true,
|
|
10
|
+
textDecoration: true
|
|
11
|
+
};
|
|
12
|
+
const invalidMultiValueShortforms = {
|
|
13
|
+
flex: true,
|
|
14
|
+
margin: true,
|
|
15
|
+
padding: true,
|
|
16
|
+
borderColor: true,
|
|
17
|
+
borderRadius: true,
|
|
18
|
+
borderStyle: true,
|
|
19
|
+
borderWidth: true,
|
|
20
|
+
marginHorizontal: true,
|
|
21
|
+
marginVertical: true,
|
|
22
|
+
paddingHorizontal: true,
|
|
23
|
+
paddingVertical: true,
|
|
24
|
+
overflow: true,
|
|
25
|
+
overscrollBehavior: true,
|
|
26
|
+
backgroundPosition: true
|
|
27
|
+
};
|
|
28
28
|
function error(message) {
|
|
29
29
|
console.error(message);
|
|
30
30
|
}
|
|
31
31
|
function validate(obj) {
|
|
32
32
|
for (const k in obj) {
|
|
33
|
-
const prop = k.trim()
|
|
34
|
-
|
|
35
|
-
let isInvalid =
|
|
36
|
-
if (value
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
33
|
+
const prop = k.trim();
|
|
34
|
+
const value = obj[prop];
|
|
35
|
+
let isInvalid = false;
|
|
36
|
+
if (value === null) {
|
|
37
|
+
continue;
|
|
38
|
+
}
|
|
39
|
+
if (typeof value === "string" && value.indexOf("!important") > -1) {
|
|
40
|
+
error(`Invalid style declaration "${prop}:${value}". Values cannot include "!important"`);
|
|
41
|
+
isInvalid = true;
|
|
42
|
+
} else {
|
|
43
|
+
let suggestion = "";
|
|
44
|
+
if (prop === "animation" || prop === "animationName") {
|
|
45
|
+
suggestion = 'Did you mean "animationKeyframes"?';
|
|
46
|
+
isInvalid = true;
|
|
47
|
+
} else if (prop === "direction") {
|
|
48
|
+
suggestion = 'Did you mean "writingDirection"?';
|
|
49
|
+
isInvalid = true;
|
|
50
|
+
} else if (prop === "verticalAlign") {
|
|
51
|
+
suggestion = 'Did you mean "textAlignVertical"?';
|
|
52
|
+
isInvalid = true;
|
|
53
|
+
} else if (invalidShortforms[prop]) {
|
|
54
|
+
suggestion = "Please use long-form properties.";
|
|
55
|
+
isInvalid = true;
|
|
56
|
+
} else if (invalidMultiValueShortforms[prop]) {}
|
|
57
|
+
if (suggestion !== "") {
|
|
58
|
+
error(`Invalid style property of "${prop}". ${suggestion}`);
|
|
40
59
|
}
|
|
41
|
-
|
|
60
|
+
}
|
|
61
|
+
if (isInvalid) {
|
|
62
|
+
delete obj[k];
|
|
42
63
|
}
|
|
43
64
|
}
|
|
44
65
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["invalidShortforms","background","borderBottom","borderLeft","borderRight","borderTop","font","grid","outline","textDecoration","invalidMultiValueShortforms","flex","margin","padding","borderColor","borderRadius","borderStyle","borderWidth","marginHorizontal","marginVertical","paddingHorizontal","paddingVertical","overflow","overscrollBehavior","backgroundPosition","error","message","console","validate","obj","k","prop","trim","value","isInvalid","indexOf","suggestion"],"sources":["../../../src/StyleSheet/validate.tsx"],"sourcesContent":[null],"mappings":"AASA,MAAMA,iBAAA,GAAoB;
|
|
1
|
+
{"version":3,"names":["invalidShortforms","background","borderBottom","borderLeft","borderRight","borderTop","font","grid","outline","textDecoration","invalidMultiValueShortforms","flex","margin","padding","borderColor","borderRadius","borderStyle","borderWidth","marginHorizontal","marginVertical","paddingHorizontal","paddingVertical","overflow","overscrollBehavior","backgroundPosition","error","message","console","validate","obj","k","prop","trim","value","isInvalid","indexOf","suggestion"],"sources":["../../../src/StyleSheet/validate.tsx"],"sourcesContent":[null],"mappings":"AASA,MAAMA,iBAAA,GAAoB;EACxBC,UAAA,EAAY;EACZC,YAAA,EAAc;EACdC,UAAA,EAAY;EACZC,WAAA,EAAa;EACbC,SAAA,EAAW;EACXC,IAAA,EAAM;EACNC,IAAA,EAAM;EACNC,OAAA,EAAS;EACTC,cAAA,EAAgB;AAClB;AAEA,MAAMC,2BAAA,GAA8B;EAClCC,IAAA,EAAM;EACNC,MAAA,EAAQ;EACRC,OAAA,EAAS;EACTC,WAAA,EAAa;EACbC,YAAA,EAAc;EACdC,WAAA,EAAa;EACbC,WAAA,EAAa;EACbC,gBAAA,EAAkB;EAClBC,cAAA,EAAgB;EAChBC,iBAAA,EAAmB;EACnBC,eAAA,EAAiB;EACjBC,QAAA,EAAU;EACVC,kBAAA,EAAoB;EACpBC,kBAAA,EAAoB;AACtB;AAEA,SAASC,MAAMC,OAAA,EAAS;EACtBC,OAAA,CAAQF,KAAA,CAAMC,OAAO;AACvB;AAEO,SAASE,SAASC,GAAA,EAAa;EACpC,WAAWC,CAAA,IAAKD,GAAA,EAAK;IACnB,MAAME,IAAA,GAAOD,CAAA,CAAEE,IAAA,CAAK;IACpB,MAAMC,KAAA,GAAQJ,GAAA,CAAIE,IAAI;IACtB,IAAIG,SAAA,GAAY;IAEhB,IAAID,KAAA,KAAU,MAAM;MAClB;IACF;IAEA,IAAI,OAAOA,KAAA,KAAU,YAAYA,KAAA,CAAME,OAAA,CAAQ,YAAY,IAAI,IAAI;MACjEV,KAAA,CACE,8BAA8BM,IAAI,IAAIE,KAAK,uCAC7C;MACAC,SAAA,GAAY;IACd,OAAO;MACL,IAAIE,UAAA,GAAa;MACjB,IAAIL,IAAA,KAAS,eAAeA,IAAA,KAAS,iBAAiB;QACpDK,UAAA,GAAa;QAGbF,SAAA,GAAY;MACd,WAAWH,IAAA,KAAS,aAAa;QAC/BK,UAAA,GAAa;QACbF,SAAA,GAAY;MACd,WAAWH,IAAA,KAAS,iBAAiB;QACnCK,UAAA,GAAa;QACbF,SAAA,GAAY;MACd,WAAWlC,iBAAA,CAAkB+B,IAAI,GAAG;QAClCK,UAAA,GAAa;QACbF,SAAA,GAAY;MACd,WAAWxB,2BAAA,CAA4BqB,IAAI,GAAG,CAM9C;MACA,IAAIK,UAAA,KAAe,IAAI;QACrBX,KAAA,CAAM,8BAA8BM,IAAI,MAAMK,UAAU,EAAE;MAC5D;IACF;IAEA,IAAIF,SAAA,EAAW;MACb,OAAOL,GAAA,CAAIC,CAAC;IACd;EACF;AACF","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createContext","TextAncestorContext"],"sources":["../../src/TextAncestorContext.tsx"],"sourcesContent":[null],"mappings":"AAUA,SAASA,aAAA,QAAqB;AAEvB,MAAMC,mBAAA,GAAsBD,aAAA,CAAc,
|
|
1
|
+
{"version":3,"names":["createContext","TextAncestorContext"],"sources":["../../src/TextAncestorContext.tsx"],"sourcesContent":[null],"mappings":"AAUA,SAASA,aAAA,QAAqB;AAEvB,MAAMC,mBAAA,GAAsBD,aAAA,CAAc,KAAK","ignoreList":[]}
|
package/dist/esm/colorProps.mjs
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
const colorProps = {
|
|
2
|
-
backgroundColor:
|
|
3
|
-
borderColor:
|
|
4
|
-
borderTopColor:
|
|
5
|
-
borderRightColor:
|
|
6
|
-
borderBottomColor:
|
|
7
|
-
borderLeftColor:
|
|
8
|
-
color:
|
|
9
|
-
shadowColor:
|
|
10
|
-
textDecorationColor:
|
|
11
|
-
textShadowColor:
|
|
2
|
+
backgroundColor: true,
|
|
3
|
+
borderColor: true,
|
|
4
|
+
borderTopColor: true,
|
|
5
|
+
borderRightColor: true,
|
|
6
|
+
borderBottomColor: true,
|
|
7
|
+
borderLeftColor: true,
|
|
8
|
+
color: true,
|
|
9
|
+
shadowColor: true,
|
|
10
|
+
textDecorationColor: true,
|
|
11
|
+
textShadowColor: true
|
|
12
12
|
};
|
|
13
13
|
export { colorProps };
|
|
14
14
|
//# sourceMappingURL=colorProps.mjs.map
|
|
@@ -2,25 +2,30 @@ import propsToAccessibilityComponent from "../propsToAccessibilityComponent.mjs"
|
|
|
2
2
|
describe("modules/AccessibilityUtil/propsToAccessibilityComponent", () => {
|
|
3
3
|
test('when missing accessibility props"', () => {
|
|
4
4
|
expect(propsToAccessibilityComponent({})).toBeUndefined();
|
|
5
|
-
})
|
|
5
|
+
});
|
|
6
|
+
test('when "accessibilityRole" is "button"', () => {
|
|
6
7
|
expect(propsToAccessibilityComponent({
|
|
7
8
|
accessibilityRole: "button"
|
|
8
9
|
})).toBeUndefined();
|
|
9
|
-
})
|
|
10
|
+
});
|
|
11
|
+
test('when "accessibilityRole" is "heading"', () => {
|
|
10
12
|
expect(propsToAccessibilityComponent({
|
|
11
13
|
accessibilityRole: "heading"
|
|
12
14
|
})).toEqual("h1");
|
|
13
|
-
})
|
|
15
|
+
});
|
|
16
|
+
test('when "accessibilityRole" is "heading" and "aria-level" is set', () => {
|
|
14
17
|
expect(propsToAccessibilityComponent({
|
|
15
18
|
accessibilityRole: "heading",
|
|
16
19
|
"aria-level": 3
|
|
17
20
|
})).toEqual("h3");
|
|
18
|
-
})
|
|
21
|
+
});
|
|
22
|
+
test('when "accessibilityRole" is "heading" and "accessibilityLevel" is set', () => {
|
|
19
23
|
expect(propsToAccessibilityComponent({
|
|
20
24
|
accessibilityRole: "heading",
|
|
21
25
|
accessibilityLevel: 3
|
|
22
26
|
})).toEqual("h3");
|
|
23
|
-
})
|
|
27
|
+
});
|
|
28
|
+
test('when "accessibilityRole" is "label"', () => {
|
|
24
29
|
expect(propsToAccessibilityComponent({
|
|
25
30
|
accessibilityRole: "label"
|
|
26
31
|
})).toEqual("label");
|
package/dist/esm/modules/AccessibilityUtil/__tests__/propsToAccessibilityComponent-test.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["propsToAccessibilityComponent","describe","test","expect","toBeUndefined","accessibilityRole","toEqual","accessibilityLevel"],"sources":["../../../../../src/modules/AccessibilityUtil/__tests__/propsToAccessibilityComponent-test.tsx"],"sourcesContent":[null],"mappings":"AAOA,OAAOA,6BAAA,MAAmC;AAE1CC,QAAA,CAAS,2DAA2D,MAAM;EACxEC,IAAA,CAAK,qCAAqC,MAAM;IAC9CC,MAAA,CAAOH,6BAAA,CAA8B,CAAC,CAAC,CAAC,EAAEI,aAAA,CAAc;EAC1D,CAAC,
|
|
1
|
+
{"version":3,"names":["propsToAccessibilityComponent","describe","test","expect","toBeUndefined","accessibilityRole","toEqual","accessibilityLevel"],"sources":["../../../../../src/modules/AccessibilityUtil/__tests__/propsToAccessibilityComponent-test.tsx"],"sourcesContent":[null],"mappings":"AAOA,OAAOA,6BAAA,MAAmC;AAE1CC,QAAA,CAAS,2DAA2D,MAAM;EACxEC,IAAA,CAAK,qCAAqC,MAAM;IAC9CC,MAAA,CAAOH,6BAAA,CAA8B,CAAC,CAAC,CAAC,EAAEI,aAAA,CAAc;EAC1D,CAAC;EAEDF,IAAA,CAAK,wCAAwC,MAAM;IACjDC,MAAA,CAAOH,6BAAA,CAA8B;MAAEK,iBAAA,EAAmB;IAAS,CAAC,CAAC,EAAED,aAAA,CAAc;EACvF,CAAC;EAEDF,IAAA,CAAK,yCAAyC,MAAM;IAClDC,MAAA,CAAOH,6BAAA,CAA8B;MAAEK,iBAAA,EAAmB;IAAU,CAAC,CAAC,EAAEC,OAAA,CAAQ,IAAI;EACtF,CAAC;EAEDJ,IAAA,CAAK,iEAAiE,MAAM;IAC1EC,MAAA,CACEH,6BAAA,CAA8B;MAC5BK,iBAAA,EAAmB;MACnB,cAAc;IAChB,CAAC,CACH,EAAEC,OAAA,CAAQ,IAAI;EAChB,CAAC;EAEDJ,IAAA,CAAK,yEAAyE,MAAM;IAClFC,MAAA,CACEH,6BAAA,CAA8B;MAC5BK,iBAAA,EAAmB;MACnBE,kBAAA,EAAoB;IACtB,CAAC,CACH,EAAED,OAAA,CAAQ,IAAI;EAChB,CAAC;EAEDJ,IAAA,CAAK,uCAAuC,MAAM;IAChDC,MAAA,CAAOH,6BAAA,CAA8B;MAAEK,iBAAA,EAAmB;IAAQ,CAAC,CAAC,EAAEC,OAAA,CAAQ,OAAO;EACvF,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -2,16 +2,20 @@ import propsToAriaRole from "../propsToAriaRole.mjs";
|
|
|
2
2
|
describe("modules/AccessibilityUtil/propsToAriaRole", () => {
|
|
3
3
|
test("when missing accessibility props", () => {
|
|
4
4
|
expect(propsToAriaRole({})).toBeUndefined();
|
|
5
|
-
})
|
|
5
|
+
});
|
|
6
|
+
test('when "accessibilityRole" is defined', () => {
|
|
6
7
|
expect(propsToAriaRole({
|
|
7
8
|
accessibilityRole: "banner"
|
|
8
9
|
})).toEqual("banner");
|
|
9
|
-
})
|
|
10
|
+
});
|
|
11
|
+
test('when "accessibilityRole" is a native-only value', () => {
|
|
10
12
|
expect(propsToAriaRole({
|
|
11
13
|
accessibilityRole: "none"
|
|
12
|
-
})).toEqual("presentation")
|
|
14
|
+
})).toEqual("presentation");
|
|
15
|
+
expect(propsToAriaRole({
|
|
13
16
|
accessibilityRole: "imagebutton"
|
|
14
|
-
})).toEqual(void 0)
|
|
17
|
+
})).toEqual(void 0);
|
|
18
|
+
expect(propsToAriaRole({
|
|
15
19
|
accessibilityRole: "label"
|
|
16
20
|
})).toEqual(void 0);
|
|
17
21
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["propsToAriaRole","describe","test","expect","toBeUndefined","accessibilityRole","toEqual"],"sources":["../../../../../src/modules/AccessibilityUtil/__tests__/propsToAriaRole-test.tsx"],"sourcesContent":[null],"mappings":"AAOA,OAAOA,eAAA,MAAqB;AAE5BC,QAAA,CAAS,6CAA6C,MAAM;EAC1DC,IAAA,CAAK,oCAAoC,MAAM;IAC7CC,MAAA,CAAOH,eAAA,CAAgB,CAAC,CAAC,CAAC,EAAEI,aAAA,CAAc;EAC5C,CAAC,
|
|
1
|
+
{"version":3,"names":["propsToAriaRole","describe","test","expect","toBeUndefined","accessibilityRole","toEqual"],"sources":["../../../../../src/modules/AccessibilityUtil/__tests__/propsToAriaRole-test.tsx"],"sourcesContent":[null],"mappings":"AAOA,OAAOA,eAAA,MAAqB;AAE5BC,QAAA,CAAS,6CAA6C,MAAM;EAC1DC,IAAA,CAAK,oCAAoC,MAAM;IAC7CC,MAAA,CAAOH,eAAA,CAAgB,CAAC,CAAC,CAAC,EAAEI,aAAA,CAAc;EAC5C,CAAC;EAEDF,IAAA,CAAK,uCAAuC,MAAM;IAChDC,MAAA,CAAOH,eAAA,CAAgB;MAAEK,iBAAA,EAAmB;IAAS,CAAC,CAAC,EAAEC,OAAA,CAAQ,QAAQ;EAC3E,CAAC;EAEDJ,IAAA,CAAK,mDAAmD,MAAM;IAC5DC,MAAA,CAAOH,eAAA,CAAgB;MAAEK,iBAAA,EAAmB;IAAO,CAAC,CAAC,EAAEC,OAAA,CAAQ,cAAc;IAC7EH,MAAA,CAAOH,eAAA,CAAgB;MAAEK,iBAAA,EAAmB;IAAc,CAAC,CAAC,EAAEC,OAAA,CAAQ,MAAS;IAE/EH,MAAA,CAAOH,eAAA,CAAgB;MAAEK,iBAAA,EAAmB;IAAQ,CAAC,CAAC,EAAEC,OAAA,CAAQ,MAAS;EAC3E,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -1,34 +1,39 @@
|
|
|
1
1
|
import { propsToAriaRole } from "./propsToAriaRole.mjs";
|
|
2
2
|
const roleComponents = {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
3
|
+
article: "article",
|
|
4
|
+
banner: "header",
|
|
5
|
+
blockquote: "blockquote",
|
|
6
|
+
code: "code",
|
|
7
|
+
complementary: "aside",
|
|
8
|
+
contentinfo: "footer",
|
|
9
|
+
deletion: "del",
|
|
10
|
+
emphasis: "em",
|
|
11
|
+
figure: "figure",
|
|
12
|
+
insertion: "ins",
|
|
13
|
+
form: "form",
|
|
14
|
+
list: "ul",
|
|
15
|
+
listitem: "li",
|
|
16
|
+
main: "main",
|
|
17
|
+
navigation: "nav",
|
|
18
|
+
region: "section",
|
|
19
|
+
strong: "strong"
|
|
20
|
+
};
|
|
21
|
+
const emptyObject = {};
|
|
22
|
+
const propsToAccessibilityComponent = (props = emptyObject) => {
|
|
23
|
+
if (props.accessibilityRole === "label") {
|
|
24
|
+
return "label";
|
|
25
|
+
}
|
|
26
|
+
const role = propsToAriaRole(props);
|
|
27
|
+
if (role) {
|
|
28
|
+
if (role === "heading") {
|
|
29
|
+
const level = props.accessibilityLevel || props["aria-level"];
|
|
30
|
+
if (level != null) {
|
|
31
|
+
return `h${level}`;
|
|
29
32
|
}
|
|
30
|
-
return
|
|
33
|
+
return "h1";
|
|
31
34
|
}
|
|
32
|
-
|
|
35
|
+
return roleComponents[role];
|
|
36
|
+
}
|
|
37
|
+
};
|
|
33
38
|
export { propsToAccessibilityComponent };
|
|
34
39
|
//# sourceMappingURL=propsToAccessibilityComponent.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["propsToAriaRole","roleComponents","article","banner","blockquote","code","complementary","contentinfo","deletion","emphasis","figure","insertion","form","list","listitem","main","navigation","region","strong","emptyObject","propsToAccessibilityComponent","props","accessibilityRole","role","level","accessibilityLevel"],"sources":["../../../../src/modules/AccessibilityUtil/propsToAccessibilityComponent.tsx"],"sourcesContent":[null],"mappings":"AAUA,SAASA,eAAA,QAAuB;AAEhC,MAAMC,cAAA,GAAiB;
|
|
1
|
+
{"version":3,"names":["propsToAriaRole","roleComponents","article","banner","blockquote","code","complementary","contentinfo","deletion","emphasis","figure","insertion","form","list","listitem","main","navigation","region","strong","emptyObject","propsToAccessibilityComponent","props","accessibilityRole","role","level","accessibilityLevel"],"sources":["../../../../src/modules/AccessibilityUtil/propsToAccessibilityComponent.tsx"],"sourcesContent":[null],"mappings":"AAUA,SAASA,eAAA,QAAuB;AAEhC,MAAMC,cAAA,GAAiB;EACrBC,OAAA,EAAS;EACTC,MAAA,EAAQ;EACRC,UAAA,EAAY;EACZC,IAAA,EAAM;EACNC,aAAA,EAAe;EACfC,WAAA,EAAa;EACbC,QAAA,EAAU;EACVC,QAAA,EAAU;EACVC,MAAA,EAAQ;EACRC,SAAA,EAAW;EACXC,IAAA,EAAM;EACNC,IAAA,EAAM;EACNC,QAAA,EAAU;EACVC,IAAA,EAAM;EACNC,UAAA,EAAY;EACZC,MAAA,EAAQ;EACRC,MAAA,EAAQ;AACV;AAEA,MAAMC,WAAA,GAAc,CAAC;AAEd,MAAMC,6BAAA,GAAgCA,CAC3CC,KAAA,GAAgBF,WAAA,KACE;EAElB,IAAIE,KAAA,CAAMC,iBAAA,KAAsB,SAAS;IACvC,OAAO;EACT;EAEA,MAAMC,IAAA,GAAOvB,eAAA,CAAgBqB,KAAK;EAClC,IAAIE,IAAA,EAAM;IACR,IAAIA,IAAA,KAAS,WAAW;MACtB,MAAMC,KAAA,GAAQH,KAAA,CAAMI,kBAAA,IAAsBJ,KAAA,CAAM,YAAY;MAC5D,IAAIG,KAAA,IAAS,MAAM;QACjB,OAAO,IAAIA,KAAK;MAClB;MACA,OAAO;IACT;IACA,OAAOvB,cAAA,CAAesB,IAAI;EAC5B;AACF","ignoreList":[]}
|
|
@@ -1,24 +1,26 @@
|
|
|
1
1
|
const accessibilityRoleToWebRole = {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
2
|
+
adjustable: "slider",
|
|
3
|
+
button: "button",
|
|
4
|
+
header: "heading",
|
|
5
|
+
image: "img",
|
|
6
|
+
imagebutton: null,
|
|
7
|
+
keyboardkey: null,
|
|
8
|
+
label: null,
|
|
9
|
+
link: "link",
|
|
10
|
+
none: "presentation",
|
|
11
|
+
search: "search",
|
|
12
|
+
summary: "region",
|
|
13
|
+
text: null
|
|
14
|
+
};
|
|
15
|
+
const propsToAriaRole = ({
|
|
16
|
+
accessibilityRole
|
|
17
|
+
}) => {
|
|
18
|
+
if (accessibilityRole) {
|
|
19
|
+
const inferredRole = accessibilityRoleToWebRole[accessibilityRole];
|
|
20
|
+
if (inferredRole !== null) {
|
|
21
|
+
return inferredRole || accessibilityRole;
|
|
21
22
|
}
|
|
22
|
-
}
|
|
23
|
+
}
|
|
24
|
+
};
|
|
23
25
|
export { propsToAriaRole };
|
|
24
26
|
//# sourceMappingURL=propsToAriaRole.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["accessibilityRoleToWebRole","adjustable","button","header","image","imagebutton","keyboardkey","label","link","none","search","summary","text","propsToAriaRole","accessibilityRole","inferredRole"],"sources":["../../../../src/modules/AccessibilityUtil/propsToAriaRole.tsx"],"sourcesContent":[null],"mappings":"AASA,MAAMA,0BAAA,GAA6B;
|
|
1
|
+
{"version":3,"names":["accessibilityRoleToWebRole","adjustable","button","header","image","imagebutton","keyboardkey","label","link","none","search","summary","text","propsToAriaRole","accessibilityRole","inferredRole"],"sources":["../../../../src/modules/AccessibilityUtil/propsToAriaRole.tsx"],"sourcesContent":[null],"mappings":"AASA,MAAMA,0BAAA,GAA6B;EACjCC,UAAA,EAAY;EACZC,MAAA,EAAQ;EACRC,MAAA,EAAQ;EACRC,KAAA,EAAO;EACPC,WAAA,EAAa;EACbC,WAAA,EAAa;EACbC,KAAA,EAAO;EACPC,IAAA,EAAM;EACNC,IAAA,EAAM;EACNC,MAAA,EAAQ;EACRC,OAAA,EAAS;EACTC,IAAA,EAAM;AACR;AAEO,MAAMC,eAAA,GAAkBA,CAAC;EAC9BC;AACF,MAEqB;EACnB,IAAIA,iBAAA,EAAmB;IACrB,MAAMC,YAAA,GAAef,0BAAA,CAA2Bc,iBAAiB;IACjE,IAAIC,YAAA,KAAiB,MAAM;MAEzB,OAAOA,YAAA,IAAgBD,iBAAA;IACzB;EACF;AACF","ignoreList":[]}
|
|
@@ -4,84 +4,128 @@ class ImageUriCache {
|
|
|
4
4
|
static _entries = {};
|
|
5
5
|
static has(uri) {
|
|
6
6
|
const entries = ImageUriCache._entries;
|
|
7
|
-
|
|
7
|
+
const isDataUri = dataUriPattern.test(uri);
|
|
8
|
+
return isDataUri || Boolean(entries[uri]);
|
|
8
9
|
}
|
|
9
10
|
static add(uri) {
|
|
10
|
-
const entries = ImageUriCache._entries
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
lastUsedTimestamp
|
|
14
|
-
refCount
|
|
15
|
-
}
|
|
11
|
+
const entries = ImageUriCache._entries;
|
|
12
|
+
const lastUsedTimestamp = Date.now();
|
|
13
|
+
if (entries[uri]) {
|
|
14
|
+
entries[uri].lastUsedTimestamp = lastUsedTimestamp;
|
|
15
|
+
entries[uri].refCount += 1;
|
|
16
|
+
} else {
|
|
17
|
+
entries[uri] = {
|
|
18
|
+
lastUsedTimestamp,
|
|
19
|
+
refCount: 1
|
|
20
|
+
};
|
|
21
|
+
}
|
|
16
22
|
}
|
|
17
23
|
static remove(uri) {
|
|
18
24
|
const entries = ImageUriCache._entries;
|
|
19
|
-
|
|
25
|
+
if (entries[uri]) {
|
|
26
|
+
entries[uri].refCount -= 1;
|
|
27
|
+
}
|
|
28
|
+
ImageUriCache._cleanUpIfNeeded();
|
|
20
29
|
}
|
|
21
30
|
static _cleanUpIfNeeded() {
|
|
22
|
-
const entries = ImageUriCache._entries
|
|
23
|
-
|
|
31
|
+
const entries = ImageUriCache._entries;
|
|
32
|
+
const imageUris = Object.keys(entries);
|
|
24
33
|
if (imageUris.length + 1 > ImageUriCache._maximumEntries) {
|
|
25
|
-
let leastRecentlyUsedKey
|
|
34
|
+
let leastRecentlyUsedKey;
|
|
35
|
+
let leastRecentlyUsedEntry;
|
|
26
36
|
imageUris.forEach(uri => {
|
|
27
37
|
const entry = entries[uri];
|
|
28
|
-
(!leastRecentlyUsedEntry || entry.lastUsedTimestamp < leastRecentlyUsedEntry.lastUsedTimestamp) && entry.refCount === 0
|
|
29
|
-
|
|
38
|
+
if ((!leastRecentlyUsedEntry || entry.lastUsedTimestamp < leastRecentlyUsedEntry.lastUsedTimestamp) && entry.refCount === 0) {
|
|
39
|
+
leastRecentlyUsedKey = uri;
|
|
40
|
+
leastRecentlyUsedEntry = entry;
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
if (leastRecentlyUsedKey) {
|
|
44
|
+
delete entries[leastRecentlyUsedKey];
|
|
45
|
+
}
|
|
30
46
|
}
|
|
31
47
|
}
|
|
32
48
|
}
|
|
33
49
|
let id = 0;
|
|
34
|
-
const requests = {}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
50
|
+
const requests = {};
|
|
51
|
+
const ImageLoader = {
|
|
52
|
+
abort(requestId) {
|
|
53
|
+
let image = requests[`${requestId}`];
|
|
54
|
+
if (image) {
|
|
55
|
+
image.onerror = null;
|
|
56
|
+
image.onload = null;
|
|
57
|
+
image = null;
|
|
58
|
+
delete requests[`${requestId}`];
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
getSize(uri, success, failure) {
|
|
62
|
+
let complete = false;
|
|
63
|
+
const interval = setInterval(callback, 16);
|
|
64
|
+
const requestId = ImageLoader.load(uri, callback, errorCallback);
|
|
65
|
+
function callback() {
|
|
66
|
+
const image = requests[`${requestId}`];
|
|
67
|
+
if (image) {
|
|
68
|
+
const {
|
|
69
|
+
naturalHeight,
|
|
70
|
+
naturalWidth
|
|
71
|
+
} = image;
|
|
72
|
+
if (naturalHeight && naturalWidth) {
|
|
73
|
+
success(naturalWidth, naturalHeight);
|
|
74
|
+
complete = true;
|
|
52
75
|
}
|
|
53
|
-
complete && (ImageLoader.abort(requestId), clearInterval(interval));
|
|
54
76
|
}
|
|
55
|
-
|
|
56
|
-
|
|
77
|
+
if (complete) {
|
|
78
|
+
ImageLoader.abort(requestId);
|
|
79
|
+
clearInterval(interval);
|
|
57
80
|
}
|
|
58
|
-
},
|
|
59
|
-
has(uri) {
|
|
60
|
-
return ImageUriCache.has(uri);
|
|
61
|
-
},
|
|
62
|
-
load(uri, onLoad, onError) {
|
|
63
|
-
id += 1;
|
|
64
|
-
const image = new window.Image();
|
|
65
|
-
return image.onerror = onError, image.onload = e => {
|
|
66
|
-
const onDecode = () => onLoad({
|
|
67
|
-
nativeEvent: e
|
|
68
|
-
});
|
|
69
|
-
typeof image.decode == "function" ? image.decode().then(onDecode, onDecode) : setTimeout(onDecode, 0);
|
|
70
|
-
}, image.src = uri, requests[`${id}`] = image, id;
|
|
71
|
-
},
|
|
72
|
-
prefetch(uri) {
|
|
73
|
-
return new Promise((resolve, reject) => {
|
|
74
|
-
ImageLoader.load(uri, () => {
|
|
75
|
-
ImageUriCache.add(uri), ImageUriCache.remove(uri), resolve();
|
|
76
|
-
}, reject);
|
|
77
|
-
});
|
|
78
|
-
},
|
|
79
|
-
queryCache(uris) {
|
|
80
|
-
const result = {};
|
|
81
|
-
return uris.forEach(u => {
|
|
82
|
-
ImageUriCache.has(u) && (result[u] = "disk/memory");
|
|
83
|
-
}), Promise.resolve(result);
|
|
84
81
|
}
|
|
85
|
-
|
|
82
|
+
function errorCallback() {
|
|
83
|
+
if (typeof failure === "function") {
|
|
84
|
+
failure();
|
|
85
|
+
}
|
|
86
|
+
ImageLoader.abort(requestId);
|
|
87
|
+
clearInterval(interval);
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
has(uri) {
|
|
91
|
+
return ImageUriCache.has(uri);
|
|
92
|
+
},
|
|
93
|
+
load(uri, onLoad, onError) {
|
|
94
|
+
id += 1;
|
|
95
|
+
const image = new window.Image();
|
|
96
|
+
image.onerror = onError;
|
|
97
|
+
image.onload = e => {
|
|
98
|
+
const onDecode = () => onLoad({
|
|
99
|
+
nativeEvent: e
|
|
100
|
+
});
|
|
101
|
+
if (typeof image.decode === "function") {
|
|
102
|
+
image.decode().then(onDecode, onDecode);
|
|
103
|
+
} else {
|
|
104
|
+
setTimeout(onDecode, 0);
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
image.src = uri;
|
|
108
|
+
requests[`${id}`] = image;
|
|
109
|
+
return id;
|
|
110
|
+
},
|
|
111
|
+
prefetch(uri) {
|
|
112
|
+
return new Promise((resolve, reject) => {
|
|
113
|
+
ImageLoader.load(uri, () => {
|
|
114
|
+
ImageUriCache.add(uri);
|
|
115
|
+
ImageUriCache.remove(uri);
|
|
116
|
+
resolve();
|
|
117
|
+
}, reject);
|
|
118
|
+
});
|
|
119
|
+
},
|
|
120
|
+
queryCache(uris) {
|
|
121
|
+
const result = {};
|
|
122
|
+
uris.forEach(u => {
|
|
123
|
+
if (ImageUriCache.has(u)) {
|
|
124
|
+
result[u] = "disk/memory";
|
|
125
|
+
}
|
|
126
|
+
});
|
|
127
|
+
return Promise.resolve(result);
|
|
128
|
+
}
|
|
129
|
+
};
|
|
86
130
|
export { ImageLoader, ImageUriCache };
|
|
87
131
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["dataUriPattern","ImageUriCache","_maximumEntries","_entries","has","uri","entries","test","add","lastUsedTimestamp","Date","now","refCount","remove","_cleanUpIfNeeded","imageUris","Object","keys","length","leastRecentlyUsedKey","leastRecentlyUsedEntry","forEach","entry","id","requests","ImageLoader","abort","requestId","image","onerror","onload","getSize","success","failure","complete","interval","setInterval","callback","load","errorCallback","naturalHeight","naturalWidth","clearInterval","onLoad","onError","window","Image","e","onDecode","nativeEvent","decode","then","setTimeout","src","prefetch","Promise","resolve","reject","queryCache","uris","result","u"],"sources":["../../../../src/modules/ImageLoader/index.tsx"],"sourcesContent":[null],"mappings":"AASA,MAAMA,cAAA,GAAiB;AAEhB,MAAMC,aAAA,CAAc;EACzB,OAAOC,eAAA,GAAkB;EACzB,OAAOC,QAAA,GAAW,CAAC;EAEnB,OAAOC,IAAIC,GAAA,EAAsB;IAC/B,MAAMC,OAAA,GAAUL,aAAA,CAAcE,QAAA;
|
|
1
|
+
{"version":3,"names":["dataUriPattern","ImageUriCache","_maximumEntries","_entries","has","uri","entries","isDataUri","test","Boolean","add","lastUsedTimestamp","Date","now","refCount","remove","_cleanUpIfNeeded","imageUris","Object","keys","length","leastRecentlyUsedKey","leastRecentlyUsedEntry","forEach","entry","id","requests","ImageLoader","abort","requestId","image","onerror","onload","getSize","success","failure","complete","interval","setInterval","callback","load","errorCallback","naturalHeight","naturalWidth","clearInterval","onLoad","onError","window","Image","e","onDecode","nativeEvent","decode","then","setTimeout","src","prefetch","Promise","resolve","reject","queryCache","uris","result","u"],"sources":["../../../../src/modules/ImageLoader/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|