Skip to content

Commit 62ef5b1

Browse files
yordan-stgjulivan
authored andcommitted
refactor(events-web): rename properties for consistency
1 parent 47709df commit 62ef5b1

File tree

7 files changed

+39
-40
lines changed

7 files changed

+39
-40
lines changed

packages/pluggableWidgets/events-web/src/Events.editorConfig.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,18 +21,18 @@ export function getProperties(
2121
if (!values.componentLoadRepeat) {
2222
hidePropertiesIn(defaultProperties, values, [
2323
"componentLoadRepeatInterval",
24-
"componentLoadRepeatExpression",
25-
"componentLoadRepeatParameterType"
24+
"componentLoadRepeatIntervalExpression",
25+
"componentLoadRepeatIntervalParameterType"
2626
]);
2727
} else {
28-
if (values.componentLoadRepeatParameterType === "expression") {
28+
if (values.componentLoadRepeatIntervalParameterType === "expression") {
2929
hidePropertiesIn(defaultProperties, values, ["componentLoadRepeatInterval"]);
3030
} else {
31-
hidePropertiesIn(defaultProperties, values, ["componentLoadRepeatExpression"]);
31+
hidePropertiesIn(defaultProperties, values, ["componentLoadRepeatIntervalExpression"]);
3232
}
3333
}
3434
if (values.componentLoadDelayParameterType === "expression") {
35-
hidePropertiesIn(defaultProperties, values, ["componentLoadDelayInteger"]);
35+
hidePropertiesIn(defaultProperties, values, ["componentLoadDelay"]);
3636
} else {
3737
hidePropertiesIn(defaultProperties, values, ["componentLoadDelayExpression"]);
3838
}

packages/pluggableWidgets/events-web/src/Events.tsx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,13 @@ export default function Events(props: EventsContainerProps): ReactElement {
1111
class: className,
1212
onComponentLoad,
1313
componentLoadDelayExpression,
14-
componentLoadDelayInteger,
14+
componentLoadDelay,
1515
componentLoadRepeat,
1616
onEventChangeAttribute,
1717
onEventChange,
1818
componentLoadRepeatInterval,
19-
componentLoadRepeatParameterType,
20-
componentLoadRepeatExpression,
19+
componentLoadRepeatIntervalParameterType,
20+
componentLoadRepeatIntervalExpression,
2121
componentLoadDelayParameterType,
2222
onEventChangeDelayInteger,
2323
onEventChangeDelayParameterType,
@@ -27,12 +27,12 @@ export default function Events(props: EventsContainerProps): ReactElement {
2727

2828
const [delayValue, intervalValue] = useDelayAndInterval({
2929
componentLoadDelayParameterType,
30-
componentLoadRepeatParameterType,
30+
componentLoadRepeatIntervalParameterType,
3131
onEventChangeDelayParameterType,
32-
componentLoadDelayInteger,
32+
componentLoadDelay,
3333
componentLoadRepeatInterval,
3434
onEventChangeDelayInteger,
35-
componentLoadRepeatExpression,
35+
componentLoadRepeatIntervalExpression,
3636
componentLoadDelayExpression,
3737
onEventChangeDelayExpression
3838
});

packages/pluggableWidgets/events-web/src/Events.xml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
</enumerationValues>
2222
</property>
2323

24-
<property key="componentLoadDelayInteger" type="integer" required="true" defaultValue="0">
24+
<property key="componentLoadDelay" type="integer" required="true" defaultValue="0">
2525
<caption>Delay</caption>
2626
<description>Timer delay to first action execution. Value is in milliseconds. If set to 0, action will be triggered immediately.</description>
2727
</property>
@@ -37,7 +37,7 @@
3737
<description />
3838
</property>
3939

40-
<property key="componentLoadRepeatParameterType" type="enumeration" defaultValue="number" required="true">
40+
<property key="componentLoadRepeatIntervalParameterType" type="enumeration" defaultValue="number" required="true">
4141
<caption>Parameter type</caption>
4242
<description />
4343
<enumerationValues>
@@ -51,7 +51,7 @@
5151
<description>Interval between repeat action execution. Value is in milliseconds.</description>
5252
</property>
5353

54-
<property key="componentLoadRepeatExpression" type="expression" required="false">
54+
<property key="componentLoadRepeatIntervalExpression" type="expression" required="false">
5555
<caption>Interval</caption>
5656
<description>Interval between repeat action execution. Value is in milliseconds.</description>
5757
<returnType type="Integer" />
@@ -88,7 +88,7 @@
8888
</enumerationValues>
8989
</property>
9090

91-
<property key="onEventChangeDelayInteger" type="integer" required="true" defaultValue="0">
91+
<property key="onEventChangeDelay" type="integer" required="true" defaultValue="0">
9292
<caption>Delay</caption>
9393
<description>Timer delay to first action execution. Value is in milliseconds. If set to 0, action will be triggered immediately.</description>
9494
</property>

packages/pluggableWidgets/events-web/src/__tests__/AppEvents.spec.tsx

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
import { actionValue } from "@mendix/widget-plugin-test-utils";
1+
import { actionValue, dynamicValue } from "@mendix/widget-plugin-test-utils";
22
import "@testing-library/jest-dom";
33
import { render } from "@testing-library/react";
44
import { createElement } from "react";
5-
import { ValueStatus } from "mendix";
65
import { EventsContainerProps } from "../../typings/EventsProps";
76
import Events from "../Events";
87

@@ -14,17 +13,17 @@ describe("App events (load)", () => {
1413
class: "app-events",
1514
onComponentLoad: actionValue(),
1615
componentLoadDelayParameterType: "number",
17-
componentLoadDelayInteger: 0,
18-
componentLoadDelayExpression: { value: undefined, status: ValueStatus.Unavailable },
16+
componentLoadDelay: 0,
17+
componentLoadDelayExpression: dynamicValue(),
1918
componentLoadRepeat: false,
20-
componentLoadRepeatParameterType: "number",
19+
componentLoadRepeatIntervalParameterType: "number",
2120
componentLoadRepeatInterval: 0,
22-
componentLoadRepeatExpression: { value: undefined, status: ValueStatus.Unavailable },
21+
componentLoadRepeatIntervalExpression: dynamicValue(),
2322
onEventChangeAttribute: undefined,
2423
onEventChange: undefined,
2524
onEventChangeDelayParameterType: "number",
2625
onEventChangeDelayInteger: 0,
27-
onEventChangeDelayExpression: { value: undefined, status: ValueStatus.Unavailable }
26+
onEventChangeDelayExpression: dynamicValue()
2827
};
2928
});
3029
it("render app events", async () => {

packages/pluggableWidgets/events-web/src/hooks/delayAndInterval.ts

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
interface ParameterTypeProps {
22
componentLoadDelayParameterType: string;
3-
componentLoadRepeatParameterType: string;
3+
componentLoadRepeatIntervalParameterType: string;
44
onEventChangeDelayParameterType: string;
5-
componentLoadDelayInteger?: number;
5+
componentLoadDelay?: number;
66
componentLoadRepeatInterval?: number;
77
onEventChangeDelayInteger?: number;
8-
componentLoadRepeatExpression?: { status: string; value: { toNumber: () => number } | undefined };
8+
componentLoadRepeatIntervalExpression?: { status: string; value: { toNumber: () => number } | undefined };
99
componentLoadDelayExpression?: { status: string; value: { toNumber: () => number } | undefined };
1010
onEventChangeDelayExpression?: { status: string; value: { toNumber: () => number } | undefined };
1111
}
@@ -15,29 +15,30 @@ export function useDelayAndInterval(props: ParameterTypeProps): [number | undefi
1515
let intervalValue: number | undefined;
1616
const {
1717
componentLoadDelayParameterType,
18-
componentLoadRepeatParameterType,
18+
componentLoadRepeatIntervalParameterType,
1919
onEventChangeDelayParameterType,
20-
componentLoadDelayInteger,
20+
componentLoadDelay,
2121
componentLoadRepeatInterval,
2222
onEventChangeDelayInteger,
23-
componentLoadRepeatExpression,
23+
componentLoadRepeatIntervalExpression,
2424
componentLoadDelayExpression,
2525
onEventChangeDelayExpression
2626
} = props;
2727
if (componentLoadDelayParameterType === "number") {
28-
delayValue = componentLoadDelayInteger;
28+
delayValue = componentLoadDelay;
2929
} else {
3030
delayValue =
3131
componentLoadDelayExpression?.status === "available" && componentLoadDelayExpression.value !== undefined
3232
? componentLoadDelayExpression.value.toNumber()
3333
: undefined;
3434
}
35-
if (componentLoadRepeatParameterType === "number") {
35+
if (componentLoadRepeatIntervalParameterType === "number") {
3636
intervalValue = componentLoadRepeatInterval;
3737
} else {
3838
intervalValue =
39-
componentLoadRepeatExpression?.status === "available" && componentLoadRepeatExpression.value !== undefined
40-
? componentLoadRepeatExpression.value.toNumber()
39+
componentLoadRepeatIntervalExpression?.status === "available" &&
40+
componentLoadRepeatIntervalExpression.value !== undefined
41+
? componentLoadRepeatIntervalExpression.value.toNumber()
4142
: undefined;
4243
}
4344
if (onEventChangeDelayParameterType === "number") {

packages/pluggableWidgets/events-web/src/hooks/timer.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ export function useActionTimer(props: ActionTimerProps): void {
1616
useEffect(() => {
1717
// If the delay is set to undefined, we should not start a timer.
1818
if (delay === undefined || delay < 0 || (interval === undefined && repeat)) {
19-
console.log("Events: Timer delay or interval is not set, skipping timer execution.");
2019
return;
2120
}
2221
let counter: NodeJS.Timeout;

packages/pluggableWidgets/events-web/typings/EventsProps.d.ts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import { Big } from "big.js";
99

1010
export type ComponentLoadDelayParameterTypeEnum = "number" | "expression";
1111

12-
export type ComponentLoadRepeatParameterTypeEnum = "number" | "expression";
12+
export type ComponentLoadRepeatIntervalParameterTypeEnum = "number" | "expression";
1313

1414
export type OnEventChangeDelayParameterTypeEnum = "number" | "expression";
1515

@@ -20,12 +20,12 @@ export interface EventsContainerProps {
2020
tabIndex?: number;
2121
onComponentLoad?: ActionValue;
2222
componentLoadDelayParameterType: ComponentLoadDelayParameterTypeEnum;
23-
componentLoadDelayInteger: number;
23+
componentLoadDelay: number;
2424
componentLoadDelayExpression: DynamicValue<Big>;
2525
componentLoadRepeat: boolean;
26-
componentLoadRepeatParameterType: ComponentLoadRepeatParameterTypeEnum;
26+
componentLoadRepeatIntervalParameterType: ComponentLoadRepeatIntervalParameterTypeEnum;
2727
componentLoadRepeatInterval: number;
28-
componentLoadRepeatExpression?: DynamicValue<Big>;
28+
componentLoadRepeatIntervalExpression?: DynamicValue<Big>;
2929
onEventChangeAttribute?: EditableValue<Big | any | boolean | Date | string>;
3030
onEventChange?: ActionValue;
3131
onEventChangeDelayParameterType: OnEventChangeDelayParameterTypeEnum;
@@ -46,12 +46,12 @@ export interface EventsPreviewProps {
4646
translate: (text: string) => string;
4747
onComponentLoad: {} | null;
4848
componentLoadDelayParameterType: ComponentLoadDelayParameterTypeEnum;
49-
componentLoadDelayInteger: number | null;
49+
componentLoadDelay: number | null;
5050
componentLoadDelayExpression: string;
5151
componentLoadRepeat: boolean;
52-
componentLoadRepeatParameterType: ComponentLoadRepeatParameterTypeEnum;
52+
componentLoadRepeatIntervalParameterType: ComponentLoadRepeatIntervalParameterTypeEnum;
5353
componentLoadRepeatInterval: number | null;
54-
componentLoadRepeatExpression: string;
54+
componentLoadRepeatIntervalExpression: string;
5555
onEventChangeAttribute: string;
5656
onEventChange: {} | null;
5757
onEventChangeDelayParameterType: OnEventChangeDelayParameterTypeEnum;

0 commit comments

Comments
 (0)