To the point variable at the tip of the arrow, add the constraint =horizontal(P_2), where P_2 is the point variable at the other end of the arrow. This cause the arrow to become horizontal. Strech it to a desired length.
Insert a cell above the arrow of appropriate size.
Insert a new point variable (P_5) and add a constraint =center(P_0, P_1) to center it to the stem of the arrow.
Select the cell and add desired text.
Select the border of the cell and add an anchor constraint =anchor(P_5). This will anchor the cell to the center of the stem of the arrow, but the text will not rotate with the arrow. To make the text rotate, the cell needs to be anchored to 2 point variables.
Insert a new point variable (P_6) and a constraint =weight(P_5, distance(P_5,P_1) - 1.0, P_1, 1.0). This will position P_6 one point toward the tip of the arrow.
Change the anchor constraint of the cell to include P_6. Now the cell will rotate with the arrow. However, text will appear up-side-down if the arrow is rotate such that the arrow tip is to the left of the other end of the arrow.
Modify the constraint of P_6 to: =weight(P_5, signum2(hdistance(P_0,P_2)) * distance(P_5,P_1) - 1.0, P_1, 1.0). This will cause P_6 always to be to the right of P_5 and the text to be right-side-up.
Save the drawing to the Basic Shapes folder as arrow_w_text.svg