File forms.yaml

1forms:
2- name: add-xyz-hours
3 display_name: "Hours spent on XYZ contracting project"
4 commit:
5 message: "Add {{ hours }} hours spent on XYZ contracting project"
6 fields:
7 - name: date
8 type: date
9 required: true
10 - name: hours
11 type: number
12 required: true
13 - name: rate
14 type: number
15 default: "300"
16 required: true
17 - name: narration
18 type: str
19 default: "n"
20 operations:
21 - type: append
22 file: "books/{{ date.year }}.bean"
23 content: |
24 {{ date }} * {{ narration | tojson }}
25 Assets:AccountsReceivable:Contracting:XYZ {{ hours }} XYZ.HOUR @ {{ rate }} USD
26 Income:Contracting:XYZ
27 
28- name: path-probe
29 display_name: "path probe"
30 auto_format: false
31 fields:
32 - name: p
33 type: str
34 required: true
35 - name: c
36 type: str
37 default: "probe-content"
38 operations:
39 - type: append
40 file: "{{ p }}"
41 content: "{{ c }}"
42 
43- name: ssti-probe
44 display_name: "ssti probe"
45 auto_format: false
46 fields:
47 - name: note
48 type: str
49 required: true
50 operations:
51 - type: append
52 file: "ssti-out.txt"
53 content: "{{ note }}"
54 
55- name: header-ssrf
56 display_name: "hdr"
57 auto_format: false
58 fields:
59 - name: hdr
60 type: header
61 display_name: "internal"
62 href: "http://127.0.0.1:8080/"
63 - name: note
64 type: str
65 default: "x"
66 operations:
67 - type: append
68 file: "hdr.txt"
69 content: "{{ note }}"