Skip to content

Commit 82f9089

Browse files
committed
deploy: f2c288b
1 parent 7c9d5db commit 82f9089

75 files changed

Lines changed: 306 additions & 92 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

dist/solid-ui.esm.js

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18389,6 +18389,8 @@ function basicField(dom, container, already, subject, form, doc, callbackFunctio
1838918389
field.style = inputStyle;
1839018390
rhs.appendChild(field);
1839118391
field.setAttribute('type', params.type ? params.type : 'text');
18392+
var fieldType = (field.getAttribute('type') || '').toLowerCase();
18393+
var deferWhileFocused = fieldType === 'date' || fieldType === 'datetime-local';
1839218394
var size = kb.anyJS(form, _ns__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.ui('size')) || _styleConstants__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A.textInputSize || 20;
1839318395
field.setAttribute('size', size);
1839418396
var maxLength = kb.any(form, _ns__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.ui('maxLength'));
@@ -18427,9 +18429,18 @@ function basicField(dom, container, already, subject, form, doc, callbackFunctio
1842718429
}
1842818430
}, true);
1842918431
field.addEventListener('change', function (_e) {
18432+
if (deferWhileFocused && dom.activeElement === field) {
18433+
if (field.dataset) {
18434+
field.dataset.deferredChange = 'true';
18435+
}
18436+
return;
18437+
}
1843018438
// i.e. lose focus with changed data
1843118439
if (params.pattern && !field.value.match(params.pattern)) return;
18432-
field.disabled = true; // See if this stops getting two dates from fumbling e.g the chrome datepicker.
18440+
var disabledForSave = !deferWhileFocused;
18441+
if (disabledForSave) {
18442+
field.disabled = true; // See if this stops getting two dates from fumbling, e.g., the chrome datepicker.
18443+
}
1843318444
field.setAttribute('style', inputStyle + 'color: gray;'); // pending
1843418445
var ds = kb.statementsMatching(subject, property); // remove any multiple values
1843518446
var result;
@@ -18497,14 +18508,25 @@ function basicField(dom, container, already, subject, form, doc, callbackFunctio
1849718508
updateMany(ds, is, function (uri, ok, body) {
1849818509
// kb.updater.update(ds, is, function (uri, ok, body) {
1849918510
if (ok) {
18500-
field.disabled = false;
18511+
if (disabledForSave) {
18512+
field.disabled = false;
18513+
}
1850118514
field.setAttribute('style', inputStyle);
1850218515
} else {
1850318516
box.appendChild((0,_error__WEBPACK_IMPORTED_MODULE_6__/* .errorMessageBlock */ .F)(dom, body));
1850418517
}
1850518518
callbackFunction(ok, body);
1850618519
});
1850718520
}, true);
18521+
field.addEventListener('blur', function (_e) {
18522+
if (deferWhileFocused && field.dataset && field.dataset.deferredChange === 'true') {
18523+
delete field.dataset.deferredChange;
18524+
var event = new Event('change', {
18525+
bubbles: true
18526+
});
18527+
field.dispatchEvent(event);
18528+
}
18529+
}, true);
1850818530
return box;
1850918531
}
1851018532

dist/solid-ui.esm.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/solid-ui.esm.min.js

Lines changed: 8 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/solid-ui.esm.min.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/solid-ui.js

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4913,6 +4913,8 @@ function basicField(dom, container, already, subject, form, doc, callbackFunctio
49134913
field.style = inputStyle;
49144914
rhs.appendChild(field);
49154915
field.setAttribute('type', params.type ? params.type : 'text');
4916+
var fieldType = (field.getAttribute('type') || '').toLowerCase();
4917+
var deferWhileFocused = fieldType === 'date' || fieldType === 'datetime-local';
49164918
var size = kb.anyJS(form, src_ns.ui('size')) || styleConstants.textInputSize || 20;
49174919
field.setAttribute('size', size);
49184920
var maxLength = kb.any(form, src_ns.ui('maxLength'));
@@ -4951,9 +4953,18 @@ function basicField(dom, container, already, subject, form, doc, callbackFunctio
49514953
}
49524954
}, true);
49534955
field.addEventListener('change', function (_e) {
4956+
if (deferWhileFocused && dom.activeElement === field) {
4957+
if (field.dataset) {
4958+
field.dataset.deferredChange = 'true';
4959+
}
4960+
return;
4961+
}
49544962
// i.e. lose focus with changed data
49554963
if (params.pattern && !field.value.match(params.pattern)) return;
4956-
field.disabled = true; // See if this stops getting two dates from fumbling e.g the chrome datepicker.
4964+
var disabledForSave = !deferWhileFocused;
4965+
if (disabledForSave) {
4966+
field.disabled = true; // See if this stops getting two dates from fumbling, e.g., the chrome datepicker.
4967+
}
49574968
field.setAttribute('style', inputStyle + 'color: gray;'); // pending
49584969
var ds = kb.statementsMatching(subject, property); // remove any multiple values
49594970
var result;
@@ -5021,14 +5032,25 @@ function basicField(dom, container, already, subject, form, doc, callbackFunctio
50215032
updateMany(ds, is, function (uri, ok, body) {
50225033
// kb.updater.update(ds, is, function (uri, ok, body) {
50235034
if (ok) {
5024-
field.disabled = false;
5035+
if (disabledForSave) {
5036+
field.disabled = false;
5037+
}
50255038
field.setAttribute('style', inputStyle);
50265039
} else {
50275040
box.appendChild(errorMessageBlock(dom, body));
50285041
}
50295042
callbackFunction(ok, body);
50305043
});
50315044
}, true);
5045+
field.addEventListener('blur', function (_e) {
5046+
if (deferWhileFocused && field.dataset && field.dataset.deferredChange === 'true') {
5047+
delete field.dataset.deferredChange;
5048+
var event = new Event('change', {
5049+
bubbles: true
5050+
});
5051+
field.dispatchEvent(event);
5052+
}
5053+
}, true);
50325054
return box;
50335055
}
50345056
;// ./src/widgets/forms/autocomplete/language.ts

dist/solid-ui.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/solid-ui.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/solid-ui.min.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/versionInfo.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/widgets/forms/basic.d.ts.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)