relay-forms-nodeps 2.2.0 → 2.3.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/.vscode/settings.json +10 -0
- package/eslint.config.js +84 -0
- package/lib/RelayFormsTypes.d.ts +13 -10
- package/lib/Utils.d.ts +1 -1
- package/lib/Utils.js +4 -3
- package/lib/es/RelayFormsTypes.d.ts +13 -10
- package/lib/es/RelayFormsTypes.js +1 -0
- package/lib/es/Utils.d.ts +1 -1
- package/lib/es/index.js +3 -1
- package/lib/es/relay/RelayModernStore.js +1 -2
- package/lib/es/relay/RelayReader.js +0 -1
- package/lib/es/relay/RelayStoreProvider.d.ts +1 -1
- package/lib/es/relay/RelayTypes.d.ts +7 -7
- package/lib/es/relay/RelayTypes.js +1 -0
- package/lib/es/relay/queries.js +0 -1
- package/lib/es/relay/queryErrorsFieldQuery.graphql.d.ts +4 -5
- package/lib/es/relay/queryErrorsFieldQuery.graphql.js +4 -6
- package/lib/es/relay/queryFieldFragment.graphql.d.ts +3 -4
- package/lib/es/relay/queryFieldFragment.graphql.js +1 -2
- package/lib/es/relay/queryFieldQuery.graphql.d.ts +4 -5
- package/lib/es/relay/queryFieldQuery.graphql.js +4 -6
- package/lib/es/relay/queryValueFieldFragment.graphql.d.ts +3 -4
- package/lib/es/relay/queryValueFieldFragment.graphql.js +1 -2
- package/lib/es/useForm.js +6 -2
- package/lib/es/useFormState.d.ts +2 -12
- package/lib/index.js +70 -8
- package/lib/relay/RelayModernRecord.js +2 -1
- package/lib/relay/RelayModernSelector.js +1 -0
- package/lib/relay/RelayModernStore.js +7 -7
- package/lib/relay/RelayReader.js +1 -1
- package/lib/relay/RelayRecordProxy.js +1 -0
- package/lib/relay/RelayRecordSource.js +1 -0
- package/lib/relay/RelayRecordSourceMutator.js +1 -0
- package/lib/relay/RelayRecordSourceProxy.js +1 -0
- package/lib/relay/RelayReferenceMarker.js +1 -0
- package/lib/relay/RelayStoreProvider.d.ts +1 -1
- package/lib/relay/RelayStoreProvider.js +3 -1
- package/lib/relay/RelayStoreUtils.js +1 -0
- package/lib/relay/RelayTypes.d.ts +7 -7
- package/lib/relay/queries.js +1 -1
- package/lib/relay/queryErrorsFieldQuery.graphql.d.ts +4 -5
- package/lib/relay/queryErrorsFieldQuery.graphql.js +4 -6
- package/lib/relay/queryFieldFragment.graphql.d.ts +3 -4
- package/lib/relay/queryFieldFragment.graphql.js +1 -2
- package/lib/relay/queryFieldQuery.graphql.d.ts +4 -5
- package/lib/relay/queryFieldQuery.graphql.js +4 -6
- package/lib/relay/queryValueFieldFragment.graphql.d.ts +3 -4
- package/lib/relay/queryValueFieldFragment.graphql.js +1 -2
- package/lib/umd/relay-forms-nodeps.js +17 -12
- package/lib/umd/relay-forms-nodeps.js.map +1 -1
- package/lib/umd/relay-forms-nodeps.min.js +1 -1
- package/lib/umd/relay-forms-nodeps.min.js.map +1 -1
- package/lib/useForceUpdate.js +2 -1
- package/lib/useForm.js +17 -11
- package/lib/useFormField.js +9 -8
- package/lib/useFormState.d.ts +2 -12
- package/lib/useFormState.js +5 -3
- package/lib/useFormValue.js +3 -2
- package/package.json +106 -102
- package/rollup.config.js +92 -92
- package/yarn-error.log +127 -127
package/lib/useForm.js
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
exports.useForm = void 0;
|
|
6
7
|
var React = require("react");
|
|
7
8
|
var RelayStoreProvider_1 = require("./relay/RelayStoreProvider");
|
|
8
9
|
var RelayStoreUtils_1 = require("./relay/RelayStoreUtils");
|
|
@@ -10,7 +11,9 @@ var useFormField_1 = require("./useFormField");
|
|
|
10
11
|
var Utils_1 = require("./Utils");
|
|
11
12
|
function logicSubmit(environment, onSubmit) {
|
|
12
13
|
function dispose() {
|
|
13
|
-
|
|
14
|
+
if (subscription) {
|
|
15
|
+
subscription.dispose();
|
|
16
|
+
}
|
|
14
17
|
subscription = undefined;
|
|
15
18
|
}
|
|
16
19
|
var isSubmitting = false;
|
|
@@ -18,14 +21,14 @@ function logicSubmit(environment, onSubmit) {
|
|
|
18
21
|
function execute(snapshot) {
|
|
19
22
|
var disposeSubmit = function () {
|
|
20
23
|
isSubmitting = false;
|
|
21
|
-
Utils_1.commit(environment, function (_, form) {
|
|
24
|
+
(0, Utils_1.commit)(environment, function (_, form) {
|
|
22
25
|
form.setValue(false, 'isSubmitting');
|
|
23
26
|
});
|
|
24
27
|
};
|
|
25
28
|
var data = snapshot.data;
|
|
26
29
|
var entries = data.form.entries;
|
|
27
30
|
var filtered = entries.filter(function (value) {
|
|
28
|
-
return useFormField_1.isDone(value.check);
|
|
31
|
+
return (0, useFormField_1.isDone)(value.check);
|
|
29
32
|
});
|
|
30
33
|
var isValidating = filtered.length !== entries.length;
|
|
31
34
|
var errors = entries.filter(function (value) {
|
|
@@ -34,7 +37,7 @@ function logicSubmit(environment, onSubmit) {
|
|
|
34
37
|
return value.id;
|
|
35
38
|
});
|
|
36
39
|
var isValid = !isValidating && errors.length === 0;
|
|
37
|
-
Utils_1.commit(environment, function (store, form) {
|
|
40
|
+
(0, Utils_1.commit)(environment, function (store, form) {
|
|
38
41
|
form.setValue(isValidating, 'isValidating').setValue(isValid, 'isValid');
|
|
39
42
|
var errorFields = [];
|
|
40
43
|
errors.forEach(function (id) {
|
|
@@ -49,7 +52,7 @@ function logicSubmit(environment, onSubmit) {
|
|
|
49
52
|
result_1[entry.key] = entry.value;
|
|
50
53
|
});
|
|
51
54
|
var submit_1 = onSubmit(result_1);
|
|
52
|
-
if (RelayStoreUtils_1.isPromise(submit_1)) {
|
|
55
|
+
if ((0, RelayStoreUtils_1.isPromise)(submit_1)) {
|
|
53
56
|
submit_1.then(disposeSubmit).catch(disposeSubmit);
|
|
54
57
|
return;
|
|
55
58
|
}
|
|
@@ -60,7 +63,7 @@ function logicSubmit(environment, onSubmit) {
|
|
|
60
63
|
function reset() {
|
|
61
64
|
if (!isSubmitting) {
|
|
62
65
|
dispose();
|
|
63
|
-
Utils_1.commit(environment, function (_, form) {
|
|
66
|
+
(0, Utils_1.commit)(environment, function (_, form) {
|
|
64
67
|
form.setValue(false, 'isSubmitting').setValue(false, 'isValidating').setLinkedRecords([], 'errors').getLinkedRecords('entries').forEach(function (entry) {
|
|
65
68
|
return entry.setValue(useFormField_1.RESET, 'check').setValue(undefined, 'error');
|
|
66
69
|
});
|
|
@@ -68,7 +71,7 @@ function logicSubmit(environment, onSubmit) {
|
|
|
68
71
|
}
|
|
69
72
|
}
|
|
70
73
|
function validate() {
|
|
71
|
-
Utils_1.commit(environment, function (_, form) {
|
|
74
|
+
(0, Utils_1.commit)(environment, function (_, form) {
|
|
72
75
|
var tobeValitating = form.setValue(isSubmitting, 'isSubmitting').getLinkedRecords('entries').filter(function (value) {
|
|
73
76
|
return value.getValue('check') === useFormField_1.TOBEVALIDATE;
|
|
74
77
|
});
|
|
@@ -86,7 +89,9 @@ function logicSubmit(environment, onSubmit) {
|
|
|
86
89
|
execute(snapshot);
|
|
87
90
|
}
|
|
88
91
|
function submit(event) {
|
|
89
|
-
|
|
92
|
+
if (event) {
|
|
93
|
+
event.preventDefault();
|
|
94
|
+
}
|
|
90
95
|
if (!isSubmitting) {
|
|
91
96
|
isSubmitting = true;
|
|
92
97
|
validate();
|
|
@@ -112,9 +117,9 @@ function logicSubmit(environment, onSubmit) {
|
|
|
112
117
|
getData: getData
|
|
113
118
|
};
|
|
114
119
|
}
|
|
115
|
-
|
|
120
|
+
var useForm = function (_a) {
|
|
116
121
|
var onSubmit = _a.onSubmit;
|
|
117
|
-
var environment = RelayStoreProvider_1.useStore();
|
|
122
|
+
var environment = (0, RelayStoreProvider_1.useStore)();
|
|
118
123
|
var resolver = React.useMemo(function () {
|
|
119
124
|
return logicSubmit(environment, onSubmit);
|
|
120
125
|
}, [environment, onSubmit]);
|
|
@@ -122,4 +127,5 @@ exports.useForm = function (_a) {
|
|
|
122
127
|
return resolver.subscribe();
|
|
123
128
|
}, [resolver]);
|
|
124
129
|
return resolver.getData();
|
|
125
|
-
};
|
|
130
|
+
};
|
|
131
|
+
exports.useForm = useForm;
|
package/lib/useFormField.js
CHANGED
|
@@ -13,6 +13,7 @@ var __assign = this && this.__assign || function () {
|
|
|
13
13
|
Object.defineProperty(exports, "__esModule", {
|
|
14
14
|
value: true
|
|
15
15
|
});
|
|
16
|
+
exports.useFormField = exports.isDone = exports.RESET = exports.VALIDATING = exports.TOBEVALIDATE = void 0;
|
|
16
17
|
var React = require("react");
|
|
17
18
|
var queries_1 = require("./relay/queries");
|
|
18
19
|
var queryValueFieldFragment_graphql_1 = require("./relay/queryValueFieldFragment.graphql");
|
|
@@ -44,7 +45,7 @@ function logicSetValue(params) {
|
|
|
44
45
|
var validate = undefined;
|
|
45
46
|
var firstSet = true;
|
|
46
47
|
var deps = {};
|
|
47
|
-
var localId = Utils_1.getFieldId(key);
|
|
48
|
+
var localId = (0, Utils_1.getFieldId)(key);
|
|
48
49
|
function getDeps() {
|
|
49
50
|
return deps;
|
|
50
51
|
}
|
|
@@ -63,7 +64,7 @@ function logicSetValue(params) {
|
|
|
63
64
|
if (commitValue === void 0) {
|
|
64
65
|
commitValue = true;
|
|
65
66
|
}
|
|
66
|
-
Utils_1.commit(environment, function (store, form) {
|
|
67
|
+
(0, Utils_1.commit)(environment, function (store, form) {
|
|
67
68
|
var field = store.get(localId);
|
|
68
69
|
if (!field) {
|
|
69
70
|
field = store.create(localId).setValue(localId, 'id').setValue(label, 'label').setValue(key, 'key');
|
|
@@ -134,14 +135,14 @@ function logicSetValue(params) {
|
|
|
134
135
|
}
|
|
135
136
|
finalizeCheck(error);
|
|
136
137
|
}
|
|
137
|
-
if (RelayStoreUtils_1.isPromise(result)) {
|
|
138
|
+
if ((0, RelayStoreUtils_1.isPromise)(result)) {
|
|
138
139
|
result.then(internalFinalize).catch(internalFinalize);
|
|
139
140
|
} else {
|
|
140
141
|
internalFinalize(result);
|
|
141
142
|
}
|
|
142
143
|
}
|
|
143
144
|
function subscribe() {
|
|
144
|
-
var snapshot = Utils_1.getSnapshot(environment, queries_1.FragmentSet, key);
|
|
145
|
+
var snapshot = (0, Utils_1.getSnapshot)(environment, queries_1.FragmentSet, key);
|
|
145
146
|
var disposeSubscrition = environment.subscribe(snapshot, function (s) {
|
|
146
147
|
var data = s.data;
|
|
147
148
|
var dataCheck = data.check;
|
|
@@ -159,7 +160,7 @@ function logicSetValue(params) {
|
|
|
159
160
|
var disposeDeps = [];
|
|
160
161
|
if (dependsOn != null) {
|
|
161
162
|
dependsOn.forEach(function (depKey) {
|
|
162
|
-
var snapshot = Utils_1.getSnapshot(environment, queryValueFieldFragment_graphql_1.default, depKey);
|
|
163
|
+
var snapshot = (0, Utils_1.getSnapshot)(environment, queryValueFieldFragment_graphql_1.default, depKey);
|
|
163
164
|
var disposeDep = environment.subscribe(snapshot, function (s) {
|
|
164
165
|
var _a;
|
|
165
166
|
var data = s.data;
|
|
@@ -174,7 +175,7 @@ function logicSetValue(params) {
|
|
|
174
175
|
}
|
|
175
176
|
var dispose = function () {
|
|
176
177
|
disposeSubscrition();
|
|
177
|
-
Utils_1.commit(environment, function (store, form) {
|
|
178
|
+
(0, Utils_1.commit)(environment, function (store, form) {
|
|
178
179
|
var entriesArray = form.getLinkedRecords('entries');
|
|
179
180
|
var newEntries = entriesArray.filter(function (value) {
|
|
180
181
|
return value.getDataID() != localId;
|
|
@@ -205,8 +206,8 @@ function useFormField(_a) {
|
|
|
205
206
|
validateOnChange = _a.validateOnChange,
|
|
206
207
|
label = _a.label,
|
|
207
208
|
dependsOn = _a.dependsOn;
|
|
208
|
-
var forceUpdate = useForceUpdate_1.useForceUpdate();
|
|
209
|
-
var environment = RelayStoreProvider_1.useStore();
|
|
209
|
+
var forceUpdate = (0, useForceUpdate_1.useForceUpdate)();
|
|
210
|
+
var environment = (0, RelayStoreProvider_1.useStore)();
|
|
210
211
|
var resolver = React.useMemo(function () {
|
|
211
212
|
return logicSetValue({
|
|
212
213
|
environment: environment,
|
package/lib/useFormState.d.ts
CHANGED
|
@@ -1,12 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
readonly check: number;
|
|
4
|
-
readonly error: string;
|
|
5
|
-
readonly id: string;
|
|
6
|
-
readonly key: string;
|
|
7
|
-
readonly label: string;
|
|
8
|
-
}[];
|
|
9
|
-
readonly isSubmitting: boolean;
|
|
10
|
-
readonly isValid: boolean;
|
|
11
|
-
readonly isValidating: boolean;
|
|
12
|
-
};
|
|
1
|
+
import { QueryErrorsData } from './relay/queries';
|
|
2
|
+
export declare const useFormState: () => QueryErrorsData['form'] | null;
|
package/lib/useFormState.js
CHANGED
|
@@ -3,11 +3,12 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
exports.useFormState = void 0;
|
|
6
7
|
var React = require("react");
|
|
7
8
|
var RelayStoreProvider_1 = require("./relay/RelayStoreProvider");
|
|
8
9
|
var Utils_1 = require("./Utils");
|
|
9
|
-
|
|
10
|
-
var environment = RelayStoreProvider_1.useStore();
|
|
10
|
+
var useFormState = function () {
|
|
11
|
+
var environment = (0, RelayStoreProvider_1.useStore)();
|
|
11
12
|
var snapshot = React.useMemo(function () {
|
|
12
13
|
var s = environment.lookup(Utils_1.operationQueryErrorsForm.fragment);
|
|
13
14
|
s.seenRecords.add('local:form');
|
|
@@ -23,4 +24,5 @@ exports.useFormState = function () {
|
|
|
23
24
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
24
25
|
}, [snapshot]);
|
|
25
26
|
return data;
|
|
26
|
-
};
|
|
27
|
+
};
|
|
28
|
+
exports.useFormState = useFormState;
|
package/lib/useFormValue.js
CHANGED
|
@@ -3,14 +3,15 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
exports.useFormValue = void 0;
|
|
6
7
|
var React = require("react");
|
|
7
8
|
var queries_1 = require("./relay/queries");
|
|
8
9
|
var RelayStoreProvider_1 = require("./relay/RelayStoreProvider");
|
|
9
10
|
var Utils_1 = require("./Utils");
|
|
10
11
|
function useFormValue(key) {
|
|
11
|
-
var environment = RelayStoreProvider_1.useStore();
|
|
12
|
+
var environment = (0, RelayStoreProvider_1.useStore)();
|
|
12
13
|
var snapshot = React.useMemo(function () {
|
|
13
|
-
return Utils_1.getSnapshot(environment, queries_1.FragmentValue, key);
|
|
14
|
+
return (0, Utils_1.getSnapshot)(environment, queries_1.FragmentValue, key);
|
|
14
15
|
}, [key, environment]);
|
|
15
16
|
var _a = React.useState(snapshot.data),
|
|
16
17
|
data = _a[0],
|
package/package.json
CHANGED
|
@@ -1,102 +1,106 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "relay-forms-nodeps",
|
|
3
|
-
"version": "2.
|
|
4
|
-
"keywords": [
|
|
5
|
-
"forms",
|
|
6
|
-
"relay",
|
|
7
|
-
"hooks",
|
|
8
|
-
"react",
|
|
9
|
-
"react-native",
|
|
10
|
-
"validation"
|
|
11
|
-
],
|
|
12
|
-
"main": "lib/index.js",
|
|
13
|
-
"module": "./lib/es/index.js",
|
|
14
|
-
"unpkg": "lib/umd/relay-forms-nodeps.min.js",
|
|
15
|
-
"license": "MIT",
|
|
16
|
-
"description": "Relay Forms Without Deps",
|
|
17
|
-
"author": {
|
|
18
|
-
"name": "morrys"
|
|
19
|
-
},
|
|
20
|
-
"homepage": "https://morrys.github.io/relay-forms/docs/relay-forms.html",
|
|
21
|
-
"repository": {
|
|
22
|
-
"type": "git",
|
|
23
|
-
"url": "https://github.com/morrys/relay-forms"
|
|
24
|
-
},
|
|
25
|
-
"scripts": {
|
|
26
|
-
"clean": "rimraf lib",
|
|
27
|
-
"relay": "relay-compiler",
|
|
28
|
-
"compile": "npm run clean && tsc && tsc --project tsconfig.esm.json && npm run build:js && npm run build:replace && npm run rollup",
|
|
29
|
-
"build": "npm run compile && npm run test",
|
|
30
|
-
"fast:test": "npm run clean && tsc && npm run test",
|
|
31
|
-
"test": "cross-env NODE_ENV=test jest --coverage",
|
|
32
|
-
"format": "prettier --write \"src/**/*.ts*\" \"!src/relay/**/*.ts\"",
|
|
33
|
-
"format:ci": "prettier --list-different \"src/**/*.ts*\" \"!src/relay/**/*.ts\"",
|
|
34
|
-
"eslint": "eslint ./src
|
|
35
|
-
"prepublishOnly": "npm run build",
|
|
36
|
-
"build:js": "babel lib --out-dir lib --extensions \".js,.jsx\" && babel lib/es --out-dir lib/es --extensions \".js,.jsx\"",
|
|
37
|
-
"build:replace": "replace-in-file --configFile=replace.config.js",
|
|
38
|
-
"rollup": "rollup -c"
|
|
39
|
-
},
|
|
40
|
-
"relay": {
|
|
41
|
-
"src": "./compile/",
|
|
42
|
-
"schema": "./forms.graphql",
|
|
43
|
-
"excludes": [
|
|
44
|
-
"__generated__",
|
|
45
|
-
"node_modules"
|
|
46
|
-
],
|
|
47
|
-
"language": "typescript",
|
|
48
|
-
"artifactDirectory": "./src/relay",
|
|
49
|
-
"persistConfig": {
|
|
50
|
-
"file": "./ignore-queries.json"
|
|
51
|
-
}
|
|
52
|
-
},
|
|
53
|
-
"peerDependencies": {
|
|
54
|
-
"react": "^16.9.0 || ^17 || ^18"
|
|
55
|
-
},
|
|
56
|
-
"devDependencies": {
|
|
57
|
-
"@babel/cli": "^7.8.3",
|
|
58
|
-
"@babel/runtime": "7.20.7",
|
|
59
|
-
"
|
|
60
|
-
"@
|
|
61
|
-
"
|
|
62
|
-
"
|
|
63
|
-
"
|
|
64
|
-
"react
|
|
65
|
-
"
|
|
66
|
-
"@types/
|
|
67
|
-
"@types/
|
|
68
|
-
"
|
|
69
|
-
"
|
|
70
|
-
"
|
|
71
|
-
"
|
|
72
|
-
"
|
|
73
|
-
"
|
|
74
|
-
"
|
|
75
|
-
"
|
|
76
|
-
"
|
|
77
|
-
"
|
|
78
|
-
"
|
|
79
|
-
"eslint": "6.
|
|
80
|
-
"eslint-
|
|
81
|
-
"eslint-
|
|
82
|
-
"eslint-plugin-
|
|
83
|
-
"
|
|
84
|
-
"
|
|
85
|
-
"
|
|
86
|
-
"
|
|
87
|
-
"
|
|
88
|
-
"
|
|
89
|
-
"
|
|
90
|
-
"
|
|
91
|
-
"relay-compiler-language-typescript": "12.0.0",
|
|
92
|
-
"
|
|
93
|
-
"
|
|
94
|
-
"
|
|
95
|
-
"
|
|
96
|
-
"
|
|
97
|
-
"
|
|
98
|
-
"
|
|
99
|
-
"
|
|
100
|
-
"
|
|
101
|
-
|
|
102
|
-
|
|
1
|
+
{
|
|
2
|
+
"name": "relay-forms-nodeps",
|
|
3
|
+
"version": "2.3.0",
|
|
4
|
+
"keywords": [
|
|
5
|
+
"forms",
|
|
6
|
+
"relay",
|
|
7
|
+
"hooks",
|
|
8
|
+
"react",
|
|
9
|
+
"react-native",
|
|
10
|
+
"validation"
|
|
11
|
+
],
|
|
12
|
+
"main": "lib/index.js",
|
|
13
|
+
"module": "./lib/es/index.js",
|
|
14
|
+
"unpkg": "lib/umd/relay-forms-nodeps.min.js",
|
|
15
|
+
"license": "MIT",
|
|
16
|
+
"description": "Relay Forms Without Deps",
|
|
17
|
+
"author": {
|
|
18
|
+
"name": "morrys"
|
|
19
|
+
},
|
|
20
|
+
"homepage": "https://morrys.github.io/relay-forms/docs/relay-forms.html",
|
|
21
|
+
"repository": {
|
|
22
|
+
"type": "git",
|
|
23
|
+
"url": "https://github.com/morrys/relay-forms"
|
|
24
|
+
},
|
|
25
|
+
"scripts": {
|
|
26
|
+
"clean": "rimraf lib",
|
|
27
|
+
"relay": "relay-compiler",
|
|
28
|
+
"compile": "npm run clean && tsc && tsc --project tsconfig.esm.json && npm run build:js && npm run build:replace && npm run rollup",
|
|
29
|
+
"build": "npm run compile && npm run test",
|
|
30
|
+
"fast:test": "npm run clean && tsc && npm run test",
|
|
31
|
+
"test": "cross-env NODE_ENV=test jest --coverage",
|
|
32
|
+
"format": "prettier --write \"src/**/*.ts*\" \"!src/relay/**/*.ts\"",
|
|
33
|
+
"format:ci": "prettier --list-different \"src/**/*.ts*\" \"!src/relay/**/*.ts\"",
|
|
34
|
+
"eslint": "eslint ./src",
|
|
35
|
+
"prepublishOnly": "npm run build",
|
|
36
|
+
"build:js": "babel lib --out-dir lib --extensions \".js,.jsx\" && babel lib/es --out-dir lib/es --extensions \".js,.jsx\"",
|
|
37
|
+
"build:replace": "replace-in-file --configFile=replace.config.js",
|
|
38
|
+
"rollup": "rollup -c"
|
|
39
|
+
},
|
|
40
|
+
"relay": {
|
|
41
|
+
"src": "./compile/",
|
|
42
|
+
"schema": "./forms.graphql",
|
|
43
|
+
"excludes": [
|
|
44
|
+
"__generated__",
|
|
45
|
+
"node_modules"
|
|
46
|
+
],
|
|
47
|
+
"language": "typescript",
|
|
48
|
+
"artifactDirectory": "./src/relay",
|
|
49
|
+
"persistConfig": {
|
|
50
|
+
"file": "./ignore-queries.json"
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
"peerDependencies": {
|
|
54
|
+
"react": "^16.9.0 || ^17 || ^18 || ^19"
|
|
55
|
+
},
|
|
56
|
+
"devDependencies": {
|
|
57
|
+
"@babel/cli": "^7.8.3",
|
|
58
|
+
"@babel/runtime": "7.20.7",
|
|
59
|
+
"@eslint/js": "^9.39.4",
|
|
60
|
+
"@rollup/plugin-babel": "5.2.2",
|
|
61
|
+
"@rollup/plugin-commonjs": "14.0.0",
|
|
62
|
+
"@rollup/plugin-node-resolve": "^8.4.0",
|
|
63
|
+
"@rollup/plugin-replace": "^2.3.3",
|
|
64
|
+
"@testing-library/react": "^16.3.2",
|
|
65
|
+
"@types/babel__traverse": "7.18.2",
|
|
66
|
+
"@types/jest": "24.0.18",
|
|
67
|
+
"@types/node": "13.9.3",
|
|
68
|
+
"@types/react": "^19.0.26",
|
|
69
|
+
"@types/react-dom": "^19.0.10",
|
|
70
|
+
"@typescript-eslint/eslint-plugin": "^8.62.1",
|
|
71
|
+
"@typescript-eslint/parser": "^8.62.1",
|
|
72
|
+
"babel-preset-fbjs": "^3.3.0",
|
|
73
|
+
"cross-env": "6.0.3",
|
|
74
|
+
"eslint": "^9.39.4",
|
|
75
|
+
"eslint-config-prettier": "^10.1.8",
|
|
76
|
+
"eslint-import-resolver-typescript": "4.4.5",
|
|
77
|
+
"eslint-plugin-import": "2.32.0",
|
|
78
|
+
"eslint-plugin-json": "4.0.1",
|
|
79
|
+
"eslint-plugin-jsx-a11y": "6.10.2",
|
|
80
|
+
"eslint-plugin-prettier": "5.5.6",
|
|
81
|
+
"eslint-plugin-react": "7.37.5",
|
|
82
|
+
"eslint-plugin-react-hooks": "7.1.1",
|
|
83
|
+
"graphql": "^14.2.0",
|
|
84
|
+
"jest": "^26.0.0",
|
|
85
|
+
"prettier": "^3.9.4",
|
|
86
|
+
"promise-polyfill": "6.1.0",
|
|
87
|
+
"react": "^19.0.0",
|
|
88
|
+
"react-dom": "^19.0.0",
|
|
89
|
+
"react-test-renderer": "^19.2.7",
|
|
90
|
+
"relay-compiler": "^21.0.0",
|
|
91
|
+
"relay-compiler-language-typescript": "12.0.0",
|
|
92
|
+
"relay-hooks": "^10.0.0",
|
|
93
|
+
"relay-runtime": "^21.0.0",
|
|
94
|
+
"relay-test-utils": "^21.0.0",
|
|
95
|
+
"relay-test-utils-internal": "^21.0.0",
|
|
96
|
+
"replace-in-file": "6.2.0",
|
|
97
|
+
"rimraf": "^2.5.4",
|
|
98
|
+
"rollup": "^2.23.0",
|
|
99
|
+
"rollup-plugin-sourcemaps": "0.6.2",
|
|
100
|
+
"rollup-plugin-terser": "^6.1.0",
|
|
101
|
+
"rollup-plugin-typescript2": "^0.27.1",
|
|
102
|
+
"ts-jest": "^26.5.6",
|
|
103
|
+
"tslib": "^2.8.1",
|
|
104
|
+
"typescript": "^4.0.0"
|
|
105
|
+
}
|
|
106
|
+
}
|
package/rollup.config.js
CHANGED
|
@@ -1,92 +1,92 @@
|
|
|
1
|
-
/* eslint-disable @typescript-eslint/explicit-function-return-type */
|
|
2
|
-
/* eslint-disable @typescript-eslint/camelcase */
|
|
3
|
-
/* eslint-disable import/no-default-export */
|
|
4
|
-
import babel from '@rollup/plugin-babel';
|
|
5
|
-
import commonjs from '@rollup/plugin-commonjs';
|
|
6
|
-
import nodeResolve from '@rollup/plugin-node-resolve';
|
|
7
|
-
import replace from '@rollup/plugin-replace';
|
|
8
|
-
import sourceMaps from 'rollup-plugin-sourcemaps';
|
|
9
|
-
import { terser } from 'rollup-plugin-terser';
|
|
10
|
-
import typescript from 'rollup-plugin-typescript2';
|
|
11
|
-
import pkg from './package.json';
|
|
12
|
-
|
|
13
|
-
const makeExternalPredicate = (externalArr) => {
|
|
14
|
-
if (externalArr.length === 0) {
|
|
15
|
-
return () => false;
|
|
16
|
-
}
|
|
17
|
-
const pattern = new RegExp(`^(${externalArr.join('|')})($|/)`);
|
|
18
|
-
return (id) => pattern.test(id);
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
const extensions = ['.ts', '.tsx'];
|
|
22
|
-
|
|
23
|
-
function createConfigInternal({ format, production }) {
|
|
24
|
-
return {
|
|
25
|
-
input: 'src/index.ts',
|
|
26
|
-
output: {
|
|
27
|
-
file: 'lib/' + format + '/relay-forms-nodeps' + (production ? '.min' : '') + '.js',
|
|
28
|
-
format,
|
|
29
|
-
name: 'relay-forms-nodeps',
|
|
30
|
-
indent: false,
|
|
31
|
-
globals: {
|
|
32
|
-
react: 'React',
|
|
33
|
-
},
|
|
34
|
-
sourcemap: true,
|
|
35
|
-
exports: 'named',
|
|
36
|
-
},
|
|
37
|
-
external: makeExternalPredicate([
|
|
38
|
-
...Object.keys(pkg.dependencies || {}),
|
|
39
|
-
...Object.keys(pkg.peerDependencies || {}),
|
|
40
|
-
]),
|
|
41
|
-
plugins: [
|
|
42
|
-
nodeResolve({
|
|
43
|
-
extensions,
|
|
44
|
-
}),
|
|
45
|
-
replace({
|
|
46
|
-
'import * as ': 'import ',
|
|
47
|
-
}),
|
|
48
|
-
typescript({
|
|
49
|
-
tsconfigOverride: {
|
|
50
|
-
compilerOptions: {
|
|
51
|
-
declaration: false,
|
|
52
|
-
declarationMap: false,
|
|
53
|
-
module: 'es2015',
|
|
54
|
-
esModuleInterop: true,
|
|
55
|
-
sourceMap: true,
|
|
56
|
-
importHelpers: false,
|
|
57
|
-
},
|
|
58
|
-
},
|
|
59
|
-
}),
|
|
60
|
-
format === 'umd' &&
|
|
61
|
-
commonjs({
|
|
62
|
-
include: /\/node_modules\//,
|
|
63
|
-
}),
|
|
64
|
-
babel({ extensions, include: ['src/**/*'], babelHelpers: 'bundled' }),
|
|
65
|
-
replace({
|
|
66
|
-
'process.env.NODE_ENV': JSON.stringify(production ? 'production' : 'development'),
|
|
67
|
-
}),
|
|
68
|
-
sourceMaps(),
|
|
69
|
-
production &&
|
|
70
|
-
terser({
|
|
71
|
-
output: { comments: false },
|
|
72
|
-
compress: {
|
|
73
|
-
keep_infinity: true,
|
|
74
|
-
pure_getters: true,
|
|
75
|
-
passes: 10,
|
|
76
|
-
},
|
|
77
|
-
ecma: 5,
|
|
78
|
-
toplevel: format === 'cjs',
|
|
79
|
-
warnings: true,
|
|
80
|
-
}),
|
|
81
|
-
],
|
|
82
|
-
};
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
function createConfig(format) {
|
|
86
|
-
return [
|
|
87
|
-
createConfigInternal({ format, production: false }),
|
|
88
|
-
createConfigInternal({ format, production: true }),
|
|
89
|
-
];
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
export default [...createConfig('umd')];
|
|
1
|
+
/* eslint-disable @typescript-eslint/explicit-function-return-type */
|
|
2
|
+
/* eslint-disable @typescript-eslint/camelcase */
|
|
3
|
+
/* eslint-disable import/no-default-export */
|
|
4
|
+
import babel from '@rollup/plugin-babel';
|
|
5
|
+
import commonjs from '@rollup/plugin-commonjs';
|
|
6
|
+
import nodeResolve from '@rollup/plugin-node-resolve';
|
|
7
|
+
import replace from '@rollup/plugin-replace';
|
|
8
|
+
import sourceMaps from 'rollup-plugin-sourcemaps';
|
|
9
|
+
import { terser } from 'rollup-plugin-terser';
|
|
10
|
+
import typescript from 'rollup-plugin-typescript2';
|
|
11
|
+
import pkg from './package.json';
|
|
12
|
+
|
|
13
|
+
const makeExternalPredicate = (externalArr) => {
|
|
14
|
+
if (externalArr.length === 0) {
|
|
15
|
+
return () => false;
|
|
16
|
+
}
|
|
17
|
+
const pattern = new RegExp(`^(${externalArr.join('|')})($|/)`);
|
|
18
|
+
return (id) => pattern.test(id);
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
const extensions = ['.ts', '.tsx'];
|
|
22
|
+
|
|
23
|
+
function createConfigInternal({ format, production }) {
|
|
24
|
+
return {
|
|
25
|
+
input: 'src/index.ts',
|
|
26
|
+
output: {
|
|
27
|
+
file: 'lib/' + format + '/relay-forms-nodeps' + (production ? '.min' : '') + '.js',
|
|
28
|
+
format,
|
|
29
|
+
name: 'relay-forms-nodeps',
|
|
30
|
+
indent: false,
|
|
31
|
+
globals: {
|
|
32
|
+
react: 'React',
|
|
33
|
+
},
|
|
34
|
+
sourcemap: true,
|
|
35
|
+
exports: 'named',
|
|
36
|
+
},
|
|
37
|
+
external: makeExternalPredicate([
|
|
38
|
+
...Object.keys(pkg.dependencies || {}),
|
|
39
|
+
...Object.keys(pkg.peerDependencies || {}),
|
|
40
|
+
]),
|
|
41
|
+
plugins: [
|
|
42
|
+
nodeResolve({
|
|
43
|
+
extensions,
|
|
44
|
+
}),
|
|
45
|
+
replace({
|
|
46
|
+
'import * as ': 'import ',
|
|
47
|
+
}),
|
|
48
|
+
typescript({
|
|
49
|
+
tsconfigOverride: {
|
|
50
|
+
compilerOptions: {
|
|
51
|
+
declaration: false,
|
|
52
|
+
declarationMap: false,
|
|
53
|
+
module: 'es2015',
|
|
54
|
+
esModuleInterop: true,
|
|
55
|
+
sourceMap: true,
|
|
56
|
+
importHelpers: false,
|
|
57
|
+
},
|
|
58
|
+
},
|
|
59
|
+
}),
|
|
60
|
+
format === 'umd' &&
|
|
61
|
+
commonjs({
|
|
62
|
+
include: /\/node_modules\//,
|
|
63
|
+
}),
|
|
64
|
+
babel({ extensions, include: ['src/**/*'], babelHelpers: 'bundled' }),
|
|
65
|
+
replace({
|
|
66
|
+
'process.env.NODE_ENV': JSON.stringify(production ? 'production' : 'development'),
|
|
67
|
+
}),
|
|
68
|
+
sourceMaps(),
|
|
69
|
+
production &&
|
|
70
|
+
terser({
|
|
71
|
+
output: { comments: false },
|
|
72
|
+
compress: {
|
|
73
|
+
keep_infinity: true,
|
|
74
|
+
pure_getters: true,
|
|
75
|
+
passes: 10,
|
|
76
|
+
},
|
|
77
|
+
ecma: 5,
|
|
78
|
+
toplevel: format === 'cjs',
|
|
79
|
+
warnings: true,
|
|
80
|
+
}),
|
|
81
|
+
],
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
function createConfig(format) {
|
|
86
|
+
return [
|
|
87
|
+
createConfigInternal({ format, production: false }),
|
|
88
|
+
createConfigInternal({ format, production: true }),
|
|
89
|
+
];
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
export default [...createConfig('umd')];
|