@kbach/react 0.6.37 → 0.6.39

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.
@@ -1877,6 +1877,18 @@ var effectResolvers = {
1877
1877
  if (!isArbitrary && isNaN(parseFloat(value))) return null;
1878
1878
  const ms = isArbitrary ? value : `${value}ms`;
1879
1879
  return { transitionDelay: ms };
1880
+ },
1881
+ ease: ({ value, isArbitrary }) => {
1882
+ if (!getEffectiveIsWeb()) return null;
1883
+ if (isArbitrary) return { transitionTimingFunction: value };
1884
+ const presets = {
1885
+ linear: "linear",
1886
+ in: "cubic-bezier(0.4, 0, 1, 1)",
1887
+ out: "cubic-bezier(0, 0, 0.2, 1)",
1888
+ "in-out": "cubic-bezier(0.4, 0, 0.2, 1)"
1889
+ };
1890
+ const v = presets[value];
1891
+ return v !== void 0 ? { transitionTimingFunction: v } : null;
1880
1892
  }
1881
1893
  };
1882
1894
 
@@ -3568,11 +3580,21 @@ function registerWebElement(rnComponent, htmlTag) {
3568
3580
  _userMap.set(rnComponent, htmlTag);
3569
3581
  _cache.delete(rnComponent);
3570
3582
  }
3583
+ var _forwardRefOrMemoType = /* @__PURE__ */ new Set([
3584
+ /* @__PURE__ */ Symbol.for("react.forward_ref"),
3585
+ /* @__PURE__ */ Symbol.for("react.memo")
3586
+ ]);
3587
+ function looksLikeRealRNPrimitive(type) {
3588
+ const t = type.$$typeof;
3589
+ if (t !== void 0) return _forwardRefOrMemoType.has(t);
3590
+ return !!type.prototype?.isReactComponent;
3591
+ }
3571
3592
  function getWebTag(type, props) {
3572
3593
  if (typeof type === "string") return null;
3573
3594
  if (type === null || typeof type !== "function" && typeof type !== "object") return null;
3574
3595
  const obj = type;
3575
3596
  if (_userMap.has(obj)) return _userMap.get(obj);
3597
+ if (!looksLikeRealRNPrimitive(obj)) return null;
3576
3598
  const name = obj.displayName ?? obj.name;
3577
3599
  if (!name) {
3578
3600
  _cache.set(obj, null);
@@ -26,7 +26,7 @@ import {
26
26
  transformToWebProps,
27
27
  useConditionalGlobalDarkMode,
28
28
  useConditionalWidth
29
- } from "./chunk-ZTDE7V7I.mjs";
29
+ } from "./chunk-NE4LAJXK.mjs";
30
30
 
31
31
  // src/jsx-runtime.tsx
32
32
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
@@ -1966,6 +1966,18 @@ var effectResolvers = {
1966
1966
  if (!isArbitrary && isNaN(parseFloat(value))) return null;
1967
1967
  const ms = isArbitrary ? value : `${value}ms`;
1968
1968
  return { transitionDelay: ms };
1969
+ },
1970
+ ease: ({ value, isArbitrary }) => {
1971
+ if (!getEffectiveIsWeb()) return null;
1972
+ if (isArbitrary) return { transitionTimingFunction: value };
1973
+ const presets = {
1974
+ linear: "linear",
1975
+ in: "cubic-bezier(0.4, 0, 1, 1)",
1976
+ out: "cubic-bezier(0, 0, 0.2, 1)",
1977
+ "in-out": "cubic-bezier(0.4, 0, 0.2, 1)"
1978
+ };
1979
+ const v = presets[value];
1980
+ return v !== void 0 ? { transitionTimingFunction: v } : null;
1969
1981
  }
1970
1982
  };
1971
1983
 
package/dist/index.js CHANGED
@@ -526,11 +526,21 @@ function registerWebElement(rnComponent, htmlTag) {
526
526
  _userMap.set(rnComponent, htmlTag);
527
527
  _cache.delete(rnComponent);
528
528
  }
529
+ var _forwardRefOrMemoType = /* @__PURE__ */ new Set([
530
+ /* @__PURE__ */ Symbol.for("react.forward_ref"),
531
+ /* @__PURE__ */ Symbol.for("react.memo")
532
+ ]);
533
+ function looksLikeRealRNPrimitive(type) {
534
+ const t = type.$$typeof;
535
+ if (t !== void 0) return _forwardRefOrMemoType.has(t);
536
+ return !!type.prototype?.isReactComponent;
537
+ }
529
538
  function getWebTag(type, props) {
530
539
  if (typeof type === "string") return null;
531
540
  if (type === null || typeof type !== "function" && typeof type !== "object") return null;
532
541
  const obj = type;
533
542
  if (_userMap.has(obj)) return _userMap.get(obj);
543
+ if (!looksLikeRealRNPrimitive(obj)) return null;
534
544
  const name = obj.displayName ?? obj.name;
535
545
  if (!name) {
536
546
  _cache.set(obj, null);
package/dist/index.mjs CHANGED
@@ -45,7 +45,7 @@ import {
45
45
  useGlobalDarkMode,
46
46
  useGlobalWidth,
47
47
  useSyncExternalStore
48
- } from "./chunk-ZTDE7V7I.mjs";
48
+ } from "./chunk-NE4LAJXK.mjs";
49
49
 
50
50
  // src/context.tsx
51
51
  import { createContext, useContext } from "react";
@@ -319,11 +319,21 @@ var _rnToHtml = {
319
319
  };
320
320
  var _userMap = /* @__PURE__ */ new Map();
321
321
  var _cache = /* @__PURE__ */ new WeakMap();
322
+ var _forwardRefOrMemoType = /* @__PURE__ */ new Set([
323
+ /* @__PURE__ */ Symbol.for("react.forward_ref"),
324
+ /* @__PURE__ */ Symbol.for("react.memo")
325
+ ]);
326
+ function looksLikeRealRNPrimitive(type) {
327
+ const t = type.$$typeof;
328
+ if (t !== void 0) return _forwardRefOrMemoType.has(t);
329
+ return !!type.prototype?.isReactComponent;
330
+ }
322
331
  function getWebTag(type, props) {
323
332
  if (typeof type === "string") return null;
324
333
  if (type === null || typeof type !== "function" && typeof type !== "object") return null;
325
334
  const obj = type;
326
335
  if (_userMap.has(obj)) return _userMap.get(obj);
336
+ if (!looksLikeRealRNPrimitive(obj)) return null;
327
337
  const name = obj.displayName ?? obj.name;
328
338
  if (!name) {
329
339
  _cache.set(obj, null);
@@ -3,8 +3,8 @@ import {
3
3
  Fragment,
4
4
  jsx,
5
5
  jsxs
6
- } from "./chunk-OUKVG4DI.mjs";
7
- import "./chunk-ZTDE7V7I.mjs";
6
+ } from "./chunk-Z4ZOGRZG.mjs";
7
+ import "./chunk-NE4LAJXK.mjs";
8
8
 
9
9
  // src/jsx-dev-runtime.tsx
10
10
  function jsxDEV(type, props, key, isStaticChildren, source, self) {
@@ -325,11 +325,21 @@ function registerWebElement(rnComponent, htmlTag) {
325
325
  _userMap.set(rnComponent, htmlTag);
326
326
  _cache.delete(rnComponent);
327
327
  }
328
+ var _forwardRefOrMemoType = /* @__PURE__ */ new Set([
329
+ /* @__PURE__ */ Symbol.for("react.forward_ref"),
330
+ /* @__PURE__ */ Symbol.for("react.memo")
331
+ ]);
332
+ function looksLikeRealRNPrimitive(type) {
333
+ const t = type.$$typeof;
334
+ if (t !== void 0) return _forwardRefOrMemoType.has(t);
335
+ return !!type.prototype?.isReactComponent;
336
+ }
328
337
  function getWebTag(type, props) {
329
338
  if (typeof type === "string") return null;
330
339
  if (type === null || typeof type !== "function" && typeof type !== "object") return null;
331
340
  const obj = type;
332
341
  if (_userMap.has(obj)) return _userMap.get(obj);
342
+ if (!looksLikeRealRNPrimitive(obj)) return null;
333
343
  const name = obj.displayName ?? obj.name;
334
344
  if (!name) {
335
345
  _cache.set(obj, null);
@@ -4,10 +4,10 @@ import {
4
4
  _invalidateDefaultFontCache,
5
5
  jsx,
6
6
  jsxs
7
- } from "./chunk-OUKVG4DI.mjs";
7
+ } from "./chunk-Z4ZOGRZG.mjs";
8
8
  import {
9
9
  registerWebElement
10
- } from "./chunk-ZTDE7V7I.mjs";
10
+ } from "./chunk-NE4LAJXK.mjs";
11
11
  export {
12
12
  Fragment,
13
13
  _invalidateDefaultFontCache,
@@ -2319,6 +2319,18 @@ var effectResolvers = {
2319
2319
  if (!isArbitrary && isNaN(parseFloat(value))) return null;
2320
2320
  const ms = isArbitrary ? value : `${value}ms`;
2321
2321
  return { transitionDelay: ms };
2322
+ },
2323
+ ease: ({ value, isArbitrary }) => {
2324
+ if (!getEffectiveIsWeb()) return null;
2325
+ if (isArbitrary) return { transitionTimingFunction: value };
2326
+ const presets = {
2327
+ linear: "linear",
2328
+ in: "cubic-bezier(0.4, 0, 1, 1)",
2329
+ out: "cubic-bezier(0, 0, 0.2, 1)",
2330
+ "in-out": "cubic-bezier(0.4, 0, 0.2, 1)"
2331
+ };
2332
+ const v = presets[value];
2333
+ return v !== void 0 ? { transitionTimingFunction: v } : null;
2322
2334
  }
2323
2335
  };
2324
2336
 
@@ -2285,6 +2285,18 @@ var effectResolvers = {
2285
2285
  if (!isArbitrary && isNaN(parseFloat(value))) return null;
2286
2286
  const ms = isArbitrary ? value : `${value}ms`;
2287
2287
  return { transitionDelay: ms };
2288
+ },
2289
+ ease: ({ value, isArbitrary }) => {
2290
+ if (!getEffectiveIsWeb()) return null;
2291
+ if (isArbitrary) return { transitionTimingFunction: value };
2292
+ const presets = {
2293
+ linear: "linear",
2294
+ in: "cubic-bezier(0.4, 0, 1, 1)",
2295
+ out: "cubic-bezier(0, 0, 0.2, 1)",
2296
+ "in-out": "cubic-bezier(0.4, 0, 0.2, 1)"
2297
+ };
2298
+ const v = presets[value];
2299
+ return v !== void 0 ? { transitionTimingFunction: v } : null;
2288
2300
  }
2289
2301
  };
2290
2302
 
package/kbach-react.md CHANGED
@@ -619,6 +619,7 @@ animate-spin / animate-ping / animate-pulse / animate-bounce / animate-none
619
619
  transition / transition-all/none/colors/opacity/shadow/transform
620
620
  duration-75/100/150/200/300/500/700/1000
621
621
  delay-75/100/150/200/300/500/700/1000
622
+ ease-linear/in/out/in-out ease-[cubic-bezier(...)]
622
623
  ```
623
624
 
624
625
  ### Cursor
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kbach/react",
3
- "version": "0.6.37",
3
+ "version": "0.6.39",
4
4
  "description": "React / React Native components and hooks for the Kbach framework",
5
5
  "repository": {
6
6
  "type": "git",