@graphprotocol/graph-cli 0.45.0-alpha-20230330173205-1718f7a → 0.45.0-alpha-20230330182034-4e64dfa
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 +1 -1
- package/dist/scaffold/mapping.js +13 -6
- package/dist/scaffold/schema.js +3 -9
- package/oclif.manifest.json +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
package/dist/scaffold/mapping.js
CHANGED
|
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.generateEventIndexingHandlers = exports.generateEventFieldAssignments = exports.generateFieldAssignments = exports.generateFieldAssignment = void 0;
|
|
26
|
+
exports.generateEventIndexingHandlers = exports.generateEventFieldAssignments = exports.renameInput = exports.INPUT_NAMES_BLACKLIST = exports.generateFieldAssignments = exports.generateFieldAssignment = void 0;
|
|
27
27
|
const util = __importStar(require("../codegen/util"));
|
|
28
28
|
const generateFieldAssignment = (key, value) => `entity.${key.join('_')} = event.params.${value.join('.')}`;
|
|
29
29
|
exports.generateFieldAssignment = generateFieldAssignment;
|
|
@@ -33,16 +33,23 @@ const generateFieldAssignments = ({ index, input }) => input.type === 'tuple'
|
|
|
33
33
|
.map(({ path }) => (0, exports.generateFieldAssignment)(path, path))
|
|
34
34
|
: (0, exports.generateFieldAssignment)([(input.mappedName ?? input.name) || `param${index}`], [input.name || `param${index}`]);
|
|
35
35
|
exports.generateFieldAssignments = generateFieldAssignments;
|
|
36
|
+
/**
|
|
37
|
+
* Map of input names that are reserved so we do not use them as field names to avoid conflicts
|
|
38
|
+
*/
|
|
39
|
+
exports.INPUT_NAMES_BLACKLIST = {
|
|
40
|
+
/** Related to https://github.com/graphprotocol/graph-tooling/issues/710 */
|
|
41
|
+
id: 'id',
|
|
42
|
+
};
|
|
36
43
|
const renameInput = (name, subgraphName) => {
|
|
37
44
|
const inputMap = {
|
|
38
|
-
id: `${subgraphName}_id`,
|
|
45
|
+
[exports.INPUT_NAMES_BLACKLIST.id]: `${subgraphName}_id`,
|
|
39
46
|
};
|
|
40
|
-
return inputMap[name] ?? name;
|
|
47
|
+
return inputMap?.[name] ?? name;
|
|
41
48
|
};
|
|
49
|
+
exports.renameInput = renameInput;
|
|
42
50
|
const generateEventFieldAssignments = (event, contractName) => event.inputs.reduce((acc, input, index) => {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
input.mappedName = renameInput(input.name, contractName ?? 'contract');
|
|
51
|
+
if (Object.values(exports.INPUT_NAMES_BLACKLIST).includes(input.name)) {
|
|
52
|
+
input.mappedName = (0, exports.renameInput)(input.name, contractName ?? 'contract');
|
|
46
53
|
}
|
|
47
54
|
return acc.concat((0, exports.generateFieldAssignments)({ input, index }));
|
|
48
55
|
}, []);
|
package/dist/scaffold/schema.js
CHANGED
|
@@ -26,6 +26,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
26
26
|
exports.generateExampleEntityType = exports.generateEventType = exports.generateEventFields = exports.generateField = exports.protocolTypeToGraphQL = exports.abiEvents = void 0;
|
|
27
27
|
const types_1 = require("../codegen/types");
|
|
28
28
|
const util = __importStar(require("../codegen/util"));
|
|
29
|
+
const mapping_1 = require("./mapping");
|
|
29
30
|
function abiEvents(abi) {
|
|
30
31
|
return util.disambiguateNames({
|
|
31
32
|
// @ts-expect-error improve typings of disambiguateNames to handle iterables
|
|
@@ -62,20 +63,13 @@ const generateEventFields = ({ index, input, protocolName, }) => input.type == '
|
|
|
62
63
|
}),
|
|
63
64
|
];
|
|
64
65
|
exports.generateEventFields = generateEventFields;
|
|
65
|
-
const renameInput = (name, subgraphName) => {
|
|
66
|
-
const inputMap = {
|
|
67
|
-
id: `${subgraphName}_id`,
|
|
68
|
-
};
|
|
69
|
-
return inputMap[name] ?? name;
|
|
70
|
-
};
|
|
71
66
|
const generateEventType = (event, protocolName, subgraphName) => {
|
|
72
|
-
const inputNamesBlacklist = ['id'];
|
|
73
67
|
return `type ${event._alias} @entity(immutable: true) {
|
|
74
68
|
id: Bytes!
|
|
75
69
|
${event.inputs
|
|
76
70
|
.reduce((acc, input, index) => {
|
|
77
|
-
if (
|
|
78
|
-
input.name = renameInput(input.name, subgraphName ?? 'contract');
|
|
71
|
+
if (Object.values(mapping_1.INPUT_NAMES_BLACKLIST).includes(input.name)) {
|
|
72
|
+
input.name = (0, mapping_1.renameInput)(input.name, subgraphName ?? 'contract');
|
|
79
73
|
}
|
|
80
74
|
return acc.concat((0, exports.generateEventFields)({ input, index, protocolName }));
|
|
81
75
|
}, [])
|
package/oclif.manifest.json
CHANGED
package/package.json
CHANGED