[{"data":1,"prerenderedAt":87},["ShallowReactive",2],{"site":3,"config-slug-site":15,"config-product-en-x3d-notify":21,"config-public-x3d-notify":82},{"site":4,"contact":10,"seo":13,"payment":14},{"name":5,"host":6,"default_locale":7,"locales":8},"X3D Developer","fivem.x3d-developer.com","th",[7,9],"en",{"discord_invite":11,"email":12,"line":12},"https:\u002F\u002Fdiscord.gg\u002FNA5kPVynFv","",{"google_site_verification":12,"bing_site_verification":12},{"bank_name":12,"account_name":12,"account_no":12,"promptpay_id":12},{"site":16,"contact":18,"seo":19,"payment":20},{"name":5,"host":6,"default_locale":7,"locales":17},[7,9],{"discord_invite":11,"email":12,"line":12},{"google_site_verification":12,"bing_site_verification":12},{"bank_name":12,"account_name":12,"account_no":12,"promptpay_id":12},{"id":22,"slug":23,"name":24,"summary":25,"price_thb":26,"license_mode":27,"cover_key":28,"cover_url":29,"category_slugs":30,"tags":32,"latest_version":51,"latest_released_at":52,"published_at":53,"has_docs":54,"config":55,"rent_price_satang":56,"description_md":57,"docs_md":58,"seo_title":59,"seo_description":60,"media":61,"versions":71},"9b62b8ed-5911-47a8-b695-3320a6183758","x3d-notify","X3D Notify","Notification cards in nine positions, with item icons and rarity frames, and full Thai support.",0,"none","public\u002Fproducts\u002Fx3d-notify\u002Fcover\u002F4a9cbdcedd86a149.jpg","\u002Fapi\u002Fv1\u002Fmedia\u002Fpublic\u002Fproducts\u002Fx3d-notify\u002Fcover\u002F4a9cbdcedd86a149.jpg",[31],"hud",[33,34,35,36,37,38,39,31,40,41,42,43,44,45,46,47,48,49,50],"notify","notification","แจ้งเตือน","แจ้งเตือน fivem","esx_notify","esx notify","ui","ฟอนต์ไทย","ไอคอนไอเทม","esx","ฟรี","free","การ์ดแจ้งเตือน","กรอบความหายาก","แจ้งเตือน 9 ตำแหน่ง","สีในข้อความ","แทน esx_notify","แจ้งเตือนไอเทม","1.1.4","2026-10-12T17:20:21.047259Z","2026-09-24T01:21:40.547491Z",true,"public",null,"Notification cards for FiveM servers. Nine positions around the screen, item icons with rarity frames, and an embedded Thai font so text never turns into boxes.\r\n\r\nFits any city style (school \u002F community \u002F RP) and works with ESX or standalone.\r\n\r\n---\r\n\r\n## Features\r\n\r\n- [+] Place cards in 9 screen positions, with the default set in config\r\n- [+] Show an item icon and a rarity frame on any card\r\n- [+] 4 types (success \u002F error \u002F warning \u002F info) drive colour and icon\r\n- [+] Inline colour codes in the message, like ~r~ red ~g~ green ~y~ yellow\r\n- [+] Set your own title and the display time of each card\r\n- [+] Notification sound can be switched on or off in config or at runtime\r\n- [+] Clear every card left on screen with a single export\r\n- [+] Embedded Thai font, so Thai renders as text\r\n- [+] Old scripts calling esx_notify keep working with no edits\r\n- [+] Easy setup: tune everything in config, or set it from the web builder\r\n\r\n---\r\n\r\n## Licence\r\n\r\nBased on **esx_notify** from the ESX Legacy project, Copyright (C) 2022-2024 ESX-Framework, under the **GNU GPL v3**. Modifications Copyright (C) 2026 X3D-Developer. The full modification list is in the README inside the download.\r\n","## Installation\n\n```\nensure x3d_notify\n```\n\nRemove the stock `esx_notify` first, since two of them open overlapping NUIs.\n\n**Old scripts still call `exports['esx_notify']`?** Move `optional\u002Fesx_notify\u002F` into `resources\u002F` and `ensure esx_notify` after `x3d_notify`. It is a twelve-line forwarder, so nothing you already run has to change.\n\n```\nensure x3d_notify\nensure esx_notify      # only if old scripts call that name\n```\n\n## Configuration (config.lua)\n\n| Key | Default | Meaning |\n|---|---|---|\n| `Config.position` | `middle-right` | Default card position (used when a call gives none) |\n| `Config.notificationSoundEnabled` | `true` | Play the notification sound |\n| `Config.Debug` | `false` | Print every notification to the client console |\n\n## Usage\n\n```lua\n-- client\nexports['x3d_notify']:Notify(type, length, message, title, position, icon, iconBg)\nexports['x3d_notify']:Success(message, length, title, position)\nexports['x3d_notify']:Error(message, length, title, position)\nexports['x3d_notify']:Warning(message, length, title, position)\nexports['x3d_notify']:Info(message, length, title, position)\nexports['x3d_notify']:ClearAll()\nexports['x3d_notify']:SetConfig(position, soundEnabled)\n\n-- server\nTriggerClientEvent('ESX:Notify', source, type, length, message, title, position)\n```\n\n`type` is `success`, `error`, `warning` or `info` and drives the colour and icon.\n`length` is the display time in milliseconds, 3000 when omitted.\n`title` is whatever you pass; when omitted the card shows the type name.\n`icon` \u002F `iconBg` are the item image and the rarity frame image.\n`position` is `top-right`, `top-left`, `top-center`, `bottom-right`, `bottom-left`, `bottom-center`, `left-center`, `right-center` or `center`; when omitted `Config.position` is used.\n\n### Colour codes\n\n`~r~` red, `~g~` green, `~b~` blue, `~y~` yellow, `~p~` purple, `~o~` orange, `~s~` reset, `~br~` line break.\n\n```lua\nexports['x3d_notify']:Error('Not enough cash, need ~r~$5,000~s~', 4000, 'Payment')\n```\n\n## Test command\n\nType `\u002Ftestnotify` in game to check that cards appear.\n","Free FiveM notifications — 9 positions, item icons","Notification cards for ESX in nine positions around the screen, with item icons, rarity frames, inline colour codes and an embedded Thai font.",[62,65,67,69],{"kind":63,"url":64},"image","\u002Fapi\u002Fv1\u002Fmedia\u002Fpublic\u002Fproducts\u002Fx3d-notify\u002Fmedia\u002F71807603939796d7.png",{"kind":63,"url":66},"\u002Fapi\u002Fv1\u002Fmedia\u002Fpublic\u002Fproducts\u002Fx3d-notify\u002Fmedia\u002F47f52f279d014567.png",{"kind":63,"url":68},"\u002Fapi\u002Fv1\u002Fmedia\u002Fpublic\u002Fproducts\u002Fx3d-notify\u002Fmedia\u002F5945e19eaa3e9d02.png",{"kind":63,"url":70},"\u002Fapi\u002Fv1\u002Fmedia\u002Fpublic\u002Fproducts\u002Fx3d-notify\u002Fmedia\u002Fb207dffa708fbc9c.png",[72,74,78],{"version":51,"released_at":52,"changelog_md":73},"### Changed\n\n- Store image for the 9 card positions no longer sits under its caption",{"version":75,"released_at":76,"changelog_md":77},"1.1.1","2026-10-12T03:20:30.950025Z","### Changed\n\n- UI font is now Kanit (one family for Thai and English), bundled inside the script; the Thai font now really loads in game (FiveM's browser dropped the old font declaration and fell back to a system font)",{"version":79,"released_at":80,"changelog_md":81},"1.0.0","2026-09-24T01:21:29.390212Z","First public release. Based on ESX Legacy `esx_notify` 1.13.4 (GPL-3.0).\r\n\r\n### Added\r\n\r\n- Nine card positions instead of four: the corners, each edge centre and the middle\r\n- Item icons with rarity frames, through the `icon` and `iconBg` parameters\r\n- `SetConfig` for the default position and sound, and `ClearAll` to clear the screen\r\n- A forwarding shim under `optional\u002F` keeps `exports['esx_notify']` working after the rename\r\n\r\n### Changed\r\n\r\n- The card UI is a Vue rewrite, replacing the original static HTML, CSS and JS\r\n- Noto Sans Thai embedded, so Thai renders as text\r\n- The cc_i18n include is gone",{"slug":23,"version":51,"latest_version":51,"files":83,"options":56},[84],{"path":85,"content":86},"config.lua","Config = {}\r\n\r\n-- ===== การแสดงผล \u002F Display =====\r\n\r\n-- ตำแหน่งเริ่มต้นของการ์ด ใช้เมื่อสคริปต์ที่เรียกไม่ระบุตำแหน่ง \u002F Default card position, used when the caller gives none\r\n-- ตัวเลือก \u002F Options: top-right, top-left, top-middle, bottom-right, bottom-left, bottom-middle, middle-left, middle-right\r\nConfig.position = \"middle-right\"\r\n\r\n-- ===== เสียง \u002F Sound =====\r\n\r\n-- เปิดเสียงแจ้งเตือน \u002F Enable notification sounds\r\nConfig.notificationSoundEnabled = true\r\n\r\n-- ===== ดีบัก \u002F Debug =====\r\n\r\n-- พิมพ์ทุกการแจ้งเตือนลงคอนโซล client \u002F Print every notification (type\u002Flength\u002Fmessage\u002F...) to the client console\r\nConfig.Debug = false\r\n",1792316315771]