@reykjavik/hanna-react 0.10.142 → 0.10.143

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.
package/CHANGELOG.md CHANGED
@@ -4,6 +4,13 @@
4
4
 
5
5
  - ... <!-- Add new lines here. -->
6
6
 
7
+ ## 0.10.143
8
+
9
+ _2024-12-06_
10
+ +
11
+ - `Datepicker:`
12
+ - fix: Timezone mismatch in `isoMode` (emitted UTC-based dates, not local)
13
+
7
14
  ## 0.10.142
8
15
 
9
16
  _2024-11-28_
package/Datepicker.js CHANGED
@@ -108,6 +108,13 @@ const defaultDatepickerTexts = {
108
108
  ],
109
109
  },
110
110
  };
111
+ const toLocalIsoDate = (date) => {
112
+ if (!date) {
113
+ return undefined;
114
+ }
115
+ const localDate = new Date(date.getTime() - date.getTimezoneOffset() * 60000);
116
+ return localDate.toISOString().split('T')[0];
117
+ };
111
118
  /**
112
119
  * A compo
113
120
  *
@@ -154,7 +161,7 @@ const Datepicker = (props) => {
154
161
  (elm === null || elm === void 0 ? void 0 : elm.querySelector('input')) || undefined;
155
162
  return elm;
156
163
  }) }, addFocusProps()),
157
- isoMode && (react_1.default.createElement("input", { type: "hidden", name: name, value: value === null || value === void 0 ? void 0 : value.toISOString().slice(0, 10) })),
164
+ isoMode && react_1.default.createElement("input", { type: "hidden", name: name, value: toLocalIsoDate(value) }),
158
165
  react_1.default.createElement(ReactDatepicker_js_1.ReactDatePicker, Object.assign({ required: inputProps.required, disabled: inputProps.disabled, readOnly: inputProps.readOnly, selected: value, name: isoMode ? undefined : name, locale: lang || i18n_1.DEFAULT_LANG, dateFormat: normalizedDateFormats, onChange: (date) => {
159
166
  date = date || undefined;
160
167
  setValue(date);
package/esm/Datepicker.js CHANGED
@@ -103,6 +103,13 @@ const defaultDatepickerTexts = {
103
103
  ],
104
104
  },
105
105
  };
106
+ const toLocalIsoDate = (date) => {
107
+ if (!date) {
108
+ return undefined;
109
+ }
110
+ const localDate = new Date(date.getTime() - date.getTimezoneOffset() * 60000);
111
+ return localDate.toISOString().split('T')[0];
112
+ };
106
113
  /**
107
114
  * A compo
108
115
  *
@@ -149,7 +156,7 @@ export const Datepicker = (props) => {
149
156
  (elm === null || elm === void 0 ? void 0 : elm.querySelector('input')) || undefined;
150
157
  return elm;
151
158
  }) }, addFocusProps()),
152
- isoMode && (React.createElement("input", { type: "hidden", name: name, value: value === null || value === void 0 ? void 0 : value.toISOString().slice(0, 10) })),
159
+ isoMode && React.createElement("input", { type: "hidden", name: name, value: toLocalIsoDate(value) }),
153
160
  React.createElement(ReactDatePicker, Object.assign({ required: inputProps.required, disabled: inputProps.disabled, readOnly: inputProps.readOnly, selected: value, name: isoMode ? undefined : name, locale: lang || DEFAULT_LANG, dateFormat: normalizedDateFormats, onChange: (date) => {
154
161
  date = date || undefined;
155
162
  setValue(date);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reykjavik/hanna-react",
3
- "version": "0.10.142",
3
+ "version": "0.10.143",
4
4
  "author": "Reykjavík (http://www.reykjavik.is)",
5
5
  "contributors": [
6
6
  "Hugsmiðjan ehf (http://www.hugsmidjan.is)",