/
githubmirror
/
pocketbase
Обзор
Документация
Войти
/
githubmirror
/
pocketbase
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
ui/src/base/formattedDate.js
54 строки
2 KB
Gani Georgiev
merge newui branch
18 апр 2026, 16:50
18 апр 2026, 16:50
4c44044
Код
Авторство
О чём код?
window.app = window.app || {}; window.app.components = window.app.components || {}; const tzName = Intl.DateTimeFormat().resolvedOptions().timeZone; window.app.components.formattedDate = function(propsArg = {}) { const props = store({ rid: undefined, id: undefined, hidden: undefined, value: "", short: false, }); const watchers = app.utils.extendStore(props, propsArg); return t.div( { rid: props.rid, id: () => props.id, hidden: () => props.hidden, ariaDescription: app.attrs.tooltip(() => { if (props.short && !!props.value) { return app.utils.toLocalDatetime(props.value) + "\n" + tzName; } return null; }), "html-class": "formatted-date", className: () => `formatted-date ${props.short ? "short" : "full"}`, onunmount: () => { watchers.forEach((w) => w?.unwatch()); }, }, () => { if (!props.value) { return t.span({ className: "missing-value" }); } if (props.short) { const parts = props.value.split(" "); return [ t.span({ className: "primary-date" }, parts[0]), t.span({ className: "secondary-date" }, parts[1]), ]; } return [ t.span({ className: "primary-date" }, app.utils.toLocalDatetime(props.value)), t.span({ className: "secondary-date" }, props.value), ]; }, ); };