Didn't have the chance to migrate //all// templates just yet. We'll get there.
* Implement yet another template system
* Move orphans to the new system and fix a bug in it
* Link orphans in the admin panel
* Move the backlink handlers to the web package
* Move auth routing to web
* Move /user-list to the new system
* Move change password and translate it
* Move stuff
* Move admin-related stuff to the web
* Move a lot of files into internal dir
Outside of it are web and stuff that needs further refactoring
* Fix static not loading and de-qtpl tree
* Move tree to internal
* Keep the globe on the same line #230
* Revert "Keep the globe on the same line #230"
This reverts commit ae78e5e459.
* Migrate templates from hypview: delete, edit, start empty and existing WIP
The delete media view was removed, I didn't even know it still existed as a GET. A rudiment.
* Make views multi-file and break compilation
* Megarefactoring of hypha views
* Auth-related stuffs
* Fix some of those weird imports
* Migrate cat views
* Fix cat js
* Lower standards
* Internalize trauma
27 lines
1013 B
JavaScript
27 lines
1013 B
JavaScript
const $ = document.querySelector.bind(document)
|
|
const $$ = (...args) => Array.prototype.slice.call(document.querySelectorAll(...args))
|
|
const isMac = /Macintosh/.test(window.navigator.userAgent)
|
|
const arrToStr = a => Array.isArray(a) ? a.join('') : a
|
|
const strToArr = a => Array.isArray(a) ? a : [a]
|
|
|
|
const rrh = {
|
|
html(s, ...parts) {
|
|
s = s.reduce((acc, cur, i) => (`${acc}${cur}${parts[i] ? arrToStr(parts[i]) : ''}`), '')
|
|
const wrapper = document.createElement('div')
|
|
wrapper.innerHTML = s
|
|
return wrapper.children[0]
|
|
},
|
|
|
|
l10nMap: {},
|
|
l10n(text, translations) {
|
|
// Choose the translation on load to be consistent with the
|
|
// server-rendered interface.
|
|
if (translations) {
|
|
translations.en = text
|
|
this.l10nMap[text] = translations[navigator.languages
|
|
.map(lang => lang.split('-')[0])
|
|
.find(lang => translations[lang])] || text
|
|
}
|
|
return this.l10nMap[text] || text
|
|
},
|
|
} |