bento-get 1.109.2 → 1.109.3

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.
Files changed (104) hide show
  1. package/dist/app/AuthGuard.js +26 -0
  2. package/dist/app/AuthGuard.js.map +6 -0
  3. package/dist/app/AuthGuard.mjs +31 -0
  4. package/dist/app/AuthGuard.mjs.map +1 -0
  5. package/dist/app/AuthGuard.native.js +37 -0
  6. package/dist/app/AuthGuard.native.js.map +6 -0
  7. package/dist/app/handle-global-keypress.js +86 -0
  8. package/dist/app/handle-global-keypress.js.map +6 -0
  9. package/dist/app/handle-global-keypress.mjs +83 -0
  10. package/dist/app/handle-global-keypress.mjs.map +1 -0
  11. package/dist/app/handle-global-keypress.native.js +119 -0
  12. package/dist/app/handle-global-keypress.native.js.map +6 -0
  13. package/dist/cli-components/SearchBar.js +41 -0
  14. package/dist/cli-components/SearchBar.js.map +6 -0
  15. package/dist/cli-components/SearchBar.mjs +41 -0
  16. package/dist/cli-components/SearchBar.mjs.map +1 -0
  17. package/dist/cli-components/SearchBar.native.js +59 -0
  18. package/dist/cli-components/SearchBar.native.js.map +6 -0
  19. package/dist/cli-components/index.js +101 -0
  20. package/dist/cli-components/index.js.map +6 -0
  21. package/dist/cli-components/index.mjs +147 -0
  22. package/dist/cli-components/index.mjs.map +1 -0
  23. package/dist/cli-components/index.native.js +189 -0
  24. package/dist/cli-components/index.native.js.map +6 -0
  25. package/dist/commands/index.js +34 -390
  26. package/dist/commands/index.js.map +1 -1
  27. package/dist/commands/index.mjs +50 -492
  28. package/dist/commands/index.mjs.map +1 -1
  29. package/dist/commands/index.native.js +43 -622
  30. package/dist/commands/index.native.js.map +2 -2
  31. package/dist/data/AppContext.js +39 -0
  32. package/dist/data/AppContext.js.map +6 -0
  33. package/dist/data/AppContext.mjs +31 -0
  34. package/dist/data/AppContext.mjs.map +1 -0
  35. package/dist/data/AppContext.native.js +41 -0
  36. package/dist/data/AppContext.native.js.map +6 -0
  37. package/dist/hooks/useFetchComponent.js +9 -6
  38. package/dist/hooks/useFetchComponent.js.map +1 -1
  39. package/dist/hooks/useFetchComponent.mjs +11 -8
  40. package/dist/hooks/useFetchComponent.mjs.map +1 -1
  41. package/dist/hooks/useFetchComponent.native.js +9 -8
  42. package/dist/hooks/useFetchComponent.native.js.map +2 -2
  43. package/dist/hooks/useGithubAuth.js +8 -3
  44. package/dist/hooks/useGithubAuth.js.map +1 -1
  45. package/dist/hooks/useGithubAuth.mjs +11 -7
  46. package/dist/hooks/useGithubAuth.mjs.map +1 -1
  47. package/dist/hooks/useGithubAuth.native.js +10 -5
  48. package/dist/hooks/useGithubAuth.native.js.map +2 -2
  49. package/dist/hooks/useGithubAuthPooling.js +6 -3
  50. package/dist/hooks/useGithubAuthPooling.js.map +1 -1
  51. package/dist/hooks/useGithubAuthPooling.mjs +6 -3
  52. package/dist/hooks/useGithubAuthPooling.mjs.map +1 -1
  53. package/dist/hooks/useGithubAuthPooling.native.js +41 -3
  54. package/dist/hooks/useGithubAuthPooling.native.js.map +2 -2
  55. package/dist/hooks/useInstallComponent.js +3 -12
  56. package/dist/hooks/useInstallComponent.js.map +1 -1
  57. package/dist/hooks/useInstallComponent.mjs +2 -5
  58. package/dist/hooks/useInstallComponent.mjs.map +1 -1
  59. package/dist/hooks/useInstallComponent.native.js +3 -6
  60. package/dist/hooks/useInstallComponent.native.js.map +2 -2
  61. package/dist/screens/CodeAuthScreen.js +64 -0
  62. package/dist/screens/CodeAuthScreen.js.map +6 -0
  63. package/dist/screens/CodeAuthScreen.mjs +90 -0
  64. package/dist/screens/CodeAuthScreen.mjs.map +1 -0
  65. package/dist/screens/CodeAuthScreen.native.js +153 -0
  66. package/dist/screens/CodeAuthScreen.native.js.map +6 -0
  67. package/dist/screens/InstallConfirmScreen.js +88 -0
  68. package/dist/screens/InstallConfirmScreen.js.map +6 -0
  69. package/dist/screens/InstallConfirmScreen.mjs +86 -0
  70. package/dist/screens/InstallConfirmScreen.mjs.map +1 -0
  71. package/dist/screens/InstallConfirmScreen.native.js +163 -0
  72. package/dist/screens/InstallConfirmScreen.native.js.map +6 -0
  73. package/dist/screens/SearchScreen.js +12 -0
  74. package/dist/screens/SearchScreen.js.map +6 -0
  75. package/dist/screens/SearchScreen.mjs +8 -0
  76. package/dist/screens/SearchScreen.mjs.map +1 -0
  77. package/dist/screens/SearchScreen.native.js +16 -0
  78. package/dist/screens/SearchScreen.native.js.map +6 -0
  79. package/package.json +3 -2
  80. package/types/app/AuthGuard.d.ts +4 -0
  81. package/types/app/AuthGuard.d.ts.map +1 -0
  82. package/types/app/handle-global-keypress.d.ts +5 -0
  83. package/types/app/handle-global-keypress.d.ts.map +1 -0
  84. package/types/cli-components/SearchBar.d.ts +2 -0
  85. package/types/cli-components/SearchBar.d.ts.map +1 -0
  86. package/types/cli-components/index.d.ts +22 -0
  87. package/types/cli-components/index.d.ts.map +1 -0
  88. package/types/commands/index.d.ts +1 -40
  89. package/types/commands/index.d.ts.map +1 -1
  90. package/types/components/index.d.ts +21 -0
  91. package/types/data/AppContext.d.ts +38 -0
  92. package/types/data/AppContext.d.ts.map +1 -0
  93. package/types/hooks/useFetchComponent.d.ts.map +1 -1
  94. package/types/hooks/useGithubAuth.d.ts +2 -2
  95. package/types/hooks/useGithubAuth.d.ts.map +1 -1
  96. package/types/hooks/useGithubAuthPooling.d.ts.map +1 -1
  97. package/types/hooks/useInstallComponent.d.ts +1 -1
  98. package/types/hooks/useInstallComponent.d.ts.map +1 -1
  99. package/types/screens/CodeAuthScreen.d.ts +2 -0
  100. package/types/screens/CodeAuthScreen.d.ts.map +1 -0
  101. package/types/screens/InstallConfirmScreen.d.ts +2 -0
  102. package/types/screens/InstallConfirmScreen.d.ts.map +1 -0
  103. package/types/screens/SearchScreen.d.ts +2 -0
  104. package/types/screens/SearchScreen.d.ts.map +1 -0
@@ -0,0 +1,26 @@
1
+ import { Alert } from "@inkjs/ui";
2
+ import { Box } from "ink";
3
+ import { useNavigate } from "react-router-dom";
4
+ import { useInstallComponent } from "../hooks/useInstallComponent.js";
5
+ import { debugLog } from "../commands/index.js";
6
+ import { useEffect } from "react";
7
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
8
+ const AuthGuard = ({ children }) => {
9
+ const navigate = useNavigate(), { error } = useInstallComponent();
10
+ return useEffect(() => {
11
+ debugLog({
12
+ errorStatus: error?.status,
13
+ useInstallComponentError: error
14
+ }), error && error.status === 401 && navigate("/auth");
15
+ }, [error, navigate]), error && error.status !== 401 ? /* @__PURE__ */ jsxs(Box, { flexDirection: "column", children: [
16
+ /* @__PURE__ */ jsxs(Alert, { variant: "error", children: [
17
+ "Error installing component: ",
18
+ JSON.stringify(error, null, 2)
19
+ ] }),
20
+ children
21
+ ] }) : /* @__PURE__ */ jsx(Fragment, { children });
22
+ };
23
+ export {
24
+ AuthGuard
25
+ };
26
+ //# sourceMappingURL=AuthGuard.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/app/AuthGuard.tsx"],
4
+ "mappings": "AAAA,SAAS,aAAa;AACtB,SAAS,WAAW;AACpB,SAAS,mBAAmB;AAC5B,SAAS,2BAA2B;AACpC,SAAS,gBAAgB;AACzB,SAAS,iBAAiB;AAoBlB,SAQC,eARD;AAlBD,MAAM,YAAY,CAAC,EAAE,SAAS,MAAqC;AACxE,QAAM,WAAW,YAAY,GACvB,EAAE,MAAM,IAAI,oBAAoB;AAatC,SAXA,UAAU,MAAM;AACd,aAAS;AAAA,MACP,aAAa,OAAO;AAAA,MACpB,0BAA0B;AAAA,IAC5B,CAAC,GAEG,SAAS,MAAM,WAAW,OAC5B,SAAS,OAAO;AAAA,EAEpB,GAAG,CAAC,OAAO,QAAQ,CAAC,GAEhB,SAAS,MAAM,WAAW,MAE1B,qBAAC,OAAI,eAAc,UACjB;AAAA,yBAAC,SAAM,SAAQ,SAAQ;AAAA;AAAA,MACQ,KAAK,UAAU,OAAO,MAAM,CAAC;AAAA,OAC5D;AAAA,IACC;AAAA,KACH,IAIG,gCAAG,UAAS;AACrB;",
5
+ "names": []
6
+ }
@@ -0,0 +1,31 @@
1
+ import { Alert } from "@inkjs/ui";
2
+ import { Box } from "ink";
3
+ import { useNavigate } from "react-router-dom";
4
+ import { useInstallComponent } from "../hooks/useInstallComponent.js";
5
+ import { debugLog } from "../commands/index.js";
6
+ import { useEffect } from "react";
7
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
8
+ const AuthGuard = ({
9
+ children
10
+ }) => {
11
+ const navigate = useNavigate(),
12
+ {
13
+ error
14
+ } = useInstallComponent();
15
+ return useEffect(() => {
16
+ debugLog({
17
+ errorStatus: error?.status,
18
+ useInstallComponentError: error
19
+ }), error && error.status === 401 && navigate("/auth");
20
+ }, [error, navigate]), error && error.status !== 401 ? /* @__PURE__ */jsxs(Box, {
21
+ flexDirection: "column",
22
+ children: [/* @__PURE__ */jsxs(Alert, {
23
+ variant: "error",
24
+ children: ["Error installing component: ", JSON.stringify(error, null, 2)]
25
+ }), children]
26
+ }) : /* @__PURE__ */jsx(Fragment, {
27
+ children
28
+ });
29
+ };
30
+ export { AuthGuard };
31
+ //# sourceMappingURL=AuthGuard.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Alert","Box","useNavigate","useInstallComponent","debugLog","useEffect","Fragment","jsx","jsxs","AuthGuard","children","navigate","error","errorStatus","status","useInstallComponentError","flexDirection","variant","JSON","stringify"],"sources":["../../src/app/AuthGuard.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,KAAA,QAAa;AACtB,SAASC,GAAA,QAAW;AACpB,SAASC,WAAA,QAAmB;AAC5B,SAASC,mBAAA,QAA2B;AACpC,SAASC,QAAA,QAAgB;AACzB,SAASC,SAAA,QAAiB;AAoBlB,SAQCC,QAAA,EAAAC,GAAA,EARDC,IAAA;AAlBD,MAAMC,SAAA,GAAYA,CAAC;EAAEC;AAAS,MAAqC;EACxE,MAAMC,QAAA,GAAWT,WAAA,CAAY;IACvB;MAAEU;IAAM,IAAIT,mBAAA,CAAoB;EAatC,OAXAE,SAAA,CAAU,MAAM;IACdD,QAAA,CAAS;MACPS,WAAA,EAAaD,KAAA,EAAOE,MAAA;MACpBC,wBAAA,EAA0BH;IAC5B,CAAC,GAEGA,KAAA,IAASA,KAAA,CAAME,MAAA,KAAW,OAC5BH,QAAA,CAAS,OAAO;EAEpB,GAAG,CAACC,KAAA,EAAOD,QAAQ,CAAC,GAEhBC,KAAA,IAASA,KAAA,CAAME,MAAA,KAAW,MAE1B,eAAAN,IAAA,CAACP,GAAA;IAAIe,aAAA,EAAc;IACjBN,QAAA,kBAAAF,IAAA,CAACR,KAAA;MAAMiB,OAAA,EAAQ;MAAQP,QAAA,mCACQQ,IAAA,CAAKC,SAAA,CAAUP,KAAA,EAAO,MAAM,CAAC;IAAA,CAC5D,GACCF,QAAA;EAAA,CACH,IAIG,eAAAH,GAAA,CAAAD,QAAA;IAAGI;EAAA,CAAS;AACrB","ignoreList":[]}
@@ -0,0 +1,37 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { Alert } from "@inkjs/ui";
3
+ import { Box } from "ink";
4
+ import { useNavigate } from "react-router-dom";
5
+ import { useInstallComponent } from "../hooks/useInstallComponent.js";
6
+ import { debugLog } from "../commands/index.js";
7
+ import { useEffect } from "react";
8
+ var AuthGuard = function(param) {
9
+ var children = param.children, navigate = useNavigate(), error = useInstallComponent().error;
10
+ return useEffect(function() {
11
+ debugLog({
12
+ errorStatus: error == null ? void 0 : error.status,
13
+ useInstallComponentError: error
14
+ }), error && error.status === 401 && navigate("/auth");
15
+ }, [
16
+ error,
17
+ navigate
18
+ ]), error && error.status !== 401 ? /* @__PURE__ */ _jsxs(Box, {
19
+ flexDirection: "column",
20
+ children: [
21
+ /* @__PURE__ */ _jsxs(Alert, {
22
+ variant: "error",
23
+ children: [
24
+ "Error installing component: ",
25
+ JSON.stringify(error, null, 2)
26
+ ]
27
+ }),
28
+ children
29
+ ]
30
+ }) : /* @__PURE__ */ _jsx(_Fragment, {
31
+ children
32
+ });
33
+ };
34
+ export {
35
+ AuthGuard
36
+ };
37
+ //# sourceMappingURL=AuthGuard.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/app/Users/n8/tamagui/code/packages/bento-get/src/app/AuthGuard.tsx"],
4
+ "mappings": ";AAAA,SAASA,aAAa;AACtB,SAASC,WAAW;AACpB,SAASC,mBAAmB;AAC5B,SAASC,2BAA2B;AACpC,SAASC,gBAAgB;AACzB,SAASC,iBAAiB;AAEnB,IAAMC,YAAY,SAAA,OAAA;MAAGC,WAAAA,MAAAA,UACpBC,WAAWN,YAAAA,GACTO,QAAUN,oBAAAA,EAAVM;AAaR,SAXAJ,UAAU,WAAA;AACRD,aAAS;MACPM,aAAaD,SAAAA,OAAAA,SAAAA,MAAOE;MACpBC,0BAA0BH;IAC5B,CAAA,GAEIA,SAASA,MAAME,WAAW,OAC5BH,SAAS,OAAA;EAEb,GAAG;IAACC;IAAOD;GAAS,GAEhBC,SAASA,MAAME,WAAW,MAE1B,sBAACV,KAAAA;IAAIY,eAAc;;MACjB,sBAACb,OAAAA;QAAMc,SAAQ;;UAAQ;UACQC,KAAKC,UAAUP,OAAO,MAAM,CAAA;;;MAE1DF;;OAKA,qBAAA,WAAA;;;AACT;",
5
+ "names": ["Alert", "Box", "useNavigate", "useInstallComponent", "debugLog", "useEffect", "AuthGuard", "children", "navigate", "error", "errorStatus", "status", "useInstallComponentError", "flexDirection", "variant", "JSON", "stringify"]
6
+ }
@@ -0,0 +1,86 @@
1
+ import open from "open";
2
+ import { debugLog } from "../commands/index.js";
3
+ import { tokenStore } from "../data/AppContext.js";
4
+ const handleGlobalKeyPress = (key, modifier, appContext, navigate, location) => {
5
+ const {
6
+ selectedResultIndex,
7
+ setSelectedResultIndex,
8
+ setInstallState,
9
+ searchResults,
10
+ setCopyingToClipboard,
11
+ setConfirmationPending
12
+ } = appContext;
13
+ if (debugLog({
14
+ modifier,
15
+ key
16
+ }), modifier.ctrl && key === "d") {
17
+ tokenStore.clear(), console.warn("Cleared Github Token");
18
+ return;
19
+ }
20
+ if (key === "c" && appContext.installState.shouldOpenBrowser) {
21
+ setCopyingToClipboard(!0);
22
+ return;
23
+ }
24
+ if (location.pathname === "/install-confirm") {
25
+ if (key === "y") {
26
+ setConfirmationPending(!1), navigate("/search");
27
+ return;
28
+ }
29
+ if (key === "n") {
30
+ setConfirmationPending(!0), navigate("/search"), setSelectedResultIndex(-1), setInstallState((prev) => ({
31
+ ...prev,
32
+ componentToInstall: null,
33
+ installingComponent: null
34
+ }));
35
+ return;
36
+ }
37
+ return;
38
+ }
39
+ if (modifier.escape && appContext.installState.isTokenInstalled)
40
+ return appContext.setInstallState((prev) => ({
41
+ ...prev,
42
+ installingComponent: null,
43
+ isTokenInstalled: !1
44
+ })), navigate("/search");
45
+ if (modifier.escape && appContext.installState.installingComponent !== null && !appContext.installState.installingComponent?.isOSS) {
46
+ appContext.setInstallState((prev) => ({
47
+ ...prev,
48
+ installingComponent: null,
49
+ shouldOpenBrowser: !1
50
+ }));
51
+ return;
52
+ }
53
+ if (modifier.escape) {
54
+ if (location.pathname === "/install-confirm") {
55
+ navigate("/search");
56
+ return;
57
+ }
58
+ appContext.exitApp();
59
+ return;
60
+ }
61
+ if (!(appContext.installState.installingComponent && (modifier.upArrow || modifier.downArrow))) {
62
+ if (modifier.return && !appContext.installState.installingComponent?.isOSS && appContext.installState.shouldOpenBrowser) {
63
+ open("https://github.com/login/device");
64
+ return;
65
+ }
66
+ if (modifier.upArrow) {
67
+ selectedResultIndex > -1 && setSelectedResultIndex(selectedResultIndex - 1);
68
+ return;
69
+ }
70
+ if (modifier.downArrow) {
71
+ selectedResultIndex < appContext.searchResults.length - 1 && setSelectedResultIndex(selectedResultIndex + 1);
72
+ return;
73
+ }
74
+ if (modifier.return) {
75
+ setInstallState((prev) => ({
76
+ ...prev,
77
+ installingComponent: searchResults[selectedResultIndex]?.item
78
+ })), debugLog("Installing component", searchResults[selectedResultIndex]?.item), navigate("/install-confirm");
79
+ return;
80
+ }
81
+ }
82
+ };
83
+ export {
84
+ handleGlobalKeyPress
85
+ };
86
+ //# sourceMappingURL=handle-global-keypress.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/app/handle-global-keypress.ts"],
4
+ "mappings": "AACA,OAAO,UAAU;AACjB,SAAS,gBAAgB;AAGzB,SAAS,kBAAkB;AAEpB,MAAM,uBAAuB,CAClC,KACA,UACA,YACA,UACA,aACG;AACH,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI;AAOJ,MALA,SAAS;AAAA,IACP;AAAA,IACA;AAAA,EACF,CAAC,GAEG,SAAS,QAAQ,QAAQ,KAAK;AAChC,eAAW,MAAM,GACjB,QAAQ,KAAK,sBAAsB;AACnC;AAAA,EACF;AAEA,MAAI,QAAQ,OAAO,WAAW,aAAa,mBAAmB;AAC5D,0BAAsB,EAAI;AAC1B;AAAA,EACF;AAEA,MAAI,SAAS,aAAa,oBAAoB;AAC5C,QAAI,QAAQ,KAAK;AACf,6BAAuB,EAAK,GAC5B,SAAS,SAAS;AAClB;AAAA,IACF;AACA,QAAI,QAAQ,KAAK;AACf,6BAAuB,EAAI,GAC3B,SAAS,SAAS,GAClB,uBAAuB,EAAE,GACzB,gBAAgB,CAAC,UAAU;AAAA,QACzB,GAAG;AAAA,QACH,oBAAoB;AAAA,QACpB,qBAAqB;AAAA,MACvB,EAAE;AACF;AAAA,IACF;AACA;AAAA,EACF;AAGA,MAAI,SAAS,UAAU,WAAW,aAAa;AAC7C,sBAAW,gBAAgB,CAAC,UAAU;AAAA,MACpC,GAAG;AAAA,MACH,qBAAqB;AAAA,MACrB,kBAAkB;AAAA,IACpB,EAAE,GACK,SAAS,SAAS;AAG3B,MACE,SAAS,UACT,WAAW,aAAa,wBAAwB,QAChD,CAAC,WAAW,aAAa,qBAAqB,OAC9C;AACA,eAAW,gBAAgB,CAAC,UAAU;AAAA,MACpC,GAAG;AAAA,MACH,qBAAqB;AAAA,MACrB,mBAAmB;AAAA,IACrB,EAAE;AACF;AAAA,EACF;AAEA,MAAI,SAAS,QAAQ;AACnB,QAAI,SAAS,aAAa,oBAAoB;AAC5C,eAAS,SAAS;AAClB;AAAA,IACF;AACA,eAAW,QAAQ;AACnB;AAAA,EACF;AAEA,MACE,aAAW,aAAa,wBACvB,SAAS,WAAW,SAAS,aAIhC;AAAA,QACE,SAAS,UACT,CAAC,WAAW,aAAa,qBAAqB,SAC9C,WAAW,aAAa,mBACxB;AACA,WAAK,iCAAiC;AACtC;AAAA,IACF;AAEA,QAAI,SAAS,SAAS;AACpB,4BAAsB,MAAM,uBAAuB,sBAAsB,CAAC;AAC1E;AAAA,IACF;AAEA,QAAI,SAAS,WAAW;AACtB,4BAAsB,WAAW,cAAc,SAAS,KACtD,uBAAuB,sBAAsB,CAAC;AAChD;AAAA,IACF;AAEA,QAAI,SAAS,QAAQ;AACnB,sBAAgB,CAAC,UAAU;AAAA,QACzB,GAAG;AAAA,QACH,qBAAqB,cAAc,mBAAmB,GAAG;AAAA,MAC3D,EAAE,GACF,SAAS,wBAAwB,cAAc,mBAAmB,GAAG,IAAI,GACzE,SAAS,kBAAkB;AAC3B;AAAA,IACF;AAAA;AACF;",
5
+ "names": []
6
+ }
@@ -0,0 +1,83 @@
1
+ import open from "open";
2
+ import { debugLog } from "../commands/index.js";
3
+ import { tokenStore } from "../data/AppContext.js";
4
+ const handleGlobalKeyPress = (key, modifier, appContext, navigate, location) => {
5
+ const {
6
+ selectedResultIndex,
7
+ setSelectedResultIndex,
8
+ setInstallState,
9
+ searchResults,
10
+ setCopyingToClipboard,
11
+ setConfirmationPending
12
+ } = appContext;
13
+ if (debugLog({
14
+ modifier,
15
+ key
16
+ }), modifier.ctrl && key === "d") {
17
+ tokenStore.clear(), console.warn("Cleared Github Token");
18
+ return;
19
+ }
20
+ if (key === "c" && appContext.installState.shouldOpenBrowser) {
21
+ setCopyingToClipboard(!0);
22
+ return;
23
+ }
24
+ if (location.pathname === "/install-confirm") {
25
+ if (key === "y") {
26
+ setConfirmationPending(!1), navigate("/search");
27
+ return;
28
+ }
29
+ if (key === "n") {
30
+ setConfirmationPending(!0), navigate("/search"), setSelectedResultIndex(-1), setInstallState(prev => ({
31
+ ...prev,
32
+ componentToInstall: null,
33
+ installingComponent: null
34
+ }));
35
+ return;
36
+ }
37
+ return;
38
+ }
39
+ if (modifier.escape && appContext.installState.isTokenInstalled) return appContext.setInstallState(prev => ({
40
+ ...prev,
41
+ installingComponent: null,
42
+ isTokenInstalled: !1
43
+ })), navigate("/search");
44
+ if (modifier.escape && appContext.installState.installingComponent !== null && !appContext.installState.installingComponent?.isOSS) {
45
+ appContext.setInstallState(prev => ({
46
+ ...prev,
47
+ installingComponent: null,
48
+ shouldOpenBrowser: !1
49
+ }));
50
+ return;
51
+ }
52
+ if (modifier.escape) {
53
+ if (location.pathname === "/install-confirm") {
54
+ navigate("/search");
55
+ return;
56
+ }
57
+ appContext.exitApp();
58
+ return;
59
+ }
60
+ if (!(appContext.installState.installingComponent && (modifier.upArrow || modifier.downArrow))) {
61
+ if (modifier.return && !appContext.installState.installingComponent?.isOSS && appContext.installState.shouldOpenBrowser) {
62
+ open("https://github.com/login/device");
63
+ return;
64
+ }
65
+ if (modifier.upArrow) {
66
+ selectedResultIndex > -1 && setSelectedResultIndex(selectedResultIndex - 1);
67
+ return;
68
+ }
69
+ if (modifier.downArrow) {
70
+ selectedResultIndex < appContext.searchResults.length - 1 && setSelectedResultIndex(selectedResultIndex + 1);
71
+ return;
72
+ }
73
+ if (modifier.return) {
74
+ setInstallState(prev => ({
75
+ ...prev,
76
+ installingComponent: searchResults[selectedResultIndex]?.item
77
+ })), debugLog("Installing component", searchResults[selectedResultIndex]?.item), navigate("/install-confirm");
78
+ return;
79
+ }
80
+ }
81
+ };
82
+ export { handleGlobalKeyPress };
83
+ //# sourceMappingURL=handle-global-keypress.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["open","debugLog","tokenStore","handleGlobalKeyPress","key","modifier","appContext","navigate","location","selectedResultIndex","setSelectedResultIndex","setInstallState","searchResults","setCopyingToClipboard","setConfirmationPending","ctrl","clear","console","warn","installState","shouldOpenBrowser","pathname","prev","componentToInstall","installingComponent","escape","isTokenInstalled","isOSS","exitApp","upArrow","downArrow","return","length","item"],"sources":["../../src/app/handle-global-keypress.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,119 @@
1
+ import open from "open";
2
+ import { debugLog } from "../commands/index.js";
3
+ import { tokenStore } from "../data/AppContext.js";
4
+ function _define_property(obj, key, value) {
5
+ return key in obj ? Object.defineProperty(obj, key, {
6
+ value,
7
+ enumerable: !0,
8
+ configurable: !0,
9
+ writable: !0
10
+ }) : obj[key] = value, obj;
11
+ }
12
+ function _object_spread(target) {
13
+ for (var i = 1; i < arguments.length; i++) {
14
+ var source = arguments[i] != null ? arguments[i] : {}, ownKeys2 = Object.keys(source);
15
+ typeof Object.getOwnPropertySymbols == "function" && (ownKeys2 = ownKeys2.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
16
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
17
+ }))), ownKeys2.forEach(function(key) {
18
+ _define_property(target, key, source[key]);
19
+ });
20
+ }
21
+ return target;
22
+ }
23
+ function ownKeys(object, enumerableOnly) {
24
+ var keys = Object.keys(object);
25
+ if (Object.getOwnPropertySymbols) {
26
+ var symbols = Object.getOwnPropertySymbols(object);
27
+ enumerableOnly && (symbols = symbols.filter(function(sym) {
28
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
29
+ })), keys.push.apply(keys, symbols);
30
+ }
31
+ return keys;
32
+ }
33
+ function _object_spread_props(target, source) {
34
+ return source = source ?? {}, Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function(key) {
35
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
36
+ }), target;
37
+ }
38
+ var handleGlobalKeyPress = function(key, modifier, appContext, navigate, location) {
39
+ var _appContext_installState_installingComponent, _appContext_installState_installingComponent1, selectedResultIndex = appContext.selectedResultIndex, setSelectedResultIndex = appContext.setSelectedResultIndex, setInstallState = appContext.setInstallState, searchResults = appContext.searchResults, setCopyingToClipboard = appContext.setCopyingToClipboard, setConfirmationPending = appContext.setConfirmationPending;
40
+ if (debugLog({
41
+ modifier,
42
+ key
43
+ }), modifier.ctrl && key === "d") {
44
+ tokenStore.clear(), console.warn("Cleared Github Token");
45
+ return;
46
+ }
47
+ if (key === "c" && appContext.installState.shouldOpenBrowser) {
48
+ setCopyingToClipboard(!0);
49
+ return;
50
+ }
51
+ if (location.pathname === "/install-confirm") {
52
+ if (key === "y") {
53
+ setConfirmationPending(!1), navigate("/search");
54
+ return;
55
+ }
56
+ if (key === "n") {
57
+ setConfirmationPending(!0), navigate("/search"), setSelectedResultIndex(-1), setInstallState(function(prev) {
58
+ return _object_spread_props(_object_spread({}, prev), {
59
+ componentToInstall: null,
60
+ installingComponent: null
61
+ });
62
+ });
63
+ return;
64
+ }
65
+ return;
66
+ }
67
+ if (modifier.escape && appContext.installState.isTokenInstalled)
68
+ return appContext.setInstallState(function(prev) {
69
+ return _object_spread_props(_object_spread({}, prev), {
70
+ installingComponent: null,
71
+ isTokenInstalled: !1
72
+ });
73
+ }), navigate("/search");
74
+ if (modifier.escape && appContext.installState.installingComponent !== null && !(!((_appContext_installState_installingComponent = appContext.installState.installingComponent) === null || _appContext_installState_installingComponent === void 0) && _appContext_installState_installingComponent.isOSS)) {
75
+ appContext.setInstallState(function(prev) {
76
+ return _object_spread_props(_object_spread({}, prev), {
77
+ installingComponent: null,
78
+ shouldOpenBrowser: !1
79
+ });
80
+ });
81
+ return;
82
+ }
83
+ if (modifier.escape) {
84
+ if (location.pathname === "/install-confirm") {
85
+ navigate("/search");
86
+ return;
87
+ }
88
+ appContext.exitApp();
89
+ return;
90
+ }
91
+ if (!(appContext.installState.installingComponent && (modifier.upArrow || modifier.downArrow))) {
92
+ if (modifier.return && !(!((_appContext_installState_installingComponent1 = appContext.installState.installingComponent) === null || _appContext_installState_installingComponent1 === void 0) && _appContext_installState_installingComponent1.isOSS) && appContext.installState.shouldOpenBrowser) {
93
+ open("https://github.com/login/device");
94
+ return;
95
+ }
96
+ if (modifier.upArrow) {
97
+ selectedResultIndex > -1 && setSelectedResultIndex(selectedResultIndex - 1);
98
+ return;
99
+ }
100
+ if (modifier.downArrow) {
101
+ selectedResultIndex < appContext.searchResults.length - 1 && setSelectedResultIndex(selectedResultIndex + 1);
102
+ return;
103
+ }
104
+ if (modifier.return) {
105
+ var _searchResults_selectedResultIndex;
106
+ setInstallState(function(prev) {
107
+ var _searchResults_selectedResultIndex2;
108
+ return _object_spread_props(_object_spread({}, prev), {
109
+ installingComponent: (_searchResults_selectedResultIndex2 = searchResults[selectedResultIndex]) === null || _searchResults_selectedResultIndex2 === void 0 ? void 0 : _searchResults_selectedResultIndex2.item
110
+ });
111
+ }), debugLog("Installing component", (_searchResults_selectedResultIndex = searchResults[selectedResultIndex]) === null || _searchResults_selectedResultIndex === void 0 ? void 0 : _searchResults_selectedResultIndex.item), navigate("/install-confirm");
112
+ return;
113
+ }
114
+ }
115
+ };
116
+ export {
117
+ handleGlobalKeyPress
118
+ };
119
+ //# sourceMappingURL=handle-global-keypress.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/app/Users/n8/tamagui/code/packages/bento-get/src/app/handle-global-keypress.ts"],
4
+ "mappings": "AACA,OAAOA,UAAU;AACjB,SAASC,gBAAgB;AAGzB,SAASC,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEpB,IAAMC,uBAAuB,SAClCC,KACAC,UACAC,YACAC,UACAC,UAAAA;MA4DGF,8CA2BAA,+CApFDG,sBAMEH,WANFG,qBACAC,yBAKEJ,WALFI,wBACAC,kBAIEL,WAJFK,iBACAC,gBAGEN,WAHFM,eACAC,wBAEEP,WAFFO,uBACAC,yBACER,WADFQ;AAQF,MALAb,SAAS;IACPI;IACAD;EACF,CAAA,GAEIC,SAASU,QAAQX,QAAQ,KAAK;AAChCF,eAAWc,MAAK,GAChBC,QAAQC,KAAK,sBAAA;AACb;EACF;AAEA,MAAId,QAAQ,OAAOE,WAAWa,aAAaC,mBAAmB;AAC5DP,0BAAsB,EAAA;AACtB;EACF;AAEA,MAAIL,SAASa,aAAa,oBAAoB;AAC5C,QAAIjB,QAAQ,KAAK;AACfU,6BAAuB,EAAA,GACvBP,SAAS,SAAA;AACT;IACF;AACA,QAAIH,QAAQ,KAAK;AACfU,6BAAuB,EAAA,GACvBP,SAAS,SAAA,GACTG,uBAAuB,EAAC,GACxBC,gBAAgB,SAACW,MAAAA;eAAU,qBAAA,eAAA,CAAA,GACtBA,IAAAA,GAAAA;UACHC,oBAAoB;UACpBC,qBAAqB;;;AAEvB;IACF;AACA;EACF;AAGA,MAAInB,SAASoB,UAAUnB,WAAWa,aAAaO;AAC7CpB,sBAAWK,gBAAgB,SAACW,MAAAA;aAAU,qBAAA,eAAA,CAAA,GACjCA,IAAAA,GAAAA;QACHE,qBAAqB;QACrBE,kBAAkB;;QAEbnB,SAAS,SAAA;AAGlB,MACEF,SAASoB,UACTnB,WAAWa,aAAaK,wBAAwB,QAChD,EAAClB,kDAAAA,WAAWa,aAAaK,yBAAmB,QAA3ClB,iDAAAA,WAAAA,6CAA6CqB,QAC9C;AACArB,eAAWK,gBAAgB,SAACW,MAAAA;aAAU,qBAAA,eAAA,CAAA,GACjCA,IAAAA,GAAAA;QACHE,qBAAqB;QACrBJ,mBAAmB;;;AAErB;EACF;AAEA,MAAIf,SAASoB,QAAQ;AACnB,QAAIjB,SAASa,aAAa,oBAAoB;AAC5Cd,eAAS,SAAA;AACT;IACF;AACAD,eAAWsB,QAAO;AAClB;EACF;AAEA,MACEtB,aAAWa,aAAaK,wBACvBnB,SAASwB,WAAWxB,SAASyB,aAIhC;QACEzB,SAAS0B,UACT,EAACzB,mDAAAA,WAAWa,aAAaK,yBAAmB,QAA3ClB,kDAAAA,WAAAA,8CAA6CqB,UAC9CrB,WAAWa,aAAaC,mBACxB;AACApB,WAAK,iCAAA;AACL;IACF;AAEA,QAAIK,SAASwB,SAAS;AACpBpB,4BAAsB,MAAMC,uBAAuBD,sBAAsB,CAAA;AACzE;IACF;AAEA,QAAIJ,SAASyB,WAAW;AACtBrB,4BAAsBH,WAAWM,cAAcoB,SAAS,KACtDtB,uBAAuBD,sBAAsB,CAAA;AAC/C;IACF;AAEA,QAAIJ,SAAS0B,QAAQ;UAKcnB;AAJjCD,sBAAgB,SAACW,MAAAA;YAEMV;eAFI,qBAAA,eAAA,CAAA,GACtBU,IAAAA,GAAAA;UACHE,sBAAqBZ,sCAAAA,cAAcH,mBAAAA,OAAoB,QAAlCG,wCAAAA,SAAAA,SAAAA,oCAAoCqB;;UAE3DhC,SAAS,yBAAwBW,qCAAAA,cAAcH,mBAAAA,OAAoB,QAAlCG,uCAAAA,SAAAA,SAAAA,mCAAoCqB,IAAI,GACzE1B,SAAS,kBAAA;AACT;IACF;;AACF;",
5
+ "names": ["open", "debugLog", "tokenStore", "handleGlobalKeyPress", "key", "modifier", "appContext", "navigate", "location", "selectedResultIndex", "setSelectedResultIndex", "setInstallState", "searchResults", "setCopyingToClipboard", "setConfirmationPending", "ctrl", "clear", "console", "warn", "installState", "shouldOpenBrowser", "pathname", "prev", "componentToInstall", "installingComponent", "escape", "isTokenInstalled", "isOSS", "exitApp", "upArrow", "downArrow", "return", "length", "item"]
6
+ }
@@ -0,0 +1,41 @@
1
+ import Fuse from "fuse.js";
2
+ import { Box, Text } from "ink";
3
+ import TextInput from "ink-text-input";
4
+ import React, { useEffect } from "react";
5
+ import { useLocation } from "react-router-dom";
6
+ import { ResultsCounter } from "../cli-components/index.js";
7
+ import { componentsList } from "../components.js";
8
+ import { AppContext } from "../data/AppContext.js";
9
+ import { jsx, jsxs } from "react/jsx-runtime";
10
+ const SearchBar = () => {
11
+ const location = useLocation(), appContext = React.useContext(AppContext), performSearch = (query) => new Fuse(componentsList, {
12
+ keys: ["name", "category", "categorySection"]
13
+ }).search(query);
14
+ useEffect(() => {
15
+ appContext.setSearchInput("");
16
+ }, [location.pathname]);
17
+ const handleInputChange = (value) => {
18
+ if (location.pathname !== "/search" || appContext.installState.installingComponent?.isOSS) return;
19
+ appContext.setSearchInput(value);
20
+ const results = performSearch(value);
21
+ appContext.setSearchResults(results), appContext.setSelectedResultIndex(-1);
22
+ };
23
+ return /* @__PURE__ */ jsxs(Box, { marginX: 1, justifyContent: "space-between", children: [
24
+ /* @__PURE__ */ jsxs(Box, { children: [
25
+ /* @__PURE__ */ jsx(Text, { bold: !0, children: "Search: " }),
26
+ /* @__PURE__ */ jsx(
27
+ TextInput,
28
+ {
29
+ value: appContext.searchInput,
30
+ onChange: handleInputChange,
31
+ marginRight: "auto"
32
+ }
33
+ )
34
+ ] }),
35
+ /* @__PURE__ */ jsx(ResultsCounter, {})
36
+ ] });
37
+ };
38
+ export {
39
+ SearchBar
40
+ };
41
+ //# sourceMappingURL=SearchBar.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/cli-components/SearchBar.tsx"],
4
+ "mappings": "AAAA,OAAO,UAAU;AACjB,SAAS,KAAK,YAAY;AAC1B,OAAO,eAAe;AACtB,OAAO,SAAS,iBAAiB;AACjC,SAAS,mBAAmB;AAE5B,SAAS,sBAAsB;AAC/B,SAAS,sBAAsB;AAC/B,SAAS,kBAAkB;AA8BrB,SACE,KADF;AA5BC,MAAM,YAAY,MAAM;AAC7B,QAAM,WAAW,YAAY,GACvB,aAAa,MAAM,WAAW,UAAU,GAGxC,gBAAgB,CAAC,UACR,IAAI,KAAK,gBAAgB;AAAA,IACpC,MAAM,CAAC,QAAQ,YAAY,iBAAiB;AAAA,EAC9C,CAAC,EACW,OAAO,KAAK;AAG1B,YAAU,MAAM;AAEd,eAAW,eAAe,EAAE;AAAA,EAC9B,GAAG,CAAC,SAAS,QAAQ,CAAC;AAEtB,QAAM,oBAAoB,CAAC,UAAkB;AAE3C,QADI,SAAS,aAAa,aACrB,WAAW,aAAqB,qBAAqB,MAAO;AACjE,eAAW,eAAe,KAAK;AAC/B,UAAM,UAAU,cAAc,KAAK;AACnC,eAAW,iBAAiB,OAAO,GACnC,WAAW,uBAAuB,EAAE;AAAA,EACtC;AAEA,SACE,qBAAC,OAAI,SAAS,GAAG,gBAAe,iBAC9B;AAAA,yBAAC,OACC;AAAA,0BAAC,QAAK,MAAI,IAAC,sBAAQ;AAAA,MACnB;AAAA,QAAC;AAAA;AAAA,UACC,OAAO,WAAW;AAAA,UAClB,UAAU;AAAA,UAEV,aAAa;AAAA;AAAA,MACf;AAAA,OACF;AAAA,IACA,oBAAC,kBAAe;AAAA,KAClB;AAEJ;",
5
+ "names": []
6
+ }
@@ -0,0 +1,41 @@
1
+ import Fuse from "fuse.js";
2
+ import { Box, Text } from "ink";
3
+ import TextInput from "ink-text-input";
4
+ import React, { useEffect } from "react";
5
+ import { useLocation } from "react-router-dom";
6
+ import { ResultsCounter } from "../cli-components/index.js";
7
+ import { componentsList } from "../components.js";
8
+ import { AppContext } from "../data/AppContext.js";
9
+ import { jsx, jsxs } from "react/jsx-runtime";
10
+ const SearchBar = () => {
11
+ const location = useLocation(),
12
+ appContext = React.useContext(AppContext),
13
+ performSearch = query => new Fuse(componentsList, {
14
+ keys: ["name", "category", "categorySection"]
15
+ }).search(query);
16
+ useEffect(() => {
17
+ appContext.setSearchInput("");
18
+ }, [location.pathname]);
19
+ const handleInputChange = value => {
20
+ if (location.pathname !== "/search" || appContext.installState.installingComponent?.isOSS) return;
21
+ appContext.setSearchInput(value);
22
+ const results = performSearch(value);
23
+ appContext.setSearchResults(results), appContext.setSelectedResultIndex(-1);
24
+ };
25
+ return /* @__PURE__ */jsxs(Box, {
26
+ marginX: 1,
27
+ justifyContent: "space-between",
28
+ children: [/* @__PURE__ */jsxs(Box, {
29
+ children: [/* @__PURE__ */jsx(Text, {
30
+ bold: !0,
31
+ children: "Search: "
32
+ }), /* @__PURE__ */jsx(TextInput, {
33
+ value: appContext.searchInput,
34
+ onChange: handleInputChange,
35
+ marginRight: "auto"
36
+ })]
37
+ }), /* @__PURE__ */jsx(ResultsCounter, {})]
38
+ });
39
+ };
40
+ export { SearchBar };
41
+ //# sourceMappingURL=SearchBar.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Fuse","Box","Text","TextInput","React","useEffect","useLocation","ResultsCounter","componentsList","AppContext","jsx","jsxs","SearchBar","location","appContext","useContext","performSearch","query","keys","search","setSearchInput","pathname","handleInputChange","value","installState","installingComponent","isOSS","results","setSearchResults","setSelectedResultIndex","marginX","justifyContent","children","bold","searchInput","onChange","marginRight"],"sources":["../../src/cli-components/SearchBar.tsx"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,IAAA,MAAU;AACjB,SAASC,GAAA,EAAKC,IAAA,QAAY;AAC1B,OAAOC,SAAA,MAAe;AACtB,OAAOC,KAAA,IAASC,SAAA,QAAiB;AACjC,SAASC,WAAA,QAAmB;AAE5B,SAASC,cAAA,QAAsB;AAC/B,SAASC,cAAA,QAAsB;AAC/B,SAASC,UAAA,QAAkB;AA8BrB,SACEC,GAAA,EADFC,IAAA;AA5BC,MAAMC,SAAA,GAAYA,CAAA,KAAM;EAC7B,MAAMC,QAAA,GAAWP,WAAA,CAAY;IACvBQ,UAAA,GAAaV,KAAA,CAAMW,UAAA,CAAWN,UAAU;IAGxCO,aAAA,GAAiBC,KAAA,IACR,IAAIjB,IAAA,CAAKQ,cAAA,EAAgB;MACpCU,IAAA,EAAM,CAAC,QAAQ,YAAY,iBAAiB;IAC9C,CAAC,EACWC,MAAA,CAAOF,KAAK;EAG1BZ,SAAA,CAAU,MAAM;IAEdS,UAAA,CAAWM,cAAA,CAAe,EAAE;EAC9B,GAAG,CAACP,QAAA,CAASQ,QAAQ,CAAC;EAEtB,MAAMC,iBAAA,GAAqBC,KAAA,IAAkB;IAE3C,IADIV,QAAA,CAASQ,QAAA,KAAa,aACrBP,UAAA,CAAWU,YAAA,CAAqBC,mBAAA,EAAqBC,KAAA,EAAO;IACjEZ,UAAA,CAAWM,cAAA,CAAeG,KAAK;IAC/B,MAAMI,OAAA,GAAUX,aAAA,CAAcO,KAAK;IACnCT,UAAA,CAAWc,gBAAA,CAAiBD,OAAO,GACnCb,UAAA,CAAWe,sBAAA,CAAuB,EAAE;EACtC;EAEA,OACE,eAAAlB,IAAA,CAACV,GAAA;IAAI6B,OAAA,EAAS;IAAGC,cAAA,EAAe;IAC9BC,QAAA,kBAAArB,IAAA,CAACV,GAAA;MACC+B,QAAA,kBAAAtB,GAAA,CAACR,IAAA;QAAK+B,IAAA,EAAI;QAACD,QAAA;MAAA,CAAQ,GACnB,eAAAtB,GAAA,CAACP,SAAA;QACCoB,KAAA,EAAOT,UAAA,CAAWoB,WAAA;QAClBC,QAAA,EAAUb,iBAAA;QAEVc,WAAA,EAAa;MAAA,CACf;IAAA,CACF,GACA,eAAA1B,GAAA,CAACH,cAAA,IAAe;EAAA,CAClB;AAEJ","ignoreList":[]}
@@ -0,0 +1,59 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import Fuse from "fuse.js";
3
+ import { Box, Text } from "ink";
4
+ import TextInput from "ink-text-input";
5
+ import React, { useEffect } from "react";
6
+ import { useLocation } from "react-router-dom";
7
+ import { ResultsCounter } from "../cli-components/index.js";
8
+ import { componentsList } from "../components.js";
9
+ import { AppContext } from "../data/AppContext.js";
10
+ var SearchBar = function() {
11
+ var location = useLocation(), appContext = React.useContext(AppContext), performSearch = function(query) {
12
+ var fuse = new Fuse(componentsList, {
13
+ keys: [
14
+ "name",
15
+ "category",
16
+ "categorySection"
17
+ ]
18
+ });
19
+ return fuse.search(query);
20
+ };
21
+ useEffect(function() {
22
+ appContext.setSearchInput("");
23
+ }, [
24
+ location.pathname
25
+ ]);
26
+ var handleInputChange = function(value) {
27
+ var _appContext_installState_installingComponent;
28
+ if (location.pathname === "/search" && !(!((_appContext_installState_installingComponent = appContext.installState.installingComponent) === null || _appContext_installState_installingComponent === void 0) && _appContext_installState_installingComponent.isOSS)) {
29
+ appContext.setSearchInput(value);
30
+ var results = performSearch(value);
31
+ appContext.setSearchResults(results), appContext.setSelectedResultIndex(-1);
32
+ }
33
+ };
34
+ return /* @__PURE__ */ _jsxs(Box, {
35
+ marginX: 1,
36
+ justifyContent: "space-between",
37
+ children: [
38
+ /* @__PURE__ */ _jsxs(Box, {
39
+ children: [
40
+ /* @__PURE__ */ _jsx(Text, {
41
+ bold: !0,
42
+ children: "Search: "
43
+ }),
44
+ /* @__PURE__ */ _jsx(TextInput, {
45
+ value: appContext.searchInput,
46
+ onChange: handleInputChange,
47
+ // @ts-ignore
48
+ marginRight: "auto"
49
+ })
50
+ ]
51
+ }),
52
+ /* @__PURE__ */ _jsx(ResultsCounter, {})
53
+ ]
54
+ });
55
+ };
56
+ export {
57
+ SearchBar
58
+ };
59
+ //# sourceMappingURL=SearchBar.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/cli-components/Users/n8/tamagui/code/packages/bento-get/src/cli-components/SearchBar.tsx"],
4
+ "mappings": ";AAAA,OAAOA,UAAU;AACjB,SAASC,KAAKC,YAAY;AAC1B,OAAOC,eAAe;AACtB,OAAOC,SAASC,iBAAiB;AACjC,SAASC,mBAAmB;AAE5B,SAASC,sBAAsB;AAC/B,SAASC,sBAAsB;AAC/B,SAASC,kBAAkB;AAEpB,IAAMC,YAAY,WAAA;AACvB,MAAMC,WAAWL,YAAAA,GACXM,aAAaR,MAAMS,WAAWJ,UAAAA,GAG9BK,gBAAgB,SAACC,OAAAA;AACrB,QAAMC,OAAO,IAAIhB,KAAKQ,gBAAgB;MACpCS,MAAM;QAAC;QAAQ;QAAY;;IAC7B,CAAA;AACA,WAAOD,KAAKE,OAAOH,KAAAA;EACrB;AAEAV,YAAU,WAAA;AAERO,eAAWO,eAAe,EAAA;EAC5B,GAAG;IAACR,SAASS;GAAS;AAEtB,MAAMC,oBAAoB,SAACC,OAAAA;QAErB;AADJ,QAAIX,SAASS,aAAa,aACtB,oDAACR,WAAWW,aAAqBC,yBAAmB,QAApD,iDAAA,WAAA,6CAAsDC,QAC1Db;iBAAWO,eAAeG,KAAAA;AAC1B,UAAMI,UAAUZ,cAAcQ,KAAAA;AAC9BV,iBAAWe,iBAAiBD,OAAAA,GAC5Bd,WAAWgB,uBAAuB,EAAC;;EACrC;AAEA,SACE,sBAAC3B,KAAAA;IAAI4B,SAAS;IAAGC,gBAAe;;MAC9B,sBAAC7B,KAAAA;;UACC,qBAACC,MAAAA;YAAK6B,MAAI;sBAAC;;UACX,qBAAC5B,WAAAA;YACCmB,OAAOV,WAAWoB;YAClBC,UAAUZ;;YAEVa,aAAa;;;;MAGjB,qBAAC3B,gBAAAA,CAAAA,CAAAA;;;AAGP;",
5
+ "names": ["Fuse", "Box", "Text", "TextInput", "React", "useEffect", "useLocation", "ResultsCounter", "componentsList", "AppContext", "SearchBar", "location", "appContext", "useContext", "performSearch", "query", "fuse", "keys", "search", "setSearchInput", "pathname", "handleInputChange", "value", "installState", "installingComponent", "isOSS", "results", "setSearchResults", "setSelectedResultIndex", "marginX", "justifyContent", "bold", "searchInput", "onChange", "marginRight"]
6
+ }