@teambit/schema 1.0.257 → 1.0.259
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/artifacts/__bit_junit.xml +2 -2
- package/artifacts/preview/teambit_semantics_schema-preview.js +1 -1
- package/artifacts/schema.json +1726 -1627
- package/dist/mock/button-schemas.json +115 -106
- package/dist/{preview-1714360874807.js → preview-1714533890836.js} +3 -3
- package/dist/schema.graphql.js +24 -7
- package/dist/schema.graphql.js.map +1 -1
- package/dist/schema.spec.js +6 -6
- package/dist/schema.spec.js.map +1 -1
- package/mock/button-schemas.json +115 -106
- package/package.json +15 -15
|
@@ -714,152 +714,161 @@
|
|
|
714
714
|
"defaultValue": "['hi', 'there']"
|
|
715
715
|
},
|
|
716
716
|
{
|
|
717
|
-
"__schema": "
|
|
717
|
+
"__schema": "ExportSchema",
|
|
718
718
|
"location": {
|
|
719
719
|
"filePath": "index.ts",
|
|
720
|
-
"line":
|
|
721
|
-
"character":
|
|
720
|
+
"line": 50,
|
|
721
|
+
"character": 10
|
|
722
722
|
},
|
|
723
|
-
"signature": "class ClassSomething",
|
|
724
723
|
"name": "ClassSomething",
|
|
725
|
-
"
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
"
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
"__schema": "
|
|
724
|
+
"exportNode": {
|
|
725
|
+
"__schema": "ClassSchema",
|
|
726
|
+
"location": {
|
|
727
|
+
"filePath": "index.ts",
|
|
728
|
+
"line": 36,
|
|
729
|
+
"character": 1
|
|
730
|
+
},
|
|
731
|
+
"signature": "class ClassSomething",
|
|
732
|
+
"name": "ClassSomething",
|
|
733
|
+
"members": [
|
|
734
|
+
{
|
|
735
|
+
"__schema": "VariableLikeSchema",
|
|
737
736
|
"location": {
|
|
738
737
|
"filePath": "index.ts",
|
|
739
738
|
"line": 37,
|
|
740
739
|
"character": 3
|
|
741
740
|
},
|
|
742
|
-
"
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
},
|
|
747
|
-
{
|
|
748
|
-
"__schema": "ConstructorSchema",
|
|
749
|
-
"location": {
|
|
750
|
-
"filePath": "index.ts",
|
|
751
|
-
"line": 38,
|
|
752
|
-
"character": 3
|
|
753
|
-
},
|
|
754
|
-
"signature": "constructor ClassSomething(da: 'dsa'): ClassSomething",
|
|
755
|
-
"name": "constructor",
|
|
756
|
-
"params": [
|
|
757
|
-
{
|
|
758
|
-
"__schema": "ParameterSchema",
|
|
741
|
+
"signature": "(property) ClassSomething.app: string",
|
|
742
|
+
"name": "app",
|
|
743
|
+
"type": {
|
|
744
|
+
"__schema": "InferenceTypeSchema",
|
|
759
745
|
"location": {
|
|
760
746
|
"filePath": "index.ts",
|
|
761
|
-
"line":
|
|
762
|
-
"character":
|
|
747
|
+
"line": 37,
|
|
748
|
+
"character": 3
|
|
763
749
|
},
|
|
764
|
-
"
|
|
765
|
-
|
|
766
|
-
|
|
750
|
+
"type": "string"
|
|
751
|
+
},
|
|
752
|
+
"isOptional": true,
|
|
753
|
+
"defaultValue": "''"
|
|
754
|
+
},
|
|
755
|
+
{
|
|
756
|
+
"__schema": "ConstructorSchema",
|
|
757
|
+
"location": {
|
|
758
|
+
"filePath": "index.ts",
|
|
759
|
+
"line": 38,
|
|
760
|
+
"character": 3
|
|
761
|
+
},
|
|
762
|
+
"signature": "constructor ClassSomething(da: 'dsa'): ClassSomething",
|
|
763
|
+
"name": "constructor",
|
|
764
|
+
"params": [
|
|
765
|
+
{
|
|
766
|
+
"__schema": "ParameterSchema",
|
|
767
767
|
"location": {
|
|
768
768
|
"filePath": "index.ts",
|
|
769
769
|
"line": 38,
|
|
770
|
-
"character":
|
|
770
|
+
"character": 15
|
|
771
771
|
},
|
|
772
|
-
"name": "
|
|
772
|
+
"name": "da",
|
|
773
|
+
"type": {
|
|
774
|
+
"__schema": "LiteralTypeSchema",
|
|
775
|
+
"location": {
|
|
776
|
+
"filePath": "index.ts",
|
|
777
|
+
"line": 38,
|
|
778
|
+
"character": 28
|
|
779
|
+
},
|
|
780
|
+
"name": "'dsa'"
|
|
781
|
+
},
|
|
782
|
+
"isOptional": false,
|
|
783
|
+
"isSpread": false
|
|
784
|
+
}
|
|
785
|
+
],
|
|
786
|
+
"returnType": {
|
|
787
|
+
"__schema": "ThisTypeSchema",
|
|
788
|
+
"location": {
|
|
789
|
+
"filePath": "index.ts",
|
|
790
|
+
"line": 36,
|
|
791
|
+
"character": 1
|
|
773
792
|
},
|
|
774
|
-
"
|
|
775
|
-
"isSpread": false
|
|
776
|
-
}
|
|
777
|
-
],
|
|
778
|
-
"returnType": {
|
|
779
|
-
"__schema": "ThisTypeSchema",
|
|
780
|
-
"location": {
|
|
781
|
-
"filePath": "index.ts",
|
|
782
|
-
"line": 36,
|
|
783
|
-
"character": 1
|
|
793
|
+
"name": "ClassSomething"
|
|
784
794
|
},
|
|
785
|
-
"
|
|
786
|
-
},
|
|
787
|
-
"modifiers": []
|
|
788
|
-
},
|
|
789
|
-
{
|
|
790
|
-
"__schema": "FunctionLikeSchema",
|
|
791
|
-
"location": {
|
|
792
|
-
"filePath": "index.ts",
|
|
793
|
-
"line": 40,
|
|
794
|
-
"character": 3
|
|
795
|
+
"modifiers": []
|
|
795
796
|
},
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
"params": [],
|
|
799
|
-
"returnType": {
|
|
800
|
-
"__schema": "TypeRefSchema",
|
|
797
|
+
{
|
|
798
|
+
"__schema": "FunctionLikeSchema",
|
|
801
799
|
"location": {
|
|
802
800
|
"filePath": "index.ts",
|
|
803
801
|
"line": 40,
|
|
804
802
|
"character": 3
|
|
805
803
|
},
|
|
806
|
-
"
|
|
807
|
-
"
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
804
|
+
"signature": "(method) ClassSomething.a(): Foo",
|
|
805
|
+
"name": "a",
|
|
806
|
+
"params": [],
|
|
807
|
+
"returnType": {
|
|
808
|
+
"__schema": "TypeRefSchema",
|
|
809
|
+
"location": {
|
|
810
|
+
"filePath": "index.ts",
|
|
811
|
+
"line": 40,
|
|
812
|
+
"character": 3
|
|
813
|
+
},
|
|
814
|
+
"name": "Foo",
|
|
815
|
+
"internalFilePath": "index.ts"
|
|
816
|
+
},
|
|
817
|
+
"modifiers": []
|
|
817
818
|
},
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
"type": {
|
|
821
|
-
"__schema": "InferenceTypeSchema",
|
|
819
|
+
{
|
|
820
|
+
"__schema": "GetAccessorSchema",
|
|
822
821
|
"location": {
|
|
823
822
|
"filePath": "index.ts",
|
|
824
823
|
"line": 43,
|
|
825
824
|
"character": 3
|
|
826
825
|
},
|
|
827
|
-
"
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
826
|
+
"signature": "(getter) ClassSomething.getter: string",
|
|
827
|
+
"name": "getter",
|
|
828
|
+
"type": {
|
|
829
|
+
"__schema": "InferenceTypeSchema",
|
|
830
|
+
"location": {
|
|
831
|
+
"filePath": "index.ts",
|
|
832
|
+
"line": 43,
|
|
833
|
+
"character": 3
|
|
834
|
+
},
|
|
835
|
+
"type": "string"
|
|
836
|
+
}
|
|
836
837
|
},
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
"param": {
|
|
840
|
-
"__schema": "ParameterSchema",
|
|
838
|
+
{
|
|
839
|
+
"__schema": "SetAccessorSchema",
|
|
841
840
|
"location": {
|
|
842
841
|
"filePath": "index.ts",
|
|
843
842
|
"line": 47,
|
|
844
|
-
"character":
|
|
843
|
+
"character": 3
|
|
845
844
|
},
|
|
846
|
-
"
|
|
847
|
-
"
|
|
848
|
-
|
|
845
|
+
"signature": "(setter) ClassSomething.setter: boolean",
|
|
846
|
+
"name": "setter",
|
|
847
|
+
"param": {
|
|
848
|
+
"__schema": "ParameterSchema",
|
|
849
849
|
"location": {
|
|
850
850
|
"filePath": "index.ts",
|
|
851
851
|
"line": 47,
|
|
852
|
-
"character":
|
|
852
|
+
"character": 14
|
|
853
853
|
},
|
|
854
|
-
"name": "
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
854
|
+
"name": "a",
|
|
855
|
+
"type": {
|
|
856
|
+
"__schema": "KeywordTypeSchema",
|
|
857
|
+
"location": {
|
|
858
|
+
"filePath": "index.ts",
|
|
859
|
+
"line": 47,
|
|
860
|
+
"character": 17
|
|
861
|
+
},
|
|
862
|
+
"name": "boolean"
|
|
863
|
+
},
|
|
864
|
+
"isOptional": false,
|
|
865
|
+
"isSpread": false
|
|
866
|
+
}
|
|
858
867
|
}
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
868
|
+
],
|
|
869
|
+
"extendsNodes": [],
|
|
870
|
+
"implementNodes": []
|
|
871
|
+
}
|
|
863
872
|
},
|
|
864
873
|
{
|
|
865
874
|
"__schema": "TypeSchema",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.semantics_schema@1.0.
|
|
2
|
-
import * as compositions_1 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.semantics_schema@1.0.
|
|
3
|
-
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.semantics_schema@1.0.
|
|
1
|
+
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.semantics_schema@1.0.259/dist/schema.composition.js';
|
|
2
|
+
import * as compositions_1 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.semantics_schema@1.0.259/dist/mock/button/button.composition.js';
|
|
3
|
+
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.semantics_schema@1.0.259/dist/schema.docs.mdx';
|
|
4
4
|
|
|
5
5
|
export const compositions = [compositions_0, compositions_1];
|
|
6
6
|
export const overview = [overview_0];
|
package/dist/schema.graphql.js
CHANGED
|
@@ -47,9 +47,7 @@ function schemaSchema(schema) {
|
|
|
47
47
|
}) => {
|
|
48
48
|
const componentId = await host.resolveComponentId(id);
|
|
49
49
|
const component = await host.get(componentId);
|
|
50
|
-
const empty =
|
|
51
|
-
exports: []
|
|
52
|
-
};
|
|
50
|
+
const empty = _semanticsEntities().APISchema.empty(componentId).toObject();
|
|
53
51
|
if (!component) return empty;
|
|
54
52
|
const api = await schema.getSchema(component, undefined, undefined, undefined, undefined, skipInternals);
|
|
55
53
|
if (!api) return empty;
|
|
@@ -61,9 +59,19 @@ function schemaSchema(schema) {
|
|
|
61
59
|
}
|
|
62
60
|
function filterUnimplementedAndAddDefaults(api) {
|
|
63
61
|
const apiObject = api.toObject();
|
|
64
|
-
const filteredExports = apiObject.module.exports.filter(exp =>
|
|
62
|
+
const filteredExports = apiObject.module.exports.filter(exp => {
|
|
63
|
+
if (exp.exportNode) {
|
|
64
|
+
return exp.exportNode.__schema !== _semanticsEntities().UnImplementedSchema.name;
|
|
65
|
+
}
|
|
66
|
+
return exp.__schema !== _semanticsEntities().UnImplementedSchema.name;
|
|
67
|
+
});
|
|
65
68
|
const filteredInternals = apiObject.internals.map(internalObject => {
|
|
66
|
-
const filteredInternalExports = internalObject.exports.filter(exp =>
|
|
69
|
+
const filteredInternalExports = internalObject.exports.filter(exp => {
|
|
70
|
+
if (exp.exportNode) {
|
|
71
|
+
return exp.exportNode.__schema !== _semanticsEntities().UnImplementedSchema.name;
|
|
72
|
+
}
|
|
73
|
+
return exp.__schema !== _semanticsEntities().UnImplementedSchema.name;
|
|
74
|
+
});
|
|
67
75
|
const filteredInternalNodes = internalObject.internals.filter(exp => exp.__schema !== _semanticsEntities().UnImplementedSchema.name);
|
|
68
76
|
return _objectSpread(_objectSpread({}, internalObject), {}, {
|
|
69
77
|
exports: filteredInternalExports,
|
|
@@ -71,9 +79,18 @@ function filterUnimplementedAndAddDefaults(api) {
|
|
|
71
79
|
});
|
|
72
80
|
});
|
|
73
81
|
const filteredTaggedExports = apiObject.taggedModuleExports.filter(exp => exp.__schema !== _semanticsEntities().UnImplementedSchema.name);
|
|
74
|
-
const defaultTaggedExports = filteredExports.filter(exportedModule =>
|
|
82
|
+
const defaultTaggedExports = filteredExports.filter(exportedModule => {
|
|
83
|
+
if (exportedModule.exportNode) {
|
|
84
|
+
return exportedModule.exportNode.__schema === 'ReactSchema';
|
|
85
|
+
}
|
|
86
|
+
return exportedModule.__schema === 'ReactSchema';
|
|
87
|
+
}).map(exportedModule => {
|
|
88
|
+
if (exportedModule.exportNode) {
|
|
89
|
+
return exportedModule.exportNode;
|
|
90
|
+
}
|
|
91
|
+
return exportedModule;
|
|
92
|
+
});
|
|
75
93
|
return _objectSpread(_objectSpread({}, apiObject), {}, {
|
|
76
|
-
exports: filteredExports,
|
|
77
94
|
internals: filteredInternals,
|
|
78
95
|
taggedModuleExports: filteredTaggedExports.length > 0 ? filteredTaggedExports : defaultTaggedExports
|
|
79
96
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_graphqlTypeJson","data","require","_graphqlTag","_semanticsEntities","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","key","value","_toPropertyKey","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","schemaSchema","schema","typeDefs","gql","resolvers","JSONObject","GraphQLJSONObject","ComponentHost","getSchema","host","id","skipInternals","componentId","resolveComponentId","component","get","empty","
|
|
1
|
+
{"version":3,"names":["_graphqlTypeJson","data","require","_graphqlTag","_semanticsEntities","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","key","value","_toPropertyKey","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","schemaSchema","schema","typeDefs","gql","resolvers","JSONObject","GraphQLJSONObject","ComponentHost","getSchema","host","id","skipInternals","componentId","resolveComponentId","component","get","empty","APISchema","toObject","api","undefined","filterUnimplementedAndAddDefaults","apiObject","filteredExports","module","exports","exp","exportNode","__schema","UnImplementedSchema","name","filteredInternals","internals","map","internalObject","filteredInternalExports","filteredInternalNodes","filteredTaggedExports","taggedModuleExports","defaultTaggedExports","exportedModule"],"sources":["schema.graphql.ts"],"sourcesContent":["import { ComponentFactory } from '@teambit/component';\nimport { GraphQLJSONObject } from 'graphql-type-json';\nimport { gql } from 'graphql-tag';\nimport { APISchema, UnImplementedSchema } from '@teambit/semantics.entities.semantic-schema';\nimport { Schema } from '@teambit/graphql';\nimport { SchemaMain } from './schema.main.runtime';\n\nexport function schemaSchema(schema: SchemaMain): Schema {\n return {\n typeDefs: gql`\n scalar JSONObject\n extend type ComponentHost {\n getSchema(id: String!, skipInternals: Boolean): JSONObject\n }\n `,\n resolvers: {\n JSONObject: GraphQLJSONObject,\n ComponentHost: {\n getSchema: async (host: ComponentFactory, { id, skipInternals }: { id: string; skipInternals?: boolean }) => {\n const componentId = await host.resolveComponentId(id);\n const component = await host.get(componentId);\n const empty = APISchema.empty(componentId).toObject();\n\n if (!component) return empty;\n const api = await schema.getSchema(component, undefined, undefined, undefined, undefined, skipInternals);\n if (!api) return empty;\n\n return filterUnimplementedAndAddDefaults(api);\n },\n },\n },\n };\n}\n\nfunction filterUnimplementedAndAddDefaults(api: APISchema) {\n const apiObject = api.toObject();\n\n const filteredExports = apiObject.module.exports.filter((exp) => {\n if (exp.exportNode) {\n return exp.exportNode.__schema !== UnImplementedSchema.name;\n }\n return (exp as Record<string, any>).__schema !== UnImplementedSchema.name;\n });\n\n const filteredInternals = apiObject.internals.map((internalObject) => {\n const filteredInternalExports = internalObject.exports.filter((exp) => {\n if (exp.exportNode) {\n return exp.exportNode.__schema !== UnImplementedSchema.name;\n }\n return (exp as Record<string, any>).__schema !== UnImplementedSchema.name;\n });\n const filteredInternalNodes = internalObject.internals.filter((exp) => exp.__schema !== UnImplementedSchema.name);\n return {\n ...internalObject,\n exports: filteredInternalExports,\n internals: filteredInternalNodes,\n };\n });\n\n const filteredTaggedExports = apiObject.taggedModuleExports.filter(\n (exp) => exp.__schema !== UnImplementedSchema.name\n );\n\n const defaultTaggedExports = filteredExports\n .filter((exportedModule) => {\n if (exportedModule.exportNode) {\n return exportedModule.exportNode.__schema === 'ReactSchema';\n }\n return (exportedModule as Record<string, any>).__schema === 'ReactSchema';\n })\n .map((exportedModule) => {\n if (exportedModule.exportNode) {\n return exportedModule.exportNode;\n }\n return exportedModule;\n });\n\n return {\n ...apiObject,\n internals: filteredInternals,\n taggedModuleExports: filteredTaggedExports.length > 0 ? filteredTaggedExports : defaultTaggedExports,\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
package/dist/schema.spec.js
CHANGED
|
@@ -70,9 +70,9 @@ function _workspace() {
|
|
|
70
70
|
};
|
|
71
71
|
return data;
|
|
72
72
|
}
|
|
73
|
-
function
|
|
74
|
-
const data = require(".");
|
|
75
|
-
|
|
73
|
+
function _schema() {
|
|
74
|
+
const data = require("./schema.aspect");
|
|
75
|
+
_schema = function () {
|
|
76
76
|
return data;
|
|
77
77
|
};
|
|
78
78
|
return data;
|
|
@@ -93,7 +93,7 @@ describe('SchemaAspect', function () {
|
|
|
93
93
|
} = workspaceData;
|
|
94
94
|
// eslint-disable-next-line no-console
|
|
95
95
|
console.log('workspace created at ', workspacePath);
|
|
96
|
-
schema = await (0, _harmonyTesting().loadAspect)(
|
|
96
|
+
schema = await (0, _harmonyTesting().loadAspect)(_schema().SchemaAspect, workspacePath);
|
|
97
97
|
});
|
|
98
98
|
after(async () => {
|
|
99
99
|
await (0, _workspaceTesting().destroyWorkspace)(workspaceData);
|
|
@@ -107,7 +107,7 @@ describe('SchemaAspect', function () {
|
|
|
107
107
|
const compDir = _path().default.join(workspacePath, 'button');
|
|
108
108
|
const src = _path().default.join(getMockDir(), 'button');
|
|
109
109
|
await _fsExtra().default.copy(src, compDir);
|
|
110
|
-
const harmony = await (0, _harmonyTesting().loadManyAspects)([_workspace().WorkspaceAspect,
|
|
110
|
+
const harmony = await (0, _harmonyTesting().loadManyAspects)([_workspace().WorkspaceAspect, _schema().SchemaAspect, _tracker().TrackerAspect], workspacePath);
|
|
111
111
|
workspace = harmony.get(_workspace().WorkspaceAspect.id);
|
|
112
112
|
const tracker = harmony.get(_tracker().TrackerAspect.id);
|
|
113
113
|
await tracker.track({
|
|
@@ -115,7 +115,7 @@ describe('SchemaAspect', function () {
|
|
|
115
115
|
defaultScope: 'org.scope'
|
|
116
116
|
});
|
|
117
117
|
await workspace.bitMap.write();
|
|
118
|
-
schema = harmony.get(
|
|
118
|
+
schema = harmony.get(_schema().SchemaAspect.id);
|
|
119
119
|
const compId = await workspace.resolveComponentId('button');
|
|
120
120
|
const comp = await workspace.get(compId);
|
|
121
121
|
apiSchema = await schema.getSchema(comp, true);
|
package/dist/schema.spec.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_path","data","_interopRequireDefault","require","_fsExtra","_chai","_interopRequireWildcard","_semanticsEntities","_chaiSubset","_tracker","_harmonyTesting","_workspaceTesting","_componentId","_workspace","_","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","obj","chai","use","chaiSubset","describe","timeout","schema","workspace","workspaceData","before","mockWorkspace","workspacePath","console","log","loadAspect","SchemaAspect","after","destroyWorkspace","apiSchema","compDir","path","join","src","getMockDir","fs","copy","harmony","loadManyAspects","WorkspaceAspect","TrackerAspect","id","tracker","track","rootDir","defaultScope","bitMap","write","compId","resolveComponentId","comp","getSchema","it","results","toObject","expectedJsonPath","expectedJson","readJsonSync","expect","to","containSubset","jsonPath","json","getSchemaFromObject","APISchema","be","true","componentId","constructor","name","equal","ComponentID","module","exports","UnknownSchema","location","deep","file","line","character","getCurrentDir","currentDir","__dirname","endsWith","sep","slice"],"sources":["schema.spec.ts"],"sourcesContent":["import path from 'path';\nimport fs from 'fs-extra';\nimport chai, { expect } from 'chai';\nimport { APISchema, UnknownSchema } from '@teambit/semantics.entities.semantic-schema';\nimport chaiSubset from 'chai-subset';\nimport { TrackerAspect, TrackerMain } from '@teambit/tracker';\nimport { loadAspect, loadManyAspects } from '@teambit/harmony.testing.load-aspect';\nimport { mockWorkspace, destroyWorkspace, WorkspaceData } from '@teambit/workspace.testing.mock-workspace';\nimport { ComponentID } from '@teambit/component-id';\nimport { WorkspaceAspect, Workspace } from '@teambit/workspace';\nimport { SchemaMain } from './schema.main.runtime';\nimport { SchemaAspect } from '.';\n\nchai.use(chaiSubset);\n\ndescribe('SchemaAspect', function () {\n this.timeout(0);\n let schema: SchemaMain;\n let workspace: Workspace;\n let workspaceData: WorkspaceData;\n before(async () => {\n workspaceData = mockWorkspace();\n const { workspacePath } = workspaceData;\n // eslint-disable-next-line no-console\n console.log('workspace created at ', workspacePath);\n schema = await loadAspect(SchemaAspect, workspacePath);\n });\n after(async () => {\n await destroyWorkspace(workspaceData);\n });\n describe('getSchema()', () => {\n let apiSchema: APISchema;\n before(async () => {\n const { workspacePath } = workspaceData;\n const compDir = path.join(workspacePath, 'button');\n const src = path.join(getMockDir(), 'button');\n await fs.copy(src, compDir);\n const harmony = await loadManyAspects([WorkspaceAspect, SchemaAspect, TrackerAspect], workspacePath);\n workspace = harmony.get<Workspace>(WorkspaceAspect.id);\n const tracker = harmony.get<TrackerMain>(TrackerAspect.id);\n await tracker.track({ rootDir: compDir, defaultScope: 'org.scope' });\n await workspace.bitMap.write();\n schema = harmony.get<SchemaMain>(SchemaAspect.id);\n const compId = await workspace.resolveComponentId('button');\n const comp = await workspace.get(compId);\n apiSchema = await schema.getSchema(comp, true);\n });\n it('should be able to generate JSON object with all schemas', async () => {\n const results = apiSchema.toObject();\n const expectedJsonPath = path.join(getMockDir(), 'button-schemas.json');\n // uncomment the next line temporarily to sync the expected json with new schema changes\n // fs.outputFileSync(expectedJsonPath, JSON.stringify(results, undefined, 2));\n const expectedJson = fs.readJsonSync(expectedJsonPath);\n // @ts-ignore it exists on Jest. for some reason ts assumes this is Jasmine.\n expect(results).to.to.containSubset(expectedJson);\n });\n });\n describe('getSchemaFromObject', () => {\n it('should be able to deserialize an JSON object to SchemaNode instances', () => {\n const jsonPath = path.join(getMockDir(), 'button-schemas.json');\n const json = fs.readJsonSync(jsonPath);\n const apiSchema = schema.getSchemaFromObject(json);\n expect(apiSchema instanceof APISchema).to.be.true;\n expect(apiSchema.componentId.constructor.name).to.equal(ComponentID.name);\n // @ts-ignore it exists on Jest. for some reason ts assumes this is Jasmine.\n expect(apiSchema.toObject()).to.containSubset(json);\n });\n it('should not throw when it does not recognize the schema', () => {\n const jsonPath = path.join(getMockDir(), 'button-old-schema.json');\n const json = fs.readJsonSync(jsonPath);\n const apiSchema = schema.getSchemaFromObject(json);\n expect(apiSchema instanceof APISchema).to.be.true;\n expect(apiSchema.module.exports[0] instanceof UnknownSchema).to.be.true;\n // @ts-ignore\n expect(apiSchema.module.exports[0].location).to.deep.equal({ file: 'index.ts', line: 21, character: 14 });\n });\n });\n});\n\nfunction getCurrentDir() {\n const currentDir = __dirname;\n if (currentDir.endsWith(`${path.sep}dist`)) return currentDir.slice(0, -5);\n return currentDir;\n}\n\nfunction getMockDir() {\n return path.join(getCurrentDir(), 'mock');\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_path","data","_interopRequireDefault","require","_fsExtra","_chai","_interopRequireWildcard","_semanticsEntities","_chaiSubset","_tracker","_harmonyTesting","_workspaceTesting","_componentId","_workspace","_schema","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","obj","chai","use","chaiSubset","describe","timeout","schema","workspace","workspaceData","before","mockWorkspace","workspacePath","console","log","loadAspect","SchemaAspect","after","destroyWorkspace","apiSchema","compDir","path","join","src","getMockDir","fs","copy","harmony","loadManyAspects","WorkspaceAspect","TrackerAspect","id","tracker","track","rootDir","defaultScope","bitMap","write","compId","resolveComponentId","comp","getSchema","it","results","toObject","expectedJsonPath","expectedJson","readJsonSync","expect","to","containSubset","jsonPath","json","getSchemaFromObject","APISchema","be","true","componentId","constructor","name","equal","ComponentID","module","exports","UnknownSchema","location","deep","file","line","character","getCurrentDir","currentDir","__dirname","endsWith","sep","slice"],"sources":["schema.spec.ts"],"sourcesContent":["import path from 'path';\nimport fs from 'fs-extra';\nimport chai, { expect } from 'chai';\nimport { APISchema, UnknownSchema } from '@teambit/semantics.entities.semantic-schema';\nimport chaiSubset from 'chai-subset';\nimport { TrackerAspect, TrackerMain } from '@teambit/tracker';\nimport { loadAspect, loadManyAspects } from '@teambit/harmony.testing.load-aspect';\nimport { mockWorkspace, destroyWorkspace, WorkspaceData } from '@teambit/workspace.testing.mock-workspace';\nimport { ComponentID } from '@teambit/component-id';\nimport { WorkspaceAspect, Workspace } from '@teambit/workspace';\nimport { SchemaMain } from './schema.main.runtime';\nimport { SchemaAspect } from './schema.aspect';\n\nchai.use(chaiSubset);\n\ndescribe('SchemaAspect', function () {\n this.timeout(0);\n let schema: SchemaMain;\n let workspace: Workspace;\n let workspaceData: WorkspaceData;\n before(async () => {\n workspaceData = mockWorkspace();\n const { workspacePath } = workspaceData;\n // eslint-disable-next-line no-console\n console.log('workspace created at ', workspacePath);\n schema = await loadAspect(SchemaAspect, workspacePath);\n });\n after(async () => {\n await destroyWorkspace(workspaceData);\n });\n describe('getSchema()', () => {\n let apiSchema: APISchema;\n before(async () => {\n const { workspacePath } = workspaceData;\n const compDir = path.join(workspacePath, 'button');\n const src = path.join(getMockDir(), 'button');\n await fs.copy(src, compDir);\n const harmony = await loadManyAspects([WorkspaceAspect, SchemaAspect, TrackerAspect], workspacePath);\n workspace = harmony.get<Workspace>(WorkspaceAspect.id);\n const tracker = harmony.get<TrackerMain>(TrackerAspect.id);\n await tracker.track({ rootDir: compDir, defaultScope: 'org.scope' });\n await workspace.bitMap.write();\n schema = harmony.get<SchemaMain>(SchemaAspect.id);\n const compId = await workspace.resolveComponentId('button');\n const comp = await workspace.get(compId);\n apiSchema = await schema.getSchema(comp, true);\n });\n it('should be able to generate JSON object with all schemas', async () => {\n const results = apiSchema.toObject();\n const expectedJsonPath = path.join(getMockDir(), 'button-schemas.json');\n // uncomment the next line temporarily to sync the expected json with new schema changes\n // fs.outputFileSync(expectedJsonPath, JSON.stringify(results, undefined, 2));\n const expectedJson = fs.readJsonSync(expectedJsonPath);\n // @ts-ignore it exists on Jest. for some reason ts assumes this is Jasmine.\n expect(results).to.to.containSubset(expectedJson);\n });\n });\n describe('getSchemaFromObject', () => {\n it('should be able to deserialize an JSON object to SchemaNode instances', () => {\n const jsonPath = path.join(getMockDir(), 'button-schemas.json');\n const json = fs.readJsonSync(jsonPath);\n const apiSchema = schema.getSchemaFromObject(json);\n expect(apiSchema instanceof APISchema).to.be.true;\n expect(apiSchema.componentId.constructor.name).to.equal(ComponentID.name);\n // @ts-ignore it exists on Jest. for some reason ts assumes this is Jasmine.\n expect(apiSchema.toObject()).to.containSubset(json);\n });\n it('should not throw when it does not recognize the schema', () => {\n const jsonPath = path.join(getMockDir(), 'button-old-schema.json');\n const json = fs.readJsonSync(jsonPath);\n const apiSchema = schema.getSchemaFromObject(json);\n expect(apiSchema instanceof APISchema).to.be.true;\n expect(apiSchema.module.exports[0] instanceof UnknownSchema).to.be.true;\n // @ts-ignore\n expect(apiSchema.module.exports[0].location).to.deep.equal({ file: 'index.ts', line: 21, character: 14 });\n });\n });\n});\n\nfunction getCurrentDir() {\n const currentDir = __dirname;\n if (currentDir.endsWith(`${path.sep}dist`)) return currentDir.slice(0, -5);\n return currentDir;\n}\n\nfunction getMockDir() {\n return path.join(getCurrentDir(), 'mock');\n}\n"],"mappings":"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","ignoreList":[]}
|