@tamagui/logo 1.13.2 → 1.13.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/dist/cjs/TamaguiLogo.js +1 -208
- package/dist/cjs/TamaguiLogo.js.map +2 -2
- package/dist/cjs/index.js +1 -20
- package/dist/cjs/index.js.map +2 -2
- package/dist/cjs/tints.js +1 -73
- package/dist/cjs/tints.js.map +2 -2
- package/dist/cjs/useTint.js +1 -82
- package/dist/cjs/useTint.js.map +2 -2
- package/dist/esm/TamaguiLogo.js +1 -182
- package/dist/esm/TamaguiLogo.js.map +2 -2
- package/dist/esm/TamaguiLogo.mjs +1 -182
- package/dist/esm/TamaguiLogo.mjs.map +2 -2
- package/dist/esm/index.js +1 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index.mjs +1 -3
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/tints.js +1 -45
- package/dist/esm/tints.js.map +2 -2
- package/dist/esm/tints.mjs +1 -45
- package/dist/esm/tints.mjs.map +2 -2
- package/dist/esm/useTint.js +1 -54
- package/dist/esm/useTint.js.map +2 -2
- package/dist/esm/useTint.mjs +1 -54
- package/dist/esm/useTint.mjs.map +2 -2
- package/dist/jsx/TamaguiLogo.js +1 -138
- package/dist/jsx/TamaguiLogo.js.map +2 -2
- package/dist/jsx/TamaguiLogo.mjs +1 -138
- package/dist/jsx/TamaguiLogo.mjs.map +2 -2
- package/dist/jsx/index.js +1 -3
- package/dist/jsx/index.js.map +1 -1
- package/dist/jsx/index.mjs +1 -3
- package/dist/jsx/index.mjs.map +1 -1
- package/dist/jsx/tints.js +1 -45
- package/dist/jsx/tints.js.map +2 -2
- package/dist/jsx/tints.mjs +1 -45
- package/dist/jsx/tints.mjs.map +2 -2
- package/dist/jsx/useTint.js +1 -53
- package/dist/jsx/useTint.js.map +2 -2
- package/dist/jsx/useTint.mjs +1 -53
- package/dist/jsx/useTint.mjs.map +2 -2
- package/package.json +3 -3
package/dist/jsx/tints.js
CHANGED
|
@@ -1,46 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
const families = Object.freeze({
|
|
3
|
-
tamagui: ["orange", "yellow", "green", "blue", "purple", "pink", "red"],
|
|
4
|
-
xmas: ["red", "green", "red", "green", "red", "green", "red"]
|
|
5
|
-
});
|
|
6
|
-
let fam = "tamagui";
|
|
7
|
-
function getTints() {
|
|
8
|
-
return {
|
|
9
|
-
name: fam || "tamagui",
|
|
10
|
-
tints: families[fam] || families.tamagui,
|
|
11
|
-
families
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
function useTints() {
|
|
15
|
-
const [val, setVal] = useState(getTints());
|
|
16
|
-
useEffect(() => {
|
|
17
|
-
return onTintFamilyChange(() => {
|
|
18
|
-
setVal(getTints());
|
|
19
|
-
});
|
|
20
|
-
}, []);
|
|
21
|
-
return val;
|
|
22
|
-
}
|
|
23
|
-
const setTintFamily = (next) => {
|
|
24
|
-
if (!families[next])
|
|
25
|
-
throw `impossible`;
|
|
26
|
-
fam = next;
|
|
27
|
-
listeners.forEach((l) => l(next));
|
|
28
|
-
};
|
|
29
|
-
const setNextTintFamily = () => {
|
|
30
|
-
setTintFamily(fam === "tamagui" ? "xmas" : "tamagui");
|
|
31
|
-
};
|
|
32
|
-
const listeners = /* @__PURE__ */ new Set();
|
|
33
|
-
const onTintFamilyChange = (cb) => {
|
|
34
|
-
listeners.add(cb);
|
|
35
|
-
return () => {
|
|
36
|
-
listeners.delete(cb);
|
|
37
|
-
};
|
|
38
|
-
};
|
|
39
|
-
export {
|
|
40
|
-
getTints,
|
|
41
|
-
onTintFamilyChange,
|
|
42
|
-
setNextTintFamily,
|
|
43
|
-
setTintFamily,
|
|
44
|
-
useTints
|
|
45
|
-
};
|
|
1
|
+
import{useEffect as m,useState as o}from"react";const t=Object.freeze({tamagui:["orange","yellow","green","blue","purple","pink","red"],xmas:["red","green","red","green","red","green","red"]});let a="tamagui";function r(){return{name:a||"tamagui",tints:t[a]||t.tamagui,families:t}}function p(){const[e,n]=o(r());return m(()=>l(()=>{n(r())}),[]),e}const s=e=>{if(!t[e])throw"impossible";a=e,i.forEach(n=>n(e))},y=()=>{s(a==="tamagui"?"xmas":"tamagui")},i=new Set,l=e=>(i.add(e),()=>{i.delete(e)});export{r as getTints,l as onTintFamilyChange,y as setNextTintFamily,s as setTintFamily,p as useTints};
|
|
46
2
|
//# sourceMappingURL=tints.js.map
|
package/dist/jsx/tints.js.map
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/tints.tsx"],
|
|
4
4
|
"sourcesContent": ["import { useEffect, useState } from 'react'\nimport { ThemeName } from 'tamagui'\n\nconst families = Object.freeze({\n tamagui: ['orange', 'yellow', 'green', 'blue', 'purple', 'pink', 'red'],\n xmas: ['red', 'green', 'red', 'green', 'red', 'green', 'red'],\n}) as {\n [key in 'tamagui' | 'xmas']: ThemeName[]\n}\n\ntype TintFamily = keyof typeof families\n\nlet fam: TintFamily = 'tamagui'\n\nexport function getTints() {\n return {\n name: fam || 'tamagui',\n tints: families[fam] || families.tamagui,\n families,\n }\n}\n\nexport function useTints() {\n const [val, setVal] = useState(getTints())\n\n useEffect(() => {\n return onTintFamilyChange(() => {\n setVal(getTints())\n })\n }, [])\n\n return val\n}\n\nexport const setTintFamily = (next: TintFamily) => {\n if (!families[next]) throw `impossible`\n fam = next\n listeners.forEach((l) => l(next))\n}\n\nexport const setNextTintFamily = () => {\n setTintFamily(fam === 'tamagui' ? 'xmas' : 'tamagui')\n}\n\ntype ChangeHandler = (next: TintFamily) => void\n\nconst listeners = new Set<ChangeHandler>()\n\nexport const onTintFamilyChange = (cb: ChangeHandler) => {\n listeners.add(cb)\n return () => {\n listeners.delete(cb)\n }\n}\n"],
|
|
5
|
-
"mappings": "AAAA,
|
|
6
|
-
"names": []
|
|
5
|
+
"mappings": "AAAA,OAAS,aAAAA,EAAW,YAAAC,MAAgB,QAGpC,MAAMC,EAAW,OAAO,OAAO,CAC7B,QAAS,CAAC,SAAU,SAAU,QAAS,OAAQ,SAAU,OAAQ,KAAK,EACtE,KAAM,CAAC,MAAO,QAAS,MAAO,QAAS,MAAO,QAAS,KAAK,CAC9D,CAAC,EAMD,IAAIC,EAAkB,UAEf,SAASC,GAAW,CACzB,MAAO,CACL,KAAMD,GAAO,UACb,MAAOD,EAASC,CAAG,GAAKD,EAAS,QACjC,SAAAA,CACF,CACF,CAEO,SAASG,GAAW,CACzB,KAAM,CAACC,EAAKC,CAAM,EAAIN,EAASG,EAAS,CAAC,EAEzC,OAAAJ,EAAU,IACDQ,EAAmB,IAAM,CAC9BD,EAAOH,EAAS,CAAC,CACnB,CAAC,EACA,CAAC,CAAC,EAEEE,CACT,CAEO,MAAMG,EAAiBC,GAAqB,CACjD,GAAI,CAACR,EAASQ,CAAI,EAAG,KAAM,aAC3BP,EAAMO,EACNC,EAAU,QAASC,GAAMA,EAAEF,CAAI,CAAC,CAClC,EAEaG,EAAoB,IAAM,CACrCJ,EAAcN,IAAQ,UAAY,OAAS,SAAS,CACtD,EAIMQ,EAAY,IAAI,IAETH,EAAsBM,IACjCH,EAAU,IAAIG,CAAE,EACT,IAAM,CACXH,EAAU,OAAOG,CAAE,CACrB",
|
|
6
|
+
"names": ["useEffect", "useState", "families", "fam", "getTints", "useTints", "val", "setVal", "onTintFamilyChange", "setTintFamily", "next", "listeners", "l", "setNextTintFamily", "cb"]
|
|
7
7
|
}
|
package/dist/jsx/tints.mjs
CHANGED
|
@@ -1,46 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
const families = Object.freeze({
|
|
3
|
-
tamagui: ["orange", "yellow", "green", "blue", "purple", "pink", "red"],
|
|
4
|
-
xmas: ["red", "green", "red", "green", "red", "green", "red"]
|
|
5
|
-
});
|
|
6
|
-
let fam = "tamagui";
|
|
7
|
-
function getTints() {
|
|
8
|
-
return {
|
|
9
|
-
name: fam || "tamagui",
|
|
10
|
-
tints: families[fam] || families.tamagui,
|
|
11
|
-
families
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
function useTints() {
|
|
15
|
-
const [val, setVal] = useState(getTints());
|
|
16
|
-
useEffect(() => {
|
|
17
|
-
return onTintFamilyChange(() => {
|
|
18
|
-
setVal(getTints());
|
|
19
|
-
});
|
|
20
|
-
}, []);
|
|
21
|
-
return val;
|
|
22
|
-
}
|
|
23
|
-
const setTintFamily = (next) => {
|
|
24
|
-
if (!families[next])
|
|
25
|
-
throw `impossible`;
|
|
26
|
-
fam = next;
|
|
27
|
-
listeners.forEach((l) => l(next));
|
|
28
|
-
};
|
|
29
|
-
const setNextTintFamily = () => {
|
|
30
|
-
setTintFamily(fam === "tamagui" ? "xmas" : "tamagui");
|
|
31
|
-
};
|
|
32
|
-
const listeners = /* @__PURE__ */ new Set();
|
|
33
|
-
const onTintFamilyChange = (cb) => {
|
|
34
|
-
listeners.add(cb);
|
|
35
|
-
return () => {
|
|
36
|
-
listeners.delete(cb);
|
|
37
|
-
};
|
|
38
|
-
};
|
|
39
|
-
export {
|
|
40
|
-
getTints,
|
|
41
|
-
onTintFamilyChange,
|
|
42
|
-
setNextTintFamily,
|
|
43
|
-
setTintFamily,
|
|
44
|
-
useTints
|
|
45
|
-
};
|
|
1
|
+
import{useEffect as m,useState as o}from"react";const t=Object.freeze({tamagui:["orange","yellow","green","blue","purple","pink","red"],xmas:["red","green","red","green","red","green","red"]});let a="tamagui";function r(){return{name:a||"tamagui",tints:t[a]||t.tamagui,families:t}}function p(){const[e,n]=o(r());return m(()=>l(()=>{n(r())}),[]),e}const s=e=>{if(!t[e])throw"impossible";a=e,i.forEach(n=>n(e))},y=()=>{s(a==="tamagui"?"xmas":"tamagui")},i=new Set,l=e=>(i.add(e),()=>{i.delete(e)});export{r as getTints,l as onTintFamilyChange,y as setNextTintFamily,s as setTintFamily,p as useTints};
|
|
46
2
|
//# sourceMappingURL=tints.mjs.map
|
package/dist/jsx/tints.mjs.map
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/tints.tsx"],
|
|
4
4
|
"sourcesContent": ["import { useEffect, useState } from 'react'\nimport { ThemeName } from 'tamagui'\n\nconst families = Object.freeze({\n tamagui: ['orange', 'yellow', 'green', 'blue', 'purple', 'pink', 'red'],\n xmas: ['red', 'green', 'red', 'green', 'red', 'green', 'red'],\n}) as {\n [key in 'tamagui' | 'xmas']: ThemeName[]\n}\n\ntype TintFamily = keyof typeof families\n\nlet fam: TintFamily = 'tamagui'\n\nexport function getTints() {\n return {\n name: fam || 'tamagui',\n tints: families[fam] || families.tamagui,\n families,\n }\n}\n\nexport function useTints() {\n const [val, setVal] = useState(getTints())\n\n useEffect(() => {\n return onTintFamilyChange(() => {\n setVal(getTints())\n })\n }, [])\n\n return val\n}\n\nexport const setTintFamily = (next: TintFamily) => {\n if (!families[next]) throw `impossible`\n fam = next\n listeners.forEach((l) => l(next))\n}\n\nexport const setNextTintFamily = () => {\n setTintFamily(fam === 'tamagui' ? 'xmas' : 'tamagui')\n}\n\ntype ChangeHandler = (next: TintFamily) => void\n\nconst listeners = new Set<ChangeHandler>()\n\nexport const onTintFamilyChange = (cb: ChangeHandler) => {\n listeners.add(cb)\n return () => {\n listeners.delete(cb)\n }\n}\n"],
|
|
5
|
-
"mappings": "AAAA,
|
|
6
|
-
"names": []
|
|
5
|
+
"mappings": "AAAA,OAAS,aAAAA,EAAW,YAAAC,MAAgB,QAGpC,MAAMC,EAAW,OAAO,OAAO,CAC7B,QAAS,CAAC,SAAU,SAAU,QAAS,OAAQ,SAAU,OAAQ,KAAK,EACtE,KAAM,CAAC,MAAO,QAAS,MAAO,QAAS,MAAO,QAAS,KAAK,CAC9D,CAAC,EAMD,IAAIC,EAAkB,UAEf,SAASC,GAAW,CACzB,MAAO,CACL,KAAMD,GAAO,UACb,MAAOD,EAASC,CAAG,GAAKD,EAAS,QACjC,SAAAA,CACF,CACF,CAEO,SAASG,GAAW,CACzB,KAAM,CAACC,EAAKC,CAAM,EAAIN,EAASG,EAAS,CAAC,EAEzC,OAAAJ,EAAU,IACDQ,EAAmB,IAAM,CAC9BD,EAAOH,EAAS,CAAC,CACnB,CAAC,EACA,CAAC,CAAC,EAEEE,CACT,CAEO,MAAMG,EAAiBC,GAAqB,CACjD,GAAI,CAACR,EAASQ,CAAI,EAAG,KAAM,aAC3BP,EAAMO,EACNC,EAAU,QAASC,GAAMA,EAAEF,CAAI,CAAC,CAClC,EAEaG,EAAoB,IAAM,CACrCJ,EAAcN,IAAQ,UAAY,OAAS,SAAS,CACtD,EAIMQ,EAAY,IAAI,IAETH,EAAsBM,IACjCH,EAAU,IAAIG,CAAE,EACT,IAAM,CACXH,EAAU,OAAOG,CAAE,CACrB",
|
|
6
|
+
"names": ["useEffect", "useState", "families", "fam", "getTints", "useTints", "val", "setVal", "onTintFamilyChange", "setTintFamily", "next", "listeners", "l", "setNextTintFamily", "cb"]
|
|
7
7
|
}
|
package/dist/jsx/useTint.js
CHANGED
|
@@ -1,54 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { Theme } from "tamagui";
|
|
3
|
-
import { getTints, setNextTintFamily, useTints } from "./tints";
|
|
4
|
-
const initialTint = 3;
|
|
5
|
-
let current = initialTint;
|
|
6
|
-
const listeners = /* @__PURE__ */ new Set();
|
|
7
|
-
const onTintChange = (listener) => {
|
|
8
|
-
listeners.add(listener);
|
|
9
|
-
return () => {
|
|
10
|
-
listeners.delete(listener);
|
|
11
|
-
};
|
|
12
|
-
};
|
|
13
|
-
const numTints = getTints().tints.length;
|
|
14
|
-
const setTintIndex = (next) => {
|
|
15
|
-
const val = next % numTints;
|
|
16
|
-
if (val === current)
|
|
17
|
-
return;
|
|
18
|
-
current = val;
|
|
19
|
-
startTransition(() => {
|
|
20
|
-
listeners.forEach((x) => x(val));
|
|
21
|
-
});
|
|
22
|
-
};
|
|
23
|
-
const useTint = () => {
|
|
24
|
-
const index = useSyncExternalStore(
|
|
25
|
-
onTintChange,
|
|
26
|
-
() => current,
|
|
27
|
-
() => initialTint
|
|
28
|
-
);
|
|
29
|
-
const tintsContext = useTints();
|
|
30
|
-
const { tints } = tintsContext;
|
|
31
|
-
return {
|
|
32
|
-
...tintsContext,
|
|
33
|
-
tints: tintsContext.tints,
|
|
34
|
-
tintIndex: index,
|
|
35
|
-
tint: tints[index],
|
|
36
|
-
setTintIndex,
|
|
37
|
-
setNextTintFamily,
|
|
38
|
-
setNextTint: () => {
|
|
39
|
-
setTintIndex(index + 1);
|
|
40
|
-
}
|
|
41
|
-
};
|
|
42
|
-
};
|
|
43
|
-
const ThemeTint = (props) => {
|
|
44
|
-
const curTint = useTint().tint;
|
|
45
|
-
return <Theme name={props.disable ? null : curTint}>{useMemo(() => props.children, [props.children])}</Theme>;
|
|
46
|
-
};
|
|
47
|
-
export {
|
|
48
|
-
ThemeTint,
|
|
49
|
-
initialTint,
|
|
50
|
-
onTintChange,
|
|
51
|
-
setTintIndex,
|
|
52
|
-
useTint
|
|
53
|
-
};
|
|
1
|
+
import{startTransition as c,useMemo as m,useSyncExternalStore as a}from"react";import{Theme as T}from"tamagui";import{getTints as u,setNextTintFamily as l,useTints as d}from"./tints";const o=3;let i=o;const s=new Set,h=t=>(s.add(t),()=>{s.delete(t)}),x=u().tints.length,r=t=>{const n=t%x;n!==i&&(i=n,c(()=>{s.forEach(e=>e(n))}))},b=()=>{const t=a(h,()=>i,()=>o),n=d(),{tints:e}=n;return{...n,tints:n.tints,tintIndex:t,tint:e[t],setTintIndex:r,setNextTintFamily:l,setNextTint:()=>{r(t+1)}}},y=t=>{const n=b().tint;return<T name={t.disable?null:n}>{m(()=>t.children,[t.children])}</T>};export{y as ThemeTint,o as initialTint,h as onTintChange,r as setTintIndex,b as useTint};
|
|
54
2
|
//# sourceMappingURL=useTint.js.map
|
package/dist/jsx/useTint.js.map
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/useTint.tsx"],
|
|
4
4
|
"sourcesContent": ["import { startTransition, useMemo, useSyncExternalStore } from 'react'\nimport { Theme, ThemeName } from 'tamagui'\n\nimport { getTints, setNextTintFamily, useTints } from './tints'\n\n// TODO useSyncExternalStore\n\n// no localstorage because its not important to remember and causes a flicker\n// const tintVal = typeof localStorage !== 'undefined' ? localStorage.getItem('tint') : 0\n// const tint = tintVal ? +tintVal 0\nexport const initialTint = 3\n\nlet current = initialTint\n\nconst listeners = new Set<Function>()\n\nexport const onTintChange = (listener: (cur: number) => void) => {\n listeners.add(listener)\n return () => {\n listeners.delete(listener)\n }\n}\n\nconst numTints = getTints().tints.length\n\nexport const setTintIndex = (next: number) => {\n const val = next % numTints\n if (val === current) return\n current = val\n startTransition(() => {\n listeners.forEach((x) => x(val))\n })\n}\n\nexport const useTint = () => {\n const index = useSyncExternalStore(\n onTintChange,\n () => current,\n () => initialTint\n )\n const tintsContext = useTints()\n const { tints } = tintsContext\n\n return {\n ...tintsContext,\n tints: tintsContext.tints as ThemeName[],\n tintIndex: index,\n tint: tints[index] as ThemeName,\n setTintIndex,\n setNextTintFamily,\n setNextTint: () => {\n setTintIndex(index + 1)\n },\n } as const\n}\n\nexport const ThemeTint = (props: { children: any; disable?: boolean }) => {\n const curTint = useTint().tint\n return (\n <Theme name={props.disable ? null : curTint}>\n {/* */}\n {useMemo(() => props.children, [props.children])}\n </Theme>\n )\n}\n"],
|
|
5
|
-
"mappings": "AAAA,
|
|
6
|
-
"names": []
|
|
5
|
+
"mappings": "AAAA,OAAS,mBAAAA,EAAiB,WAAAC,EAAS,wBAAAC,MAA4B,QAC/D,OAAS,SAAAC,MAAwB,UAEjC,OAAS,YAAAC,EAAU,qBAAAC,EAAmB,YAAAC,MAAgB,UAO/C,MAAMC,EAAc,EAE3B,IAAIC,EAAUD,EAEd,MAAME,EAAY,IAAI,IAETC,EAAgBC,IAC3BF,EAAU,IAAIE,CAAQ,EACf,IAAM,CACXF,EAAU,OAAOE,CAAQ,CAC3B,GAGIC,EAAWR,EAAS,EAAE,MAAM,OAErBS,EAAgBC,GAAiB,CAC5C,MAAMC,EAAMD,EAAOF,EACfG,IAAQP,IACZA,EAAUO,EACVf,EAAgB,IAAM,CACpBS,EAAU,QAASO,GAAMA,EAAED,CAAG,CAAC,CACjC,CAAC,EACH,EAEaE,EAAU,IAAM,CAC3B,MAAMC,EAAQhB,EACZQ,EACA,IAAMF,EACN,IAAMD,CACR,EACMY,EAAeb,EAAS,EACxB,CAAE,MAAAc,CAAM,EAAID,EAElB,MAAO,CACL,GAAGA,EACH,MAAOA,EAAa,MACpB,UAAWD,EACX,KAAME,EAAMF,CAAK,EACjB,aAAAL,EACA,kBAAAR,EACA,YAAa,IAAM,CACjBQ,EAAaK,EAAQ,CAAC,CACxB,CACF,CACF,EAEaG,EAAaC,GAAgD,CACxE,MAAMC,EAAUN,EAAQ,EAAE,KAC1B,MACE,CAACd,EAAM,MAAMmB,EAAM,QAAU,KAAOC,IAEjCtB,EAAQ,IAAMqB,EAAM,SAAU,CAACA,EAAM,QAAQ,CAAC,EACjD,EAHCnB,EAKL",
|
|
6
|
+
"names": ["startTransition", "useMemo", "useSyncExternalStore", "Theme", "getTints", "setNextTintFamily", "useTints", "initialTint", "current", "listeners", "onTintChange", "listener", "numTints", "setTintIndex", "next", "val", "x", "useTint", "index", "tintsContext", "tints", "ThemeTint", "props", "curTint"]
|
|
7
7
|
}
|
package/dist/jsx/useTint.mjs
CHANGED
|
@@ -1,54 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { Theme } from "tamagui";
|
|
3
|
-
import { getTints, setNextTintFamily, useTints } from "./tints";
|
|
4
|
-
const initialTint = 3;
|
|
5
|
-
let current = initialTint;
|
|
6
|
-
const listeners = /* @__PURE__ */ new Set();
|
|
7
|
-
const onTintChange = (listener) => {
|
|
8
|
-
listeners.add(listener);
|
|
9
|
-
return () => {
|
|
10
|
-
listeners.delete(listener);
|
|
11
|
-
};
|
|
12
|
-
};
|
|
13
|
-
const numTints = getTints().tints.length;
|
|
14
|
-
const setTintIndex = (next) => {
|
|
15
|
-
const val = next % numTints;
|
|
16
|
-
if (val === current)
|
|
17
|
-
return;
|
|
18
|
-
current = val;
|
|
19
|
-
startTransition(() => {
|
|
20
|
-
listeners.forEach((x) => x(val));
|
|
21
|
-
});
|
|
22
|
-
};
|
|
23
|
-
const useTint = () => {
|
|
24
|
-
const index = useSyncExternalStore(
|
|
25
|
-
onTintChange,
|
|
26
|
-
() => current,
|
|
27
|
-
() => initialTint
|
|
28
|
-
);
|
|
29
|
-
const tintsContext = useTints();
|
|
30
|
-
const { tints } = tintsContext;
|
|
31
|
-
return {
|
|
32
|
-
...tintsContext,
|
|
33
|
-
tints: tintsContext.tints,
|
|
34
|
-
tintIndex: index,
|
|
35
|
-
tint: tints[index],
|
|
36
|
-
setTintIndex,
|
|
37
|
-
setNextTintFamily,
|
|
38
|
-
setNextTint: () => {
|
|
39
|
-
setTintIndex(index + 1);
|
|
40
|
-
}
|
|
41
|
-
};
|
|
42
|
-
};
|
|
43
|
-
const ThemeTint = (props) => {
|
|
44
|
-
const curTint = useTint().tint;
|
|
45
|
-
return <Theme name={props.disable ? null : curTint}>{useMemo(() => props.children, [props.children])}</Theme>;
|
|
46
|
-
};
|
|
47
|
-
export {
|
|
48
|
-
ThemeTint,
|
|
49
|
-
initialTint,
|
|
50
|
-
onTintChange,
|
|
51
|
-
setTintIndex,
|
|
52
|
-
useTint
|
|
53
|
-
};
|
|
1
|
+
import{startTransition as c,useMemo as m,useSyncExternalStore as a}from"react";import{Theme as T}from"tamagui";import{getTints as u,setNextTintFamily as l,useTints as d}from"./tints";const o=3;let i=o;const s=new Set,h=t=>(s.add(t),()=>{s.delete(t)}),x=u().tints.length,r=t=>{const n=t%x;n!==i&&(i=n,c(()=>{s.forEach(e=>e(n))}))},b=()=>{const t=a(h,()=>i,()=>o),n=d(),{tints:e}=n;return{...n,tints:n.tints,tintIndex:t,tint:e[t],setTintIndex:r,setNextTintFamily:l,setNextTint:()=>{r(t+1)}}},y=t=>{const n=b().tint;return<T name={t.disable?null:n}>{m(()=>t.children,[t.children])}</T>};export{y as ThemeTint,o as initialTint,h as onTintChange,r as setTintIndex,b as useTint};
|
|
54
2
|
//# sourceMappingURL=useTint.mjs.map
|
package/dist/jsx/useTint.mjs.map
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/useTint.tsx"],
|
|
4
4
|
"sourcesContent": ["import { startTransition, useMemo, useSyncExternalStore } from 'react'\nimport { Theme, ThemeName } from 'tamagui'\n\nimport { getTints, setNextTintFamily, useTints } from './tints'\n\n// TODO useSyncExternalStore\n\n// no localstorage because its not important to remember and causes a flicker\n// const tintVal = typeof localStorage !== 'undefined' ? localStorage.getItem('tint') : 0\n// const tint = tintVal ? +tintVal 0\nexport const initialTint = 3\n\nlet current = initialTint\n\nconst listeners = new Set<Function>()\n\nexport const onTintChange = (listener: (cur: number) => void) => {\n listeners.add(listener)\n return () => {\n listeners.delete(listener)\n }\n}\n\nconst numTints = getTints().tints.length\n\nexport const setTintIndex = (next: number) => {\n const val = next % numTints\n if (val === current) return\n current = val\n startTransition(() => {\n listeners.forEach((x) => x(val))\n })\n}\n\nexport const useTint = () => {\n const index = useSyncExternalStore(\n onTintChange,\n () => current,\n () => initialTint\n )\n const tintsContext = useTints()\n const { tints } = tintsContext\n\n return {\n ...tintsContext,\n tints: tintsContext.tints as ThemeName[],\n tintIndex: index,\n tint: tints[index] as ThemeName,\n setTintIndex,\n setNextTintFamily,\n setNextTint: () => {\n setTintIndex(index + 1)\n },\n } as const\n}\n\nexport const ThemeTint = (props: { children: any; disable?: boolean }) => {\n const curTint = useTint().tint\n return (\n <Theme name={props.disable ? null : curTint}>\n {/* */}\n {useMemo(() => props.children, [props.children])}\n </Theme>\n )\n}\n"],
|
|
5
|
-
"mappings": "AAAA,
|
|
6
|
-
"names": []
|
|
5
|
+
"mappings": "AAAA,OAAS,mBAAAA,EAAiB,WAAAC,EAAS,wBAAAC,MAA4B,QAC/D,OAAS,SAAAC,MAAwB,UAEjC,OAAS,YAAAC,EAAU,qBAAAC,EAAmB,YAAAC,MAAgB,UAO/C,MAAMC,EAAc,EAE3B,IAAIC,EAAUD,EAEd,MAAME,EAAY,IAAI,IAETC,EAAgBC,IAC3BF,EAAU,IAAIE,CAAQ,EACf,IAAM,CACXF,EAAU,OAAOE,CAAQ,CAC3B,GAGIC,EAAWR,EAAS,EAAE,MAAM,OAErBS,EAAgBC,GAAiB,CAC5C,MAAMC,EAAMD,EAAOF,EACfG,IAAQP,IACZA,EAAUO,EACVf,EAAgB,IAAM,CACpBS,EAAU,QAASO,GAAMA,EAAED,CAAG,CAAC,CACjC,CAAC,EACH,EAEaE,EAAU,IAAM,CAC3B,MAAMC,EAAQhB,EACZQ,EACA,IAAMF,EACN,IAAMD,CACR,EACMY,EAAeb,EAAS,EACxB,CAAE,MAAAc,CAAM,EAAID,EAElB,MAAO,CACL,GAAGA,EACH,MAAOA,EAAa,MACpB,UAAWD,EACX,KAAME,EAAMF,CAAK,EACjB,aAAAL,EACA,kBAAAR,EACA,YAAa,IAAM,CACjBQ,EAAaK,EAAQ,CAAC,CACxB,CACF,CACF,EAEaG,EAAaC,GAAgD,CACxE,MAAMC,EAAUN,EAAQ,EAAE,KAC1B,MACE,CAACd,EAAM,MAAMmB,EAAM,QAAU,KAAOC,IAEjCtB,EAAQ,IAAMqB,EAAM,SAAU,CAACA,EAAM,QAAQ,CAAC,EACjD,EAHCnB,EAKL",
|
|
6
|
+
"names": ["startTransition", "useMemo", "useSyncExternalStore", "Theme", "getTints", "setNextTintFamily", "useTints", "initialTint", "current", "listeners", "onTintChange", "listener", "numTints", "setTintIndex", "next", "val", "x", "useTint", "index", "tintsContext", "tints", "ThemeTint", "props", "curTint"]
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/logo",
|
|
3
|
-
"version": "1.13.
|
|
3
|
+
"version": "1.13.4",
|
|
4
4
|
"sideEffects": false,
|
|
5
5
|
"source": "src/index.ts",
|
|
6
6
|
"types": "./types/index.d.ts",
|
|
@@ -20,10 +20,10 @@
|
|
|
20
20
|
"react": "*"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"tamagui": "1.13.
|
|
23
|
+
"tamagui": "1.13.4"
|
|
24
24
|
},
|
|
25
25
|
"devDependencies": {
|
|
26
|
-
"@tamagui/build": "1.13.
|
|
26
|
+
"@tamagui/build": "1.13.4",
|
|
27
27
|
"react": "^18.2.0"
|
|
28
28
|
},
|
|
29
29
|
"publishConfig": {
|