@helpwave/hightide 0.6.13 → 0.6.14
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/dist/index.d.mts +6 -4
- package/dist/index.d.ts +6 -4
- package/dist/index.js +50 -28
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +50 -28
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -13091,55 +13091,55 @@ function filterDate(value, filterValue) {
|
|
|
13091
13091
|
return false;
|
|
13092
13092
|
}
|
|
13093
13093
|
}
|
|
13094
|
-
function normalizeDatetime(
|
|
13095
|
-
const normalized = new Date(
|
|
13094
|
+
function normalizeDatetime(dateTime) {
|
|
13095
|
+
const normalized = new Date(dateTime);
|
|
13096
13096
|
normalized.setSeconds(0, 0);
|
|
13097
13097
|
return normalized;
|
|
13098
13098
|
}
|
|
13099
13099
|
function filterDatetime(value, filterValue) {
|
|
13100
13100
|
const parameter = filterValue.parameter;
|
|
13101
13101
|
const operator = filterValue.operator;
|
|
13102
|
-
const
|
|
13103
|
-
if (!
|
|
13104
|
-
const normalizedDatetime =
|
|
13102
|
+
const dateTime = parseDate(value);
|
|
13103
|
+
if (!dateTime && !TableFilterOperator.generic.some((o) => o === operator)) return false;
|
|
13104
|
+
const normalizedDatetime = dateTime ? normalizeDatetime(dateTime) : null;
|
|
13105
13105
|
switch (operator) {
|
|
13106
|
-
case "
|
|
13106
|
+
case "dateTimeEquals": {
|
|
13107
13107
|
const filterDatetime2 = parseDate(parameter.compareDatetime);
|
|
13108
13108
|
if (!filterDatetime2 || !normalizedDatetime) return false;
|
|
13109
13109
|
return normalizedDatetime.getTime() === normalizeDatetime(filterDatetime2).getTime();
|
|
13110
13110
|
}
|
|
13111
|
-
case "
|
|
13111
|
+
case "dateTimeNotEquals": {
|
|
13112
13112
|
const filterDatetime2 = parseDate(parameter.compareDatetime);
|
|
13113
13113
|
if (!filterDatetime2 || !normalizedDatetime) return false;
|
|
13114
13114
|
return normalizedDatetime.getTime() !== normalizeDatetime(filterDatetime2).getTime();
|
|
13115
13115
|
}
|
|
13116
|
-
case "
|
|
13116
|
+
case "dateTimeGreaterThan": {
|
|
13117
13117
|
const filterDatetime2 = parseDate(parameter.compareDatetime);
|
|
13118
13118
|
if (!filterDatetime2 || !normalizedDatetime) return false;
|
|
13119
13119
|
return normalizedDatetime > normalizeDatetime(filterDatetime2);
|
|
13120
13120
|
}
|
|
13121
|
-
case "
|
|
13121
|
+
case "dateTimeGreaterThanOrEqual": {
|
|
13122
13122
|
const filterDatetime2 = parseDate(parameter.compareDatetime);
|
|
13123
13123
|
if (!filterDatetime2 || !normalizedDatetime) return false;
|
|
13124
13124
|
return normalizedDatetime >= normalizeDatetime(filterDatetime2);
|
|
13125
13125
|
}
|
|
13126
|
-
case "
|
|
13126
|
+
case "dateTimeLessThan": {
|
|
13127
13127
|
const filterDatetime2 = parseDate(parameter.compareDatetime);
|
|
13128
13128
|
if (!filterDatetime2 || !normalizedDatetime) return false;
|
|
13129
13129
|
return normalizedDatetime < normalizeDatetime(filterDatetime2);
|
|
13130
13130
|
}
|
|
13131
|
-
case "
|
|
13131
|
+
case "dateTimeLessThanOrEqual": {
|
|
13132
13132
|
const filterDatetime2 = parseDate(parameter.compareDatetime);
|
|
13133
13133
|
if (!filterDatetime2 || !normalizedDatetime) return false;
|
|
13134
13134
|
return normalizedDatetime <= normalizeDatetime(filterDatetime2);
|
|
13135
13135
|
}
|
|
13136
|
-
case "
|
|
13136
|
+
case "dateTimeBetween": {
|
|
13137
13137
|
const minDatetime = parseDate(parameter.min);
|
|
13138
13138
|
const maxDatetime = parseDate(parameter.max);
|
|
13139
13139
|
if (!minDatetime || !maxDatetime || !normalizedDatetime) return false;
|
|
13140
13140
|
return normalizedDatetime >= normalizeDatetime(minDatetime) && normalizedDatetime <= normalizeDatetime(maxDatetime);
|
|
13141
13141
|
}
|
|
13142
|
-
case "
|
|
13142
|
+
case "dateTimeNotBetween": {
|
|
13143
13143
|
const minDatetime = parseDate(parameter.min);
|
|
13144
13144
|
const maxDatetime = parseDate(parameter.max);
|
|
13145
13145
|
if (!minDatetime || !maxDatetime || !normalizedDatetime) return false;
|
|
@@ -13241,7 +13241,7 @@ var TableFilterOperator = {
|
|
|
13241
13241
|
text: ["textEquals", "textNotEquals", "textNotWhitespace", "textContains", "textNotContains", "textStartsWith", "textEndsWith"],
|
|
13242
13242
|
number: ["numberEquals", "numberNotEquals", "numberGreaterThan", "numberGreaterThanOrEqual", "numberLessThan", "numberLessThanOrEqual", "numberBetween", "numberNotBetween"],
|
|
13243
13243
|
date: ["dateEquals", "dateNotEquals", "dateGreaterThan", "dateGreaterThanOrEqual", "dateLessThan", "dateLessThanOrEqual", "dateBetween", "dateNotBetween"],
|
|
13244
|
-
|
|
13244
|
+
dateTime: ["dateTimeEquals", "dateTimeNotEquals", "dateTimeGreaterThan", "dateTimeGreaterThanOrEqual", "dateTimeLessThan", "dateTimeLessThanOrEqual", "dateTimeBetween", "dateTimeNotBetween"],
|
|
13245
13245
|
boolean: ["booleanIsTrue", "booleanIsFalse"],
|
|
13246
13246
|
tags: ["tagsEquals", "tagsNotEquals", "tagsContains", "tagsNotContains"],
|
|
13247
13247
|
tagsSingle: ["tagsSingleEquals", "tagsSingleNotEquals", "tagsSingleContains", "tagsSingleNotContains"],
|
|
@@ -13253,22 +13253,25 @@ function isTableFilterCategory(value) {
|
|
|
13253
13253
|
var textFilter = (row, columnId, filterValue) => {
|
|
13254
13254
|
const value = row.getValue(columnId);
|
|
13255
13255
|
return filterText(value, filterValue);
|
|
13256
|
+
return filterText(value, filterValue);
|
|
13256
13257
|
};
|
|
13257
13258
|
var numberFilter = (row, columnId, filterValue) => {
|
|
13258
13259
|
const value = row.getValue(columnId);
|
|
13259
13260
|
return filterNumber(value, filterValue);
|
|
13261
|
+
return filterNumber(value, filterValue);
|
|
13260
13262
|
};
|
|
13261
13263
|
var dateFilter = (row, columnId, filterValue) => {
|
|
13262
13264
|
const value = row.getValue(columnId);
|
|
13263
13265
|
return filterDate(value, filterValue);
|
|
13264
13266
|
};
|
|
13265
|
-
var
|
|
13267
|
+
var dateTimeFilter = (row, columnId, filterValue) => {
|
|
13266
13268
|
const value = row.getValue(columnId);
|
|
13267
13269
|
return filterDatetime(value, filterValue);
|
|
13268
13270
|
};
|
|
13269
13271
|
var booleanFilter = (row, columnId, filterValue) => {
|
|
13270
13272
|
const value = row.getValue(columnId);
|
|
13271
13273
|
return filterBoolean(value, filterValue);
|
|
13274
|
+
return filterBoolean(value, filterValue);
|
|
13272
13275
|
};
|
|
13273
13276
|
var tagsFilter = (row, columnId, filterValue) => {
|
|
13274
13277
|
const value = row.getValue(columnId);
|
|
@@ -13281,12 +13284,13 @@ var tagsSingleFilter = (row, columnId, filterValue) => {
|
|
|
13281
13284
|
var genericFilter = (row, columnId, filterValue) => {
|
|
13282
13285
|
const value = row.getValue(columnId);
|
|
13283
13286
|
return filterGeneric(value, filterValue);
|
|
13287
|
+
return filterGeneric(value, filterValue);
|
|
13284
13288
|
};
|
|
13285
13289
|
var TableFilter = {
|
|
13286
13290
|
text: textFilter,
|
|
13287
13291
|
number: numberFilter,
|
|
13288
13292
|
date: dateFilter,
|
|
13289
|
-
|
|
13293
|
+
dateTime: dateTimeFilter,
|
|
13290
13294
|
boolean: booleanFilter,
|
|
13291
13295
|
tags: tagsFilter,
|
|
13292
13296
|
tagsSingle: tagsSingleFilter,
|
|
@@ -13426,8 +13430,10 @@ var TableProvider = ({
|
|
|
13426
13430
|
text: TableFilter.text,
|
|
13427
13431
|
number: TableFilter.number,
|
|
13428
13432
|
date: TableFilter.date,
|
|
13433
|
+
dateTime: TableFilter.dateTime,
|
|
13429
13434
|
boolean: TableFilter.boolean,
|
|
13430
13435
|
tags: TableFilter.tags,
|
|
13436
|
+
tagsSingle: TableFilter.tagsSingle,
|
|
13431
13437
|
generic: TableFilter.generic
|
|
13432
13438
|
},
|
|
13433
13439
|
onColumnSizingChange: (updaterOrValue) => {
|
|
@@ -14768,13 +14774,13 @@ var getOperatorInfo = (operator) => {
|
|
|
14768
14774
|
return { icon: /* @__PURE__ */ jsx67(SearchCheck, { className: "w-4 h-4" }), translationKey: "contains" };
|
|
14769
14775
|
case "tagsNotContains":
|
|
14770
14776
|
return { icon: /* @__PURE__ */ jsx67(SearchX, { className: "w-4 h-4" }), translationKey: "notContains" };
|
|
14771
|
-
case "
|
|
14777
|
+
case "dateTimeEquals":
|
|
14772
14778
|
return { icon: /* @__PURE__ */ jsx67(Equal, { className: "w-4 h-4" }), translationKey: "equals" };
|
|
14773
|
-
case "
|
|
14779
|
+
case "dateTimeNotEquals":
|
|
14774
14780
|
return { icon: /* @__PURE__ */ jsx67(EqualNot, { className: "w-4 h-4" }), translationKey: "notEquals" };
|
|
14775
|
-
case "
|
|
14781
|
+
case "dateTimeGreaterThan":
|
|
14776
14782
|
return { icon: /* @__PURE__ */ jsx67(ChevronRight4, { className: "w-4 h-4" }), translationKey: "after" };
|
|
14777
|
-
case "
|
|
14783
|
+
case "dateTimeGreaterThanOrEqual":
|
|
14778
14784
|
return {
|
|
14779
14785
|
icon: /* @__PURE__ */ jsxs38("div", { className: "flex-row-0 items-center", children: [
|
|
14780
14786
|
/* @__PURE__ */ jsx67(ChevronRight4, { className: "w-4 h-4" }),
|
|
@@ -14782,9 +14788,9 @@ var getOperatorInfo = (operator) => {
|
|
|
14782
14788
|
] }),
|
|
14783
14789
|
translationKey: "onOrAfter"
|
|
14784
14790
|
};
|
|
14785
|
-
case "
|
|
14791
|
+
case "dateTimeLessThan":
|
|
14786
14792
|
return { icon: /* @__PURE__ */ jsx67(ChevronLeft4, { className: "w-4 h-4" }), translationKey: "before" };
|
|
14787
|
-
case "
|
|
14793
|
+
case "dateTimeLessThanOrEqual":
|
|
14788
14794
|
return {
|
|
14789
14795
|
icon: /* @__PURE__ */ jsxs38("div", { className: "flex-row-0 items-center", children: [
|
|
14790
14796
|
/* @__PURE__ */ jsx67(ChevronLeft4, { className: "w-4 h-4" }),
|
|
@@ -14792,7 +14798,7 @@ var getOperatorInfo = (operator) => {
|
|
|
14792
14798
|
] }),
|
|
14793
14799
|
translationKey: "onOrBefore"
|
|
14794
14800
|
};
|
|
14795
|
-
case "
|
|
14801
|
+
case "dateTimeBetween":
|
|
14796
14802
|
return {
|
|
14797
14803
|
icon: /* @__PURE__ */ jsxs38("div", { className: "flex-row-0 items-center", children: [
|
|
14798
14804
|
/* @__PURE__ */ jsx67(ChevronRight4, { className: "w-4 h-4" }),
|
|
@@ -14800,7 +14806,7 @@ var getOperatorInfo = (operator) => {
|
|
|
14800
14806
|
] }),
|
|
14801
14807
|
translationKey: "between"
|
|
14802
14808
|
};
|
|
14803
|
-
case "
|
|
14809
|
+
case "dateTimeNotBetween":
|
|
14804
14810
|
return {
|
|
14805
14811
|
icon: /* @__PURE__ */ jsxs38("div", { className: "flex-row-0 items-center", children: [
|
|
14806
14812
|
/* @__PURE__ */ jsx67(ChevronLeft4, { className: "w-4 h-4" }),
|
|
@@ -14874,6 +14880,22 @@ var TextFilter = ({ filterValue, onFilterValueChange }) => {
|
|
|
14874
14880
|
className: "min-w-64"
|
|
14875
14881
|
}
|
|
14876
14882
|
),
|
|
14883
|
+
/* @__PURE__ */ jsxs38("div", { className: "flex-row-2 items-center gap-2", children: [
|
|
14884
|
+
/* @__PURE__ */ jsx67(
|
|
14885
|
+
Checkbox,
|
|
14886
|
+
{
|
|
14887
|
+
id,
|
|
14888
|
+
value: parameter.isCaseSensitive ?? false,
|
|
14889
|
+
onValueChange: (isCaseSensitive) => {
|
|
14890
|
+
onFilterValueChange({
|
|
14891
|
+
operator,
|
|
14892
|
+
parameter: { ...parameter, isCaseSensitive }
|
|
14893
|
+
});
|
|
14894
|
+
}
|
|
14895
|
+
}
|
|
14896
|
+
),
|
|
14897
|
+
/* @__PURE__ */ jsx67("label", { htmlFor: id, children: translation("caseSensitive") })
|
|
14898
|
+
] }),
|
|
14877
14899
|
/* @__PURE__ */ jsxs38("div", { className: "flex-row-2 items-center gap-2", children: [
|
|
14878
14900
|
/* @__PURE__ */ jsx67(
|
|
14879
14901
|
Checkbox,
|
|
@@ -15095,15 +15117,15 @@ var DateFilter = ({ filterValue, onFilterValueChange }) => {
|
|
|
15095
15117
|
};
|
|
15096
15118
|
var DatetimeFilter = ({ filterValue, onFilterValueChange }) => {
|
|
15097
15119
|
const translation = useHightideTranslation();
|
|
15098
|
-
const operator = filterValue?.operator ?? "
|
|
15120
|
+
const operator = filterValue?.operator ?? "dateTimeBetween";
|
|
15099
15121
|
const parameter = filterValue?.parameter ?? {};
|
|
15100
15122
|
const [temporaryMinDateValue, setTemporaryMinDateValue] = useState31(null);
|
|
15101
15123
|
const [temporaryMaxDateValue, setTemporaryMaxDateValue] = useState31(null);
|
|
15102
15124
|
const availableOperators = useMemo25(() => [
|
|
15103
|
-
...TableFilterOperator.
|
|
15125
|
+
...TableFilterOperator.dateTime,
|
|
15104
15126
|
...TableFilterOperator.generic
|
|
15105
15127
|
], []);
|
|
15106
|
-
const needsRangeInput = operator === "
|
|
15128
|
+
const needsRangeInput = operator === "dateTimeBetween" || operator === "dateTimeNotBetween";
|
|
15107
15129
|
const needsParameterInput = operator !== "undefined" && operator !== "notUndefined";
|
|
15108
15130
|
return /* @__PURE__ */ jsxs38("div", { className: "flex-col-2 gap-2", children: [
|
|
15109
15131
|
/* @__PURE__ */ jsx67(
|
|
@@ -15375,7 +15397,7 @@ var TableFilterContent = ({ filterType, ...props }) => {
|
|
|
15375
15397
|
return /* @__PURE__ */ jsx67(NumberFilter, { ...props });
|
|
15376
15398
|
case "date":
|
|
15377
15399
|
return /* @__PURE__ */ jsx67(DateFilter, { ...props });
|
|
15378
|
-
case "
|
|
15400
|
+
case "dateTime":
|
|
15379
15401
|
return /* @__PURE__ */ jsx67(DatetimeFilter, { ...props });
|
|
15380
15402
|
case "boolean":
|
|
15381
15403
|
return /* @__PURE__ */ jsx67(BooleanFilter, { ...props });
|