ox_lib
Last updated
ox_lib\resource\interface\client\notify.lua [Replace Full File]
Last updated
---@class NotifyProps
---@field id? string
---@field title? string
---@field description? string
---@field message? string
---@field duration? number
---@field type? string
---@field status? string
-- Maps ox_lib type aliases β nm1-classynotify type keys
local typeMap = {
[0] = 'info',
[1] = 'success',
[2] = 'error',
[3] = 'warning',
inform = 'info',
primary = 'info',
secondary = 'default',
dark = 'default',
}
local function resolveType(t)
return typeMap[t] or t or 'default'
end
---@param data NotifyProps
function lib.notify(data)
if not data then return end
local ok, err = pcall(function()
exports['nm1-classynotify']:Notify({
type = resolveType(data.type or data.status),
title = data.title,
message = data.description or data.message,
duration = data.duration,
})
end)
if not ok then
-- nm1-classynotify not available β print once and do nothing
print('^3[nm1-classynotify] Bridge warning: ' .. tostring(err) .. '^7')
end
end
---@param data NotifyProps
function lib.defaultNotify(data)
if not data then return end
lib.notify({
type = resolveType(data.status or data.type),
title = data.title,
message = data.description or data.message,
duration = data.duration,
})
end