@projectcaluma/ember-form-builder 11.0.0-beta.39 → 11.0.0-beta.40
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.
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { getOwner } from "@ember/application";
|
|
2
2
|
import { action } from "@ember/object";
|
|
3
3
|
import { inject as service } from "@ember/service";
|
|
4
|
+
import { camelize } from "@ember/string";
|
|
4
5
|
import Component from "@glimmer/component";
|
|
5
6
|
|
|
6
7
|
import { TYPE_MAP } from "@projectcaluma/ember-form/lib/field";
|
|
@@ -60,16 +61,20 @@ export default class CfbFormEditorQuestionDefault extends Component {
|
|
|
60
61
|
__typename: "Form",
|
|
61
62
|
};
|
|
62
63
|
|
|
64
|
+
const typename = TYPE_MAP[this.args.model.__typename];
|
|
65
|
+
const valueKey = camelize(typename.replace(/Answer$/, "Value"));
|
|
66
|
+
|
|
63
67
|
const newAnswer = {
|
|
64
68
|
id: btoa(`Answer:dv-answer-${this.args.model.slug}`),
|
|
65
|
-
__typename:
|
|
69
|
+
__typename: typename,
|
|
70
|
+
[valueKey]: undefined,
|
|
66
71
|
};
|
|
67
72
|
|
|
68
73
|
// The value depends on where it comes from. If there is a default value
|
|
69
74
|
// present on load the `value.content` will be set. After an update through
|
|
70
75
|
// this component the value will be a POJO on `value`.
|
|
71
76
|
const answer = {
|
|
72
|
-
...(this.args.
|
|
77
|
+
...(this.args.value?.content ?? this.args.value ?? newAnswer),
|
|
73
78
|
question: this.question,
|
|
74
79
|
};
|
|
75
80
|
|
|
@@ -115,8 +120,8 @@ export default class CfbFormEditorQuestionDefault extends Component {
|
|
|
115
120
|
|
|
116
121
|
this.args.update({
|
|
117
122
|
[this.field.answer._valueKey]: this.field.answer.serializedValue,
|
|
118
|
-
__typename: this.field.answer.__typename,
|
|
119
|
-
id: this.field.answer.id,
|
|
123
|
+
__typename: this.field.answer.raw.__typename,
|
|
124
|
+
id: this.field.answer.raw.id,
|
|
120
125
|
});
|
|
121
126
|
|
|
122
127
|
if (this.field.errors.length > 0) {
|
|
@@ -27,14 +27,14 @@ export default {
|
|
|
27
27
|
validateType("IntegerQuestion", false),
|
|
28
28
|
and(
|
|
29
29
|
validateNumber({ allowBlank: true, integer: true }),
|
|
30
|
-
validateGtLt({ lt: "integerMaxValue" })
|
|
30
|
+
validateGtLt({ lt: "integerMaxValue", allowNone: true })
|
|
31
31
|
)
|
|
32
32
|
),
|
|
33
33
|
integerMaxValue: or(
|
|
34
34
|
validateType("IntegerQuestion", false),
|
|
35
35
|
and(
|
|
36
36
|
validateNumber({ allowBlank: true, integer: true }),
|
|
37
|
-
validateGtLt({ gt: "integerMinValue" })
|
|
37
|
+
validateGtLt({ gt: "integerMinValue", allowNone: true })
|
|
38
38
|
)
|
|
39
39
|
),
|
|
40
40
|
|
|
@@ -42,14 +42,14 @@ export default {
|
|
|
42
42
|
validateType("FloatQuestion", false),
|
|
43
43
|
and(
|
|
44
44
|
validateNumber({ allowBlank: true }),
|
|
45
|
-
validateGtLt({ lt: "floatMaxValue" })
|
|
45
|
+
validateGtLt({ lt: "floatMaxValue", allowNone: true })
|
|
46
46
|
)
|
|
47
47
|
),
|
|
48
48
|
floatMaxValue: or(
|
|
49
49
|
validateType("FloatQuestion", false),
|
|
50
50
|
and(
|
|
51
51
|
validateNumber({ allowBlank: true }),
|
|
52
|
-
validateGtLt({ gt: "floatMinValue" })
|
|
52
|
+
validateGtLt({ gt: "floatMinValue", allowNone: true })
|
|
53
53
|
)
|
|
54
54
|
),
|
|
55
55
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@projectcaluma/ember-form-builder",
|
|
3
|
-
"version": "11.0.0-beta.
|
|
3
|
+
"version": "11.0.0-beta.40",
|
|
4
4
|
"description": "Ember engine for building Caluma forms.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ember-addon",
|
|
@@ -10,12 +10,13 @@
|
|
|
10
10
|
"homepage": "https://docs.caluma.io/ember-caluma",
|
|
11
11
|
"repository": "github:projectcaluma/ember-caluma",
|
|
12
12
|
"scripts": {
|
|
13
|
-
"test": "
|
|
13
|
+
"test": "concurrently \"npm:lint\" \"npm:test:*\" --names \"lint,test:\"",
|
|
14
14
|
"test:ember": "ember test",
|
|
15
15
|
"test:ember-compatibility": "ember try:each"
|
|
16
16
|
},
|
|
17
17
|
"peerDependencies": {
|
|
18
|
-
"ember-engines": ">= 0.8"
|
|
18
|
+
"ember-engines": ">= 0.8",
|
|
19
|
+
"ember-source": "^3.28.0 || ^4.0.0"
|
|
19
20
|
},
|
|
20
21
|
"dependencies": {
|
|
21
22
|
"@ember/legacy-built-in-components": "^0.4.1",
|
|
@@ -24,11 +25,11 @@
|
|
|
24
25
|
"@embroider/macros": "^1.10.0",
|
|
25
26
|
"@glimmer/component": "^1.1.2",
|
|
26
27
|
"@glimmer/tracking": "^1.1.2",
|
|
27
|
-
"@projectcaluma/ember-core": "^11.0.0-beta.
|
|
28
|
-
"@projectcaluma/ember-form": "^11.0.0-beta.
|
|
28
|
+
"@projectcaluma/ember-core": "^11.0.0-beta.40",
|
|
29
|
+
"@projectcaluma/ember-form": "^11.0.0-beta.40",
|
|
29
30
|
"codejar": "^3.6.0",
|
|
30
31
|
"ember-apollo-client": "~4.0.2",
|
|
31
|
-
"ember-auto-import": "^2.
|
|
32
|
+
"ember-auto-import": "^2.5.0",
|
|
32
33
|
"ember-changeset": "^4.1.2",
|
|
33
34
|
"ember-changeset-validations": "^4.1.1",
|
|
34
35
|
"ember-cli-babel": "^7.26.11",
|
|
@@ -60,12 +61,13 @@
|
|
|
60
61
|
"devDependencies": {
|
|
61
62
|
"@ember/optional-features": "2.0.0",
|
|
62
63
|
"@ember/test-helpers": "2.7.0",
|
|
63
|
-
"@embroider/test-setup": "2.0.
|
|
64
|
+
"@embroider/test-setup": "2.0.2",
|
|
64
65
|
"@faker-js/faker": "7.6.0",
|
|
65
|
-
"@projectcaluma/ember-testing": "11.0.0-beta.
|
|
66
|
+
"@projectcaluma/ember-testing": "11.0.0-beta.40",
|
|
66
67
|
"broccoli-asset-rev": "3.0.0",
|
|
68
|
+
"concurrently": "7.6.0",
|
|
67
69
|
"ember-autoresize-modifier": "^0.6.0",
|
|
68
|
-
"ember-cli": "4.
|
|
70
|
+
"ember-cli": "4.9.2",
|
|
69
71
|
"ember-cli-code-coverage": "1.0.3",
|
|
70
72
|
"ember-cli-dependency-checker": "3.3.1",
|
|
71
73
|
"ember-cli-inject-live-reload": "2.1.0",
|
|
@@ -73,17 +75,15 @@
|
|
|
73
75
|
"ember-cli-sri": "2.1.1",
|
|
74
76
|
"ember-cli-terser": "4.0.2",
|
|
75
77
|
"ember-data": "4.7.3",
|
|
76
|
-
"ember-
|
|
77
|
-
"ember-engines": "0.9.0",
|
|
78
|
+
"ember-engines": "0.8.23",
|
|
78
79
|
"ember-load-initializers": "2.1.2",
|
|
79
|
-
"ember-qunit": "6.
|
|
80
|
+
"ember-qunit": "6.1.1",
|
|
80
81
|
"ember-resolver": "8.0.3",
|
|
81
|
-
"ember-source": "4.
|
|
82
|
+
"ember-source": "4.9.3",
|
|
82
83
|
"ember-source-channel-url": "3.0.0",
|
|
83
84
|
"ember-try": "2.0.0",
|
|
84
85
|
"loader.js": "4.7.0",
|
|
85
86
|
"miragejs": "0.1.46",
|
|
86
|
-
"npm-run-all": "4.1.5",
|
|
87
87
|
"qunit": "2.19.3",
|
|
88
88
|
"qunit-dom": "2.0.0",
|
|
89
89
|
"webpack": "5.75.0"
|