waibu-bootstrap 2.6.2 → 2.6.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -3,8 +3,8 @@ import { css, scripts, inlineScript, handler } from './form-datetime.js'
|
|
|
3
3
|
async function formDate () {
|
|
4
4
|
return class FormDate extends this.app.baseClass.MpaWidget {
|
|
5
5
|
static css = [...super.css, ...css]
|
|
6
|
-
static scripts =
|
|
7
|
-
static inlineScript = inlineScript
|
|
6
|
+
static scripts = scripts
|
|
7
|
+
static inlineScript = inlineScript
|
|
8
8
|
|
|
9
9
|
build = async () => {
|
|
10
10
|
const { set } = this.app.lib._
|
|
@@ -2,16 +2,21 @@ import { buildFormInput } from './_lib.js'
|
|
|
2
2
|
import { build } from './form-input.js'
|
|
3
3
|
|
|
4
4
|
export const css = ['waibuExtra.virtual:/tempusDominus/css/tempus-dominus.min.css']
|
|
5
|
-
export function scripts (
|
|
5
|
+
export function scripts (cls) {
|
|
6
|
+
const { isFunction } = this.app.lib._
|
|
6
7
|
const items = [
|
|
7
8
|
'waibuExtra.virtual:/popperjs/umd/popper.min.js',
|
|
8
9
|
'waibuExtra.virtual:/tempusDominus/js/tempus-dominus.min.js'
|
|
9
10
|
]
|
|
10
|
-
if (req.lang === 'id') items.push('waibuExtra.asset:/js/tempus-dominus-id.js')
|
|
11
|
-
|
|
11
|
+
if (this.req.lang === 'id') items.push('waibuExtra.asset:/js/tempus-dominus-id.js')
|
|
12
|
+
else if (this.req.lang !== 'en-US') items.push(`waibuExtra.virtual:/tempusDominus/locales/${this.req.lang}.js`)
|
|
13
|
+
|
|
14
|
+
if (isFunction(cls.scripts)) return items
|
|
15
|
+
return [...cls.scripts ?? [], ...items]
|
|
12
16
|
}
|
|
13
|
-
export function inlineScript (
|
|
14
|
-
const { jsonStringify } = this.app.waibuMpa
|
|
17
|
+
export function inlineScript (cls) {
|
|
18
|
+
const { jsonStringify } = this.plugin.app.waibuMpa
|
|
19
|
+
const { isFunction } = this.app.lib._
|
|
15
20
|
const opts = {
|
|
16
21
|
display: {
|
|
17
22
|
icons: {
|
|
@@ -28,24 +33,30 @@ export function inlineScript (req) {
|
|
|
28
33
|
components: {
|
|
29
34
|
seconds: true
|
|
30
35
|
},
|
|
31
|
-
theme: req.darkMode ? 'dark' : 'light'
|
|
36
|
+
theme: this.req.darkMode ? 'dark' : 'light'
|
|
32
37
|
},
|
|
33
38
|
localization: {
|
|
34
39
|
format: 'L LTS'
|
|
35
40
|
}
|
|
36
41
|
}
|
|
37
|
-
|
|
38
|
-
|
|
42
|
+
let items = [
|
|
43
|
+
`const tdGlobalOpts = ${jsonStringify(opts, true)}`
|
|
44
|
+
]
|
|
45
|
+
if (this.req.lang !== 'en-US') {
|
|
39
46
|
items.unshift(
|
|
40
|
-
|
|
41
|
-
|
|
47
|
+
`tempusDominus.loadLocale(tempusDominus.locales.${this.req.lang})`,
|
|
48
|
+
`tempusDominus.locale(tempusDominus.locales.${this.req.lang}.name)`
|
|
42
49
|
)
|
|
43
50
|
}
|
|
44
|
-
|
|
51
|
+
items = items.join('\n')
|
|
52
|
+
if (isFunction(cls.inlineScript)) return items
|
|
53
|
+
return (cls.inlineScript ?? '') + '\n' + items
|
|
45
54
|
}
|
|
46
55
|
|
|
47
56
|
export async function handler (opts, params = {}) {
|
|
48
57
|
const { jsonStringify } = this.app.waibuMpa
|
|
58
|
+
const { generateId } = this.app.lib.aneka
|
|
59
|
+
this.params.attr.id = generateId('alpha')
|
|
49
60
|
this.params.attr['x-ref'] = 'self'
|
|
50
61
|
this.params.attr['x-data'] = `{
|
|
51
62
|
instance: null,
|
|
@@ -54,6 +65,11 @@ export async function handler (opts, params = {}) {
|
|
|
54
65
|
this.params.attr['@load.window'] = `
|
|
55
66
|
const options = _.merge({}, tdGlobalOpts, opts ?? {})
|
|
56
67
|
instance = new tempusDominus.TempusDominus($refs.self, options)
|
|
68
|
+
instance.subscribe(tempusDominus.Namespace.events.change, (e) => {
|
|
69
|
+
if (e.type === 'change.td') {
|
|
70
|
+
$dispatch('input', instance.dates.lastPicked.toISOString())
|
|
71
|
+
}
|
|
72
|
+
})
|
|
57
73
|
`
|
|
58
74
|
await build.call(this, buildFormInput, this.params)
|
|
59
75
|
}
|
|
@@ -61,8 +77,8 @@ export async function handler (opts, params = {}) {
|
|
|
61
77
|
async function formDatetime () {
|
|
62
78
|
return class FormDatetime extends this.app.baseClass.MpaWidget {
|
|
63
79
|
static css = [...super.css, ...css]
|
|
64
|
-
static scripts =
|
|
65
|
-
static inlineScript = inlineScript
|
|
80
|
+
static scripts = scripts
|
|
81
|
+
static inlineScript = inlineScript
|
|
66
82
|
|
|
67
83
|
build = async () => {
|
|
68
84
|
const { set } = this.app.lib._
|
|
@@ -3,8 +3,8 @@ import { css, scripts, inlineScript, handler } from './form-datetime.js'
|
|
|
3
3
|
async function formTime () {
|
|
4
4
|
return class FormTime extends this.app.baseClass.MpaWidget {
|
|
5
5
|
static css = [...super.css, ...css]
|
|
6
|
-
static scripts =
|
|
7
|
-
static inlineScript = inlineScript
|
|
6
|
+
static scripts = scripts
|
|
7
|
+
static inlineScript = inlineScript
|
|
8
8
|
|
|
9
9
|
build = async () => {
|
|
10
10
|
const { set } = this.app.lib._
|
package/package.json
CHANGED