@dosgato/dialog 1.2.6 → 1.2.7
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.
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
<script>import { datetimeSerialize, datetimeDeserialize } from '@txstate-mws/svelte-forms';
|
|
2
2
|
import FieldStandard from './FieldStandard.svelte';
|
|
3
3
|
import Input from './Input.svelte';
|
|
4
|
+
import { createEventDispatcher } from 'svelte';
|
|
4
5
|
let className = '';
|
|
5
6
|
export { className as class };
|
|
6
7
|
export let id = undefined;
|
|
@@ -16,23 +17,26 @@ export let related = 0;
|
|
|
16
17
|
export let extradescid = undefined;
|
|
17
18
|
export let helptext = undefined;
|
|
18
19
|
export let inputelement = undefined;
|
|
19
|
-
|
|
20
|
-
function
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
const dispatch = createEventDispatcher();
|
|
21
|
+
function onChange(setVal) {
|
|
22
|
+
return () => {
|
|
23
|
+
if (inputelement) {
|
|
24
|
+
const date = new Date(inputelement.value);
|
|
25
|
+
const invalid = inputelement.validity.badInput || !(date instanceof Date && !isNaN(date.valueOf()));
|
|
26
|
+
if (invalid) {
|
|
27
|
+
setVal(undefined);
|
|
28
|
+
dispatch('change', undefined);
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
setVal(datetimeDeserialize(inputelement.value));
|
|
32
|
+
dispatch('change', datetimeDeserialize(inputelement.value));
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
};
|
|
24
36
|
}
|
|
25
37
|
</script>
|
|
26
38
|
|
|
27
|
-
<FieldStandard bind:id {label} {path} {required} {defaultValue} {conditional} {related} {helptext} serialize={datetimeSerialize} deserialize={datetimeDeserialize} let:value let:valid let:invalid let:id let:onBlur let:
|
|
28
|
-
{
|
|
29
|
-
<Input bind:inputelement={inputelement} type="datetime-local" name={path} {value} {id} class="dialog-input {className}" onBlur={() => { wrapOnBlur(onBlur) }} {onChange} {valid} {invalid} {min} {max} {step} {extradescid} {messagesid} {helptextid}/>
|
|
39
|
+
<FieldStandard bind:id {label} {path} {required} {defaultValue} {conditional} {related} {helptext} serialize={datetimeSerialize} deserialize={datetimeDeserialize} let:value let:valid let:invalid let:id let:onBlur let:helptextid let:messagesid let:setVal>
|
|
40
|
+
<Input bind:inputelement={inputelement} type="datetime-local" name={path} {value} {id} class="dialog-input {className}" {onBlur} onChange={onChange(setVal)} {valid} {invalid} {min} {max} {step} {extradescid} {messagesid} {helptextid}/>
|
|
30
41
|
</FieldStandard>
|
|
31
42
|
|
|
32
|
-
<style>
|
|
33
|
-
.bad-input-warning {
|
|
34
|
-
margin-bottom: 0.3em;
|
|
35
|
-
color: var(--dg-danger-bg, #9a3332);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
</style>
|
|
@@ -90,7 +90,7 @@ function iconForItem(item) {
|
|
|
90
90
|
{#if $store.initialized}
|
|
91
91
|
<Tree headers={[
|
|
92
92
|
{ label: 'Path', id: 'name', grow: 4, icon: item => iconForItem(item), get: 'name' }
|
|
93
|
-
]} singleSelect store={treeStore} on:deselect={onDeselect} on:choose={onChoose} />
|
|
93
|
+
]} singleSelect store={treeStore} on:deselect={onDeselect} on:choose={onChoose} searchable='name' />
|
|
94
94
|
{/if}
|
|
95
95
|
</section>
|
|
96
96
|
<ChooserPreview {thumbnailExpanded} {previewId} {store} on:thumbnailsizechange={() => { thumbnailExpanded = !thumbnailExpanded }}/>
|
package/package.json
CHANGED