├── .gitignore
├── web
├── src
│ ├── styles
│ │ └── .gitkeep
│ ├── components
│ │ ├── .gitkeep
│ │ ├── Crafting
│ │ │ ├── Button
│ │ │ │ ├── index.module.css
│ │ │ │ └── index.tsx
│ │ │ ├── Item
│ │ │ │ ├── index.module.css
│ │ │ │ └── index.tsx
│ │ │ ├── Blueprint
│ │ │ │ ├── index.module.css
│ │ │ │ └── index.tsx
│ │ │ ├── index.module.css
│ │ │ └── index.tsx
│ │ ├── Info
│ │ │ ├── Queue
│ │ │ │ ├── index.module.css
│ │ │ │ └── index.tsx
│ │ │ ├── Required
│ │ │ │ ├── index.module.css
│ │ │ │ └── index.tsx
│ │ │ ├── Item
│ │ │ │ ├── index.module.css
│ │ │ │ └── index.tsx
│ │ │ ├── Bottom
│ │ │ │ ├── index.module.css
│ │ │ │ └── index.tsx
│ │ │ ├── index.module.css
│ │ │ └── index.tsx
│ │ └── Popup
│ │ │ ├── index.module.css
│ │ │ └── index.tsx
│ ├── vite-env.d.ts
│ ├── types
│ │ ├── craft.ts
│ │ ├── queue.ts
│ │ └── crafting.ts
│ ├── assests
│ │ └── seguibl.ttf
│ ├── utils
│ │ ├── checkFave.ts
│ │ ├── misc.ts
│ │ ├── sendNui.ts
│ │ ├── getThemeVariables.ts
│ │ ├── debugData.ts
│ │ ├── fetchNui.ts
│ │ └── updateRipples.ts
│ ├── index.module.css
│ ├── main.tsx
│ ├── store
│ │ ├── stores
│ │ │ ├── config
│ │ │ │ └── config.ts
│ │ │ ├── crafting
│ │ │ │ ├── ui.ts
│ │ │ │ ├── queue.ts
│ │ │ │ └── crafting.ts
│ │ │ └── popup
│ │ │ │ └── popup.ts
│ │ └── store.ts
│ ├── hooks
│ │ └── useNuiEvent.ts
│ ├── style.css
│ ├── providers
│ │ └── VisibilityProvider.tsx
│ └── App.tsx
├── build
│ ├── assets
│ │ ├── seguibl.4098759b.ttf
│ │ ├── fa-brands-400.5656d596.ttf
│ │ ├── fa-solid-900.fbbf06d7.ttf
│ │ ├── fa-brands-400.3a8924cd.woff2
│ │ ├── fa-regular-400.5d02dc9b.ttf
│ │ ├── fa-solid-900.9fc85f3a.woff2
│ │ ├── fa-regular-400.2bccecf0.woff2
│ │ ├── fa-v4compatibility.09663a36.ttf
│ │ ├── fa-v4compatibility.4d4a2d7f.woff2
│ │ ├── index.c1bfc35e.css
│ │ └── index.f5b612d0.js
│ └── index.html
├── tsconfig.node.json
├── vite.config.ts
├── .gitignore
├── index.html
├── .eslintrc.cjs
├── tsconfig.json
└── package.json
├── client
├── target
│ ├── standalone.lua
│ ├── qb.lua
│ └── ox.lua
├── framework
│ ├── notify.lua
│ ├── customChecks.lua
│ ├── qbox
│ │ └── events.lua
│ ├── standalone
│ │ └── events.lua
│ ├── esx
│ │ └── events.lua
│ └── qbcore
│ │ └── events.lua
├── nuiFunctions.lua
├── blueprints
│ └── events.lua
├── raycast.lua
├── open.lua
├── benches
│ ├── objects.lua
│ ├── setup.lua
│ └── placing.lua
├── events.lua
├── nuiCallbacks.lua
└── zones
│ └── zones.lua
├── INSTALLFILES
├── images
│ ├── pure_bench.png
│ └── pure_blueprint.png
└── sql
│ └── crafting.sql
├── server
├── framework
│ ├── notify.lua
│ ├── customChecks.lua
│ ├── qbcore
│ │ └── functions.lua
│ ├── qbox
│ │ └── functions.lua
│ ├── esx
│ │ └── functions.lua
│ └── standalone
│ │ └── functions.lua
├── craft
│ ├── craft.lua
│ ├── claimCraft.lua
│ └── craftItem.lua
├── modules
│ ├── callbacks.lua
│ ├── faves.lua
│ ├── items.lua
│ └── events.lua
├── inventory
│ ├── esxInventory.lua
│ ├── psInventory.lua
│ ├── qsInventory.lua
│ ├── qbInventory.lua
│ └── oxInventory.lua
├── queue.lua
├── benches
│ ├── placing.lua
│ └── initiate.lua
└── blueprints
│ └── blueprints.lua
├── locales
├── locales.lua
└── translations
│ └── en.lua
├── README.md
├── config
├── themes.json
├── config.lua
├── item_blueprints.lua
└── items.lua
├── fxmanifest.lua
└── shared
└── functions.lua
/.gitignore:
--------------------------------------------------------------------------------
1 | .idea
--------------------------------------------------------------------------------
/web/src/styles/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/client/target/standalone.lua:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/web/src/components/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/web/src/vite-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
(events: DebugEvent
[], timer = 1000): void => {
9 | if (import.meta.env.MODE === 'development' && isEnvBrowser()) {
10 | for (const event of events) {
11 | setTimeout(() => {
12 | window.dispatchEvent(
13 | new MessageEvent('message', {
14 | data: {
15 | action: event.action,
16 | data: event.data,
17 | },
18 | }),
19 | );
20 | }, timer);
21 | }
22 | }
23 | };
24 |
--------------------------------------------------------------------------------
/web/src/utils/fetchNui.ts:
--------------------------------------------------------------------------------
1 | import { isEnvBrowser } from "./misc";
2 |
3 | export async function fetchNui
29 | {props.myAmount}/{props.amount * number}
30 | - +
75 | {language.craftTime}{' '}
76 |
80 | {item ? item.craftingTime : 0}
81 | {language.s}
82 |
83 |
98 | {language.uses}{' '}
99 |
103 | 1
104 |
105 |
196 | {language.craftTime}{' '}
197 |
201 | {item ? item.craftingTime : 0}
202 | {language.s}
203 |
204 |
223 | {language.uses}{' '}
224 |
228 | {item ? (item.uses ? item.uses : 0) : 0}
229 |
230 |
24 |
37 | {props.name}
38 |
39 |
40 |
45 | {props.name}
46 |
47 |
52 |
57 | {props.name}
58 |
59 |
36 | {language.unlockBP}
37 |
38 | {popup.popupTitle}
30 | {popup.popupText}
31 |
51 |
56 | {language.claim}
57 |
58 |
95 |
100 | {hovering ? language.cancel : props.secondsLeft + language.s}
101 |
102 | }
50 |
57 | {item ? item.name : language.noItemSelected}
58 |
59 |
60 | {item ? item.description : language.noItemSelected}
61 |
62 |
160 |
163 | )} */}
164 |
}
171 |
178 | {item ? item.name : language.noItemSelected}
179 |
180 |
181 | {item ? item.description : language.noItemSelected}
182 |
183 |
242 | {language.required}
243 |
244 |