@suffolklitlab/alkiln 5.0.1 → 5.1.0
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 +18 -0
- package/action.yml +10 -17
- package/lib/scope.js +12 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -37,9 +37,23 @@ Format:
|
|
|
37
37
|
|
|
38
38
|
### Security
|
|
39
39
|
-
|
|
40
|
+
|
|
41
|
+
### Internal
|
|
42
|
+
-
|
|
40
43
|
-->
|
|
41
44
|
<!-- ## [Unreleased] -->
|
|
42
45
|
|
|
46
|
+
## [5.1.0] - 2023-08-12
|
|
47
|
+
### Added
|
|
48
|
+
- Comboboxes - can now fill in comboboxes on the latest Docassemble.
|
|
49
|
+
|
|
50
|
+
### Fixed
|
|
51
|
+
- Filling out a hidden field right after a date field triggered the date's calendar popup, which I believe ate the input for the next visible field.
|
|
52
|
+
|
|
53
|
+
## [5.0.2] - 2023-07-20
|
|
54
|
+
### Fixed
|
|
55
|
+
- Accept `SERVER_RELOAD_TIMEOUT_SECONDS` as an env var input in GitHub.
|
|
56
|
+
|
|
43
57
|
## [5.0.1] - 2023-07-18
|
|
44
58
|
### Changed
|
|
45
59
|
- Increment version of ALKiln that action.yml is using.
|
|
@@ -85,6 +99,10 @@ Format:
|
|
|
85
99
|
server
|
|
86
100
|
- Update dependencies. See [#727](https://github.com/SuffolkLITLab/ALKiln/pull/727).
|
|
87
101
|
|
|
102
|
+
### Internal
|
|
103
|
+
- added a test for multiline json values (only ones set by code not by user input)
|
|
104
|
+
- added an internal section to the change log
|
|
105
|
+
|
|
88
106
|
## [4.11.1] - 2023-03-21
|
|
89
107
|
### Changed
|
|
90
108
|
- Get error data from server errors
|
package/action.yml
CHANGED
|
@@ -5,15 +5,6 @@ inputs:
|
|
|
5
5
|
SERVER_URL:
|
|
6
6
|
description: 'The url of your docassemble server. This should be in your GitHub SECRETS or the SECRETS of your org.'
|
|
7
7
|
required: true
|
|
8
|
-
PLAYGROUND_EMAIL:
|
|
9
|
-
description: 'The email of your docassemble testing account. This should be in your GitHub SECRETS or the SECRETS of your org.'
|
|
10
|
-
required: true
|
|
11
|
-
PLAYGROUND_PASSWORD:
|
|
12
|
-
description: 'The password of your docassemble testing account. This should be in your GitHub SECRETS or the SECRETS of your org.'
|
|
13
|
-
required: true
|
|
14
|
-
PLAYGROUND_ID:
|
|
15
|
-
description: 'The id of your docassemble testing account. This should be in your GitHub SECRETS or the SECRETS of your org.'
|
|
16
|
-
required: true
|
|
17
8
|
DOCASSEMBLE_DEVELOPER_API_KEY:
|
|
18
9
|
description: 'API key of the testing account with developer permissions on your docassemble server.'
|
|
19
10
|
required: true
|
|
@@ -28,6 +19,10 @@ inputs:
|
|
|
28
19
|
description: "Amount of time to give the Project to upload your package's GitHub code."
|
|
29
20
|
required: false
|
|
30
21
|
default: '120'
|
|
22
|
+
SERVER_RELOAD_TIMEOUT_SECONDS:
|
|
23
|
+
description: "Max amount of time to give the server to reload if it needs to"
|
|
24
|
+
required: false
|
|
25
|
+
# no default to let the custom Scenario timeouts create the reload timeout
|
|
31
26
|
|
|
32
27
|
runs:
|
|
33
28
|
using: "composite"
|
|
@@ -41,17 +36,15 @@ runs:
|
|
|
41
36
|
echo "REPO_URL=${{ github.server_url }}/${{ github.repository }}" >> $GITHUB_ENV
|
|
42
37
|
echo "BRANCH_PATH=${{ github.ref }}" >> $GITHUB_ENV
|
|
43
38
|
echo "BASE_URL=${{ inputs.SERVER_URL }}" >> $GITHUB_ENV
|
|
44
|
-
echo "PLAYGROUND_EMAIL=${{ inputs.PLAYGROUND_EMAIL }}" >> $GITHUB_ENV
|
|
45
|
-
echo "PLAYGROUND_PASSWORD=${{ inputs.PLAYGROUND_PASSWORD }}" >> $GITHUB_ENV
|
|
46
|
-
echo "PLAYGROUND_ID=${{ inputs.PLAYGROUND_ID }}" >> $GITHUB_ENV
|
|
47
39
|
echo "DOCASSEMBLE_DEVELOPER_API_KEY=${{ inputs.DOCASSEMBLE_DEVELOPER_API_KEY }}" >> $GITHUB_ENV
|
|
48
40
|
echo "ALKILN_VERSION=${{ inputs.ALKILN_VERSION }}" >> $GITHUB_ENV
|
|
49
41
|
echo "MAX_SECONDS_FOR_SETUP=${{ inputs.MAX_SECONDS_FOR_SETUP }}" >> $GITHUB_ENV
|
|
42
|
+
echo "SERVER_RELOAD_TIMEOUT_SECONDS=${{ inputs.SERVER_RELOAD_TIMEOUT_SECONDS }}" >> $GITHUB_ENV
|
|
50
43
|
echo "_ORIGIN=github" >> $GITHUB_ENV
|
|
51
44
|
shell: bash
|
|
52
45
|
- name: "ALKiln: confirm info"
|
|
53
46
|
run: |
|
|
54
|
-
echo -e "\nALKiln version is $ALKILN_VERSION\nRepo is $REPO_URL\nBranch ref is $BRANCH_PATH\nMAX_SECONDS_FOR_SETUP is $MAX_SECONDS_FOR_SETUP\n"
|
|
47
|
+
echo -e "\nALKiln version is $ALKILN_VERSION\nRepo is $REPO_URL\nBranch ref is $BRANCH_PATH\nMAX_SECONDS_FOR_SETUP is $MAX_SECONDS_FOR_SETUP\nSERVER_RELOAD_TIMEOUT_SECONDS is $SERVER_RELOAD_TIMEOUT_SECONDS\n"
|
|
55
48
|
shell: bash
|
|
56
49
|
|
|
57
50
|
# Install node
|
|
@@ -90,10 +83,10 @@ runs:
|
|
|
90
83
|
|
|
91
84
|
# ##################################
|
|
92
85
|
# # A developer's workflow should look similar to the below
|
|
93
|
-
# # In place of `uses: suffolkLITLab/ALKiln@
|
|
86
|
+
# # In place of `uses: suffolkLITLab/ALKiln@v5`, they
|
|
94
87
|
# # might use another version.
|
|
95
88
|
#
|
|
96
|
-
# name:
|
|
89
|
+
# name: ALKiln v5 tests
|
|
97
90
|
# on:
|
|
98
91
|
# push:
|
|
99
92
|
# workflow_dispatch:
|
|
@@ -108,9 +101,9 @@ runs:
|
|
|
108
101
|
# runs-on: ubuntu-latest
|
|
109
102
|
# name: Run interview tests
|
|
110
103
|
# steps:
|
|
111
|
-
# - uses: actions/checkout@
|
|
104
|
+
# - uses: actions/checkout@v3
|
|
112
105
|
# - name: Use ALKiln to run tests
|
|
113
|
-
# uses: suffolkLITLab/ALKiln@
|
|
106
|
+
# uses: suffolkLITLab/ALKiln@v5
|
|
114
107
|
# with:
|
|
115
108
|
# SERVER_URL: "${{ secrets.SERVER_URL }}"
|
|
116
109
|
# DOCASSEMBLE_DEVELOPER_API_KEY: "${{ secrets.DOCASSEMBLE_DEVELOPER_API_KEY }}"
|
package/lib/scope.js
CHANGED
|
@@ -998,6 +998,11 @@ module.exports = {
|
|
|
998
998
|
}
|
|
999
999
|
}
|
|
1000
1000
|
|
|
1001
|
+
if ( !encoded_name ) {
|
|
1002
|
+
// Some fields, like comboboxes, have a weird var name setup
|
|
1003
|
+
encoded_name = $node.attr( `id` );
|
|
1004
|
+
}
|
|
1005
|
+
|
|
1001
1006
|
// ====================
|
|
1002
1007
|
// Table rows
|
|
1003
1008
|
// ====================
|
|
@@ -1472,6 +1477,11 @@ module.exports = {
|
|
|
1472
1477
|
*/
|
|
1473
1478
|
let row_used = null;
|
|
1474
1479
|
|
|
1480
|
+
// Skip hidden fields right away. When a date field was above a combobox,
|
|
1481
|
+
// interacting with the hidden field caused the date field to open its
|
|
1482
|
+
// calendar which blocked input to the combobox
|
|
1483
|
+
if ( field.type === `hidden` ) { return row_used; }
|
|
1484
|
+
|
|
1475
1485
|
let matching_input_rows = await scope.getMatchingRows( scope, { var_data, field });
|
|
1476
1486
|
|
|
1477
1487
|
// Nothing to set if there are no matching table rows
|
|
@@ -1486,6 +1496,8 @@ module.exports = {
|
|
|
1486
1496
|
|
|
1487
1497
|
let handle = await scope.get_handle_from_field( scope, { field: field });
|
|
1488
1498
|
|
|
1499
|
+
// After each previous input, figure out if this input is (now/still) disabled
|
|
1500
|
+
// TODO: Consider testing for disabled this before we get the matching row
|
|
1489
1501
|
let disabled = await handle.evaluate(( elem )=> {
|
|
1490
1502
|
// da's header covers the top of the section containing the fields which means
|
|
1491
1503
|
// sometimes it blocks nodes from clicks. Scroll item to the bottom instead.
|
|
@@ -1888,8 +1900,6 @@ module.exports = {
|
|
|
1888
1900
|
await handle.evaluate( el => { el.value = '' });
|
|
1889
1901
|
await handle.focus();
|
|
1890
1902
|
await handle.type( answer );
|
|
1891
|
-
setTimeout(async () => {
|
|
1892
|
-
}, 500)
|
|
1893
1903
|
},
|
|
1894
1904
|
|
|
1895
1905
|
draw_signature: async function ( scope, name ) {
|