@teambit/vue-aspect 0.0.1

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/dist/esm.mjs ADDED
@@ -0,0 +1,7 @@
1
+ // eslint-disable-next-line import/no-unresolved
2
+ import cjsModule from './index.js';
3
+
4
+ export const VueAspect = cjsModule.VueAspect;
5
+
6
+ export default cjsModule;
7
+
@@ -0,0 +1,4 @@
1
+ import { VueAspect } from './vue.aspect';
2
+ export type { VueMain } from './vue.main.runtime';
3
+ export default VueAspect;
4
+ export { VueAspect };
package/dist/index.js ADDED
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "VueAspect", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _vue().VueAspect;
10
+ }
11
+ });
12
+ exports.default = void 0;
13
+ function _vue() {
14
+ const data = require("./vue.aspect");
15
+ _vue = function () {
16
+ return data;
17
+ };
18
+ return data;
19
+ }
20
+ var _default = exports.default = _vue().VueAspect;
21
+
22
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_vue","data","require","_default","exports","default","VueAspect"],"sources":["index.ts"],"sourcesContent":["import { VueAspect } from './vue.aspect';\n\nexport type { VueMain } from './vue.main.runtime';\nexport default VueAspect;\nexport { VueAspect };\n"],"mappings":";;;;;;;;;;;;AAAA,SAAAA,KAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,IAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAyC,IAAAE,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAG1BC,gBAAS","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ ;
2
+ ;
3
+
4
+ export const compositions = [];
5
+ export const overview = [];
6
+
7
+ export const compositions_metadata = {"compositions":[]};
@@ -0,0 +1,3 @@
1
+ import { Aspect } from '@teambit/harmony';
2
+ export declare const VueAspect: Aspect;
3
+ export default VueAspect;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = exports.VueAspect = void 0;
7
+ function _harmony() {
8
+ const data = require("@teambit/harmony");
9
+ _harmony = function () {
10
+ return data;
11
+ };
12
+ return data;
13
+ }
14
+ const VueAspect = exports.VueAspect = _harmony().Aspect.create({
15
+ id: 'teambit.vue/vue-aspect'
16
+ });
17
+ var _default = exports.default = VueAspect;
18
+
19
+ //# sourceMappingURL=vue.aspect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_harmony","data","require","VueAspect","exports","Aspect","create","id","_default","default"],"sources":["vue.aspect.ts"],"sourcesContent":["import { Aspect } from '@teambit/harmony';\n\nexport const VueAspect = Aspect.create({\n id: 'teambit.vue/vue-aspect',\n});\n\nexport default VueAspect;\n"],"mappings":";;;;;;AAAA,SAAAA,SAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,QAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAME,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAGE,iBAAM,CAACC,MAAM,CAAC;EACrCC,EAAE,EAAE;AACN,CAAC,CAAC;AAAC,IAAAC,QAAA,GAAAJ,OAAA,CAAAK,OAAA,GAEYN,SAAS","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ export declare class VueMain {
2
+ static slots: never[];
3
+ static dependencies: import("@teambit/harmony").Aspect[];
4
+ static runtime: import("@teambit/harmony").RuntimeDefinition;
5
+ static provider([schemaMain]: [any]): Promise<VueMain>;
6
+ }
7
+ export default VueMain;
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = exports.VueMain = void 0;
7
+ function _cli() {
8
+ const data = require("@teambit/cli");
9
+ _cli = function () {
10
+ return data;
11
+ };
12
+ return data;
13
+ }
14
+ function _schema() {
15
+ const data = require("@teambit/schema");
16
+ _schema = function () {
17
+ return data;
18
+ };
19
+ return data;
20
+ }
21
+ function _vue() {
22
+ const data = require("./vue.aspect");
23
+ _vue = function () {
24
+ return data;
25
+ };
26
+ return data;
27
+ }
28
+ function _vue2() {
29
+ const data = require("./vue.schema");
30
+ _vue2 = function () {
31
+ return data;
32
+ };
33
+ return data;
34
+ }
35
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
36
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
37
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
38
+ class VueMain {
39
+ static async provider([schemaMain]) {
40
+ if (schemaMain) schemaMain.registerSchemaClasses(() => [_vue2().VueSchema]);
41
+ return new VueMain();
42
+ }
43
+ }
44
+ exports.VueMain = VueMain;
45
+ _defineProperty(VueMain, "slots", []);
46
+ // define your aspect dependencies here.
47
+ // in case you need to use another aspect API.
48
+ _defineProperty(VueMain, "dependencies", [_schema().SchemaAspect]);
49
+ _defineProperty(VueMain, "runtime", _cli().MainRuntime);
50
+ _vue().VueAspect.addRuntime(VueMain);
51
+ var _default = exports.default = VueMain;
52
+
53
+ //# sourceMappingURL=vue.main.runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_cli","data","require","_schema","_vue","_vue2","_defineProperty","e","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","VueMain","provider","schemaMain","registerSchemaClasses","VueSchema","exports","SchemaAspect","MainRuntime","VueAspect","addRuntime","_default","default"],"sources":["vue.main.runtime.ts"],"sourcesContent":["import { MainRuntime } from '@teambit/cli';\nimport { SchemaAspect } from '@teambit/schema';\nimport { VueAspect } from './vue.aspect';\nimport { VueSchema } from './vue.schema';\n\nexport class VueMain {\n static slots = [];\n // define your aspect dependencies here.\n // in case you need to use another aspect API.\n static dependencies = [SchemaAspect];\n\n static runtime = MainRuntime;\n\n static async provider([schemaMain]) {\n if (schemaMain) schemaMain.registerSchemaClasses(() => [VueSchema]);\n return new VueMain();\n }\n}\n\nVueAspect.addRuntime(VueMain);\n\nexport default VueMain;\n"],"mappings":";;;;;;AAAA,SAAAA,KAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,IAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,QAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,OAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,KAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,IAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,MAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,KAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAyC,SAAAK,gBAAAC,CAAA,EAAAC,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAD,CAAA,GAAAI,MAAA,CAAAC,cAAA,CAAAL,CAAA,EAAAC,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAT,CAAA,CAAAC,CAAA,IAAAC,CAAA,EAAAF,CAAA;AAAA,SAAAG,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAF,CAAA,GAAAE,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAb,CAAA,QAAAU,CAAA,GAAAV,CAAA,CAAAc,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;AAElC,MAAMgB,OAAO,CAAC;EAQnB,aAAaC,QAAQA,CAAC,CAACC,UAAU,CAAC,EAAE;IAClC,IAAIA,UAAU,EAAEA,UAAU,CAACC,qBAAqB,CAAC,MAAM,CAACC,iBAAS,CAAC,CAAC;IACnE,OAAO,IAAIJ,OAAO,CAAC,CAAC;EACtB;AACF;AAACK,OAAA,CAAAL,OAAA,GAAAA,OAAA;AAAAnB,eAAA,CAZYmB,OAAO,WACH,EAAE;AACjB;AACA;AAAAnB,eAAA,CAHWmB,OAAO,kBAII,CAACM,sBAAY,CAAC;AAAAzB,eAAA,CAJzBmB,OAAO,aAMDO,kBAAW;AAQ9BC,gBAAS,CAACC,UAAU,CAACT,OAAO,CAAC;AAAC,IAAAU,QAAA,GAAAL,OAAA,CAAAM,OAAA,GAEfX,OAAO","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import type { APINodeRenderer } from '@teambit/api-reference.models.api-node-renderer';
2
+ export declare const vueRenderer: APINodeRenderer;
@@ -0,0 +1,180 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.vueRenderer = void 0;
7
+ function _react() {
8
+ const data = _interopRequireDefault(require("react"));
9
+ _react = function () {
10
+ return data;
11
+ };
12
+ return data;
13
+ }
14
+ function _documenterUi() {
15
+ const data = require("@teambit/documenter.ui.table");
16
+ _documenterUi = function () {
17
+ return data;
18
+ };
19
+ return data;
20
+ }
21
+ function _vueRendererModule() {
22
+ const data = _interopRequireDefault(require("./vue.renderer.module.scss"));
23
+ _vueRendererModule = function () {
24
+ return data;
25
+ };
26
+ return data;
27
+ }
28
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
29
+ function predicate(node) {
30
+ return node.__schema === 'VueSchema';
31
+ }
32
+ function useMeta(apiNode) {
33
+ return apiNode.api.meta;
34
+ }
35
+ function VueSFCTable({
36
+ rows,
37
+ hasDescription,
38
+ expanded
39
+ }) {
40
+ const headings = hasDescription ? ['name', 'type', 'default', 'description'] : ['name', 'type'];
41
+ return /*#__PURE__*/_react().default.createElement(_documenterUi().Table, {
42
+ headings: headings,
43
+ rows: rows,
44
+ isListView: expanded
45
+ });
46
+ }
47
+ function VueSFCProps({
48
+ props,
49
+ expanded = false
50
+ }) {
51
+ const rows = props.filter(({
52
+ global
53
+ }) => !global).map(({
54
+ name,
55
+ default: defaultValue,
56
+ required,
57
+ type,
58
+ description
59
+ }) => {
60
+ const row = {
61
+ name,
62
+ required,
63
+ type,
64
+ description
65
+ };
66
+ if (defaultValue) {
67
+ row.default = {
68
+ value: defaultValue
69
+ };
70
+ }
71
+ return row;
72
+ });
73
+ if (rows.length === 0) {
74
+ return /*#__PURE__*/_react().default.createElement("div", null, /*#__PURE__*/_react().default.createElement("h2", {
75
+ className: _vueRendererModule().default.title
76
+ }, "Props"), /*#__PURE__*/_react().default.createElement("p", {
77
+ className: _vueRendererModule().default.empty
78
+ }, "No props found."));
79
+ }
80
+ return /*#__PURE__*/_react().default.createElement("div", null, /*#__PURE__*/_react().default.createElement("h2", {
81
+ className: _vueRendererModule().default.title
82
+ }, "Props"), /*#__PURE__*/_react().default.createElement(VueSFCTable, {
83
+ rows: rows,
84
+ hasDescription: true,
85
+ expanded: expanded
86
+ }));
87
+ }
88
+ function VueSFCEmits({
89
+ events,
90
+ expanded = false
91
+ }) {
92
+ const rows = events.map(({
93
+ name,
94
+ type,
95
+ description
96
+ }) => ({
97
+ name,
98
+ required: false,
99
+ type,
100
+ description
101
+ }));
102
+ if (rows.length === 0) {
103
+ return null;
104
+ }
105
+ return /*#__PURE__*/_react().default.createElement("div", null, /*#__PURE__*/_react().default.createElement("h2", {
106
+ className: _vueRendererModule().default.title
107
+ }, "Emits"), /*#__PURE__*/_react().default.createElement(VueSFCTable, {
108
+ rows: rows,
109
+ expanded: expanded
110
+ }));
111
+ }
112
+ function VueSFCSlots({
113
+ slots,
114
+ expanded
115
+ }) {
116
+ const rows = slots.map(({
117
+ name,
118
+ type,
119
+ description
120
+ }) => ({
121
+ name,
122
+ required: false,
123
+ type,
124
+ description
125
+ }));
126
+ if (rows.length === 0) {
127
+ return null;
128
+ }
129
+ return /*#__PURE__*/_react().default.createElement("div", null, /*#__PURE__*/_react().default.createElement("h2", {
130
+ className: _vueRendererModule().default.title
131
+ }, "Slots"), /*#__PURE__*/_react().default.createElement(VueSFCTable, {
132
+ rows: rows,
133
+ expanded: expanded
134
+ }));
135
+ }
136
+ function VueComponent({
137
+ apiNode
138
+ }) {
139
+ const meta = useMeta(apiNode);
140
+ return /*#__PURE__*/_react().default.createElement("div", {
141
+ className: _vueRendererModule().default.container
142
+ }, /*#__PURE__*/_react().default.createElement("div", {
143
+ className: _vueRendererModule().default.inner
144
+ }, /*#__PURE__*/_react().default.createElement(VueSFCProps, {
145
+ props: meta.props
146
+ }), /*#__PURE__*/_react().default.createElement(VueSFCEmits, {
147
+ events: meta.events
148
+ }), /*#__PURE__*/_react().default.createElement(VueSFCSlots, {
149
+ slots: meta.slots
150
+ })));
151
+ }
152
+ function VueOverviewComponent({
153
+ apiNode
154
+ }) {
155
+ const meta = useMeta(apiNode);
156
+ return /*#__PURE__*/_react().default.createElement("div", {
157
+ className: _vueRendererModule().default.container
158
+ }, /*#__PURE__*/_react().default.createElement("div", {
159
+ className: _vueRendererModule().default.inner
160
+ }, /*#__PURE__*/_react().default.createElement(VueSFCProps, {
161
+ props: meta.props
162
+ }), /*#__PURE__*/_react().default.createElement(VueSFCEmits, {
163
+ events: meta.events
164
+ }), /*#__PURE__*/_react().default.createElement(VueSFCSlots, {
165
+ slots: meta.slots
166
+ })));
167
+ }
168
+ const vueRenderer = exports.vueRenderer = {
169
+ predicate,
170
+ Component: VueComponent,
171
+ OverviewComponent: VueOverviewComponent,
172
+ nodeType: 'Vue SFCs',
173
+ icon: {
174
+ name: 'Vue',
175
+ url: 'https://static.bit.dev/extensions-icons/vue.svg'
176
+ },
177
+ default: true
178
+ };
179
+
180
+ //# sourceMappingURL=vue.renderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","data","_interopRequireDefault","require","_documenterUi","_vueRendererModule","e","__esModule","default","predicate","node","__schema","useMeta","apiNode","api","meta","VueSFCTable","rows","hasDescription","expanded","headings","createElement","Table","isListView","VueSFCProps","props","filter","global","map","name","defaultValue","required","type","description","row","value","length","className","styles","title","empty","VueSFCEmits","events","VueSFCSlots","slots","VueComponent","container","inner","VueOverviewComponent","vueRenderer","exports","Component","OverviewComponent","nodeType","icon","url"],"sources":["vue.renderer.tsx"],"sourcesContent":["import React from 'react';\nimport type { APINodeRenderProps, APINodeRenderer } from '@teambit/api-reference.models.api-node-renderer';\nimport type { APINode } from '@teambit/api-reference.models.api-reference-model';\nimport type { RowType } from '@teambit/documenter.ui.table-row';\nimport { Table } from '@teambit/documenter.ui.table';\nimport type { ComponentMeta } from 'vue-component-meta';\n\nimport styles from './vue.renderer.module.scss';\n\nfunction predicate(node: any): boolean {\n return node.__schema === 'VueSchema';\n}\n\nfunction useMeta(apiNode: APINode): ComponentMeta {\n return (apiNode.api as any).meta as ComponentMeta;\n}\n\nfunction VueSFCTable({\n rows,\n hasDescription,\n expanded,\n}: {\n rows: RowType[];\n hasDescription?: boolean;\n expanded?: boolean;\n}) {\n const headings = hasDescription ? ['name', 'type', 'default', 'description'] : ['name', 'type'];\n return <Table headings={headings} rows={rows} isListView={expanded} />;\n}\n\nfunction VueSFCProps({ props, expanded = false }: { props: ComponentMeta['props']; expanded?: boolean }) {\n const rows: RowType[] = props\n .filter(({ global }) => !global)\n .map(({ name, default: defaultValue, required, type, description }) => {\n const row: RowType = {\n name,\n required,\n type,\n description,\n };\n if (defaultValue) {\n row.default = { value: defaultValue };\n }\n return row;\n });\n if (rows.length === 0) {\n return (\n <div>\n <h2 className={styles.title}>Props</h2>\n <p className={styles.empty}>No props found.</p>\n </div>\n );\n }\n return (\n <div>\n <h2 className={styles.title}>Props</h2>\n <VueSFCTable rows={rows} hasDescription expanded={expanded} />\n </div>\n );\n}\n\nfunction VueSFCEmits({ events, expanded = false }: { events: ComponentMeta['events']; expanded?: boolean }) {\n const rows: RowType[] = events.map(({ name, type, description }) => ({\n name,\n required: false,\n type,\n description,\n }));\n if (rows.length === 0) {\n return null;\n }\n return (\n <div>\n <h2 className={styles.title}>Emits</h2>\n <VueSFCTable rows={rows} expanded={expanded} />\n </div>\n );\n}\n\nfunction VueSFCSlots({ slots, expanded }: { slots: ComponentMeta['slots']; expanded?: boolean }) {\n const rows: RowType[] = slots.map(({ name, type, description }) => ({\n name,\n required: false,\n type,\n description,\n }));\n if (rows.length === 0) {\n return null;\n }\n return (\n <div>\n <h2 className={styles.title}>Slots</h2>\n <VueSFCTable rows={rows} expanded={expanded} />\n </div>\n );\n}\n\nfunction VueComponent({ apiNode }: APINodeRenderProps) {\n const meta = useMeta(apiNode);\n return (\n <div className={styles.container}>\n <div className={styles.inner}>\n <VueSFCProps props={meta.props} />\n <VueSFCEmits events={meta.events} />\n <VueSFCSlots slots={meta.slots} />\n </div>\n </div>\n );\n}\n\nfunction VueOverviewComponent({ apiNode }: APINodeRenderProps) {\n const meta = useMeta(apiNode);\n return (\n <div className={styles.container}>\n <div className={styles.inner}>\n <VueSFCProps props={meta.props} />\n <VueSFCEmits events={meta.events} />\n <VueSFCSlots slots={meta.slots} />\n </div>\n </div>\n );\n}\n\nexport const vueRenderer: APINodeRenderer = {\n predicate,\n Component: VueComponent,\n OverviewComponent: VueOverviewComponent,\n nodeType: 'Vue SFCs',\n icon: { name: 'Vue', url: 'https://static.bit.dev/extensions-icons/vue.svg' },\n default: true,\n};\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,22 @@
1
+ .container {
2
+ display: flex;
3
+ height: calc(100% - 40px);
4
+ padding: 24px 0;
5
+ }
6
+
7
+ .inner {
8
+ overflow-y: auto;
9
+ padding-right: 16px;
10
+ width: 100%;
11
+ }
12
+
13
+ .title {
14
+ font-size: var(--bit-p-md);
15
+ font-weight: 500;
16
+ padding-bottom: 16px;
17
+ }
18
+
19
+ .empty {
20
+ font-size: var(--bit-p-xs);
21
+ padding-bottom: 24px;
22
+ }
@@ -0,0 +1,20 @@
1
+ import { type Location, SchemaNode } from '@teambit/semantics.entities.semantic-schema';
2
+ /**
3
+ * Vue SFC schema node.
4
+ */
5
+ export declare class VueSchema extends SchemaNode {
6
+ readonly location: Location;
7
+ readonly name: string;
8
+ readonly meta: any;
9
+ constructor(location: Location, name: string, meta: any);
10
+ getNodes(): never[];
11
+ toString(options?: {
12
+ color?: boolean;
13
+ }): string;
14
+ toFullSignature(): string;
15
+ toObject(): {
16
+ name: string;
17
+ meta: any;
18
+ };
19
+ static fromObject(obj: Record<string, any>): VueSchema;
20
+ }
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.VueSchema = void 0;
7
+ function _chalk() {
8
+ const data = _interopRequireDefault(require("chalk"));
9
+ _chalk = function () {
10
+ return data;
11
+ };
12
+ return data;
13
+ }
14
+ function _semanticsEntities() {
15
+ const data = require("@teambit/semantics.entities.semantic-schema");
16
+ _semanticsEntities = function () {
17
+ return data;
18
+ };
19
+ return data;
20
+ }
21
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
22
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
23
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
24
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
25
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
26
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
27
+ /**
28
+ * Vue SFC schema node.
29
+ */
30
+ class VueSchema extends _semanticsEntities().SchemaNode {
31
+ constructor(location, name, meta) {
32
+ super();
33
+ this.location = location;
34
+ this.name = name;
35
+ this.meta = meta;
36
+ }
37
+ getNodes() {
38
+ return [];
39
+ }
40
+ toString(options) {
41
+ const bold = options?.color ? _chalk().default.bold : x => x;
42
+ return `${bold(this.name)}: import('vue').Component`;
43
+ }
44
+ toFullSignature() {
45
+ return `${this.name}: import('vue').Component`;
46
+ }
47
+ toObject() {
48
+ return _objectSpread(_objectSpread({}, super.toObject()), {}, {
49
+ name: this.name,
50
+ meta: this.meta
51
+ });
52
+ }
53
+ static fromObject(obj) {
54
+ const location = obj.location;
55
+ const name = obj.name;
56
+ const meta = obj.meta;
57
+ return new VueSchema(location, name, meta);
58
+ }
59
+ }
60
+ exports.VueSchema = VueSchema;
61
+
62
+ //# sourceMappingURL=vue.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_chalk","data","_interopRequireDefault","require","_semanticsEntities","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","VueSchema","SchemaNode","constructor","location","name","meta","getNodes","toString","options","bold","color","chalk","x","toFullSignature","toObject","fromObject","obj","exports"],"sources":["vue.schema.ts"],"sourcesContent":["import chalk from 'chalk';\nimport { type Location, SchemaNode } from '@teambit/semantics.entities.semantic-schema';\n\n/**\n * Vue SFC schema node.\n */\nexport class VueSchema extends SchemaNode {\n constructor(\n readonly location: Location,\n readonly name: string,\n readonly meta: any\n ) {\n super();\n }\n\n getNodes() {\n return [];\n }\n\n toString(options?: { color?: boolean }): string {\n const bold = options?.color ? chalk.bold : (x: string) => x;\n return `${bold(this.name)}: import('vue').Component`;\n }\n\n toFullSignature(): string {\n return `${this.name}: import('vue').Component`;\n }\n\n toObject() {\n return {\n ...super.toObject(),\n name: this.name,\n meta: this.meta,\n };\n }\n\n static fromObject(obj: Record<string, any>): VueSchema {\n const location = obj.location;\n const name = obj.name;\n const meta = obj.meta;\n return new VueSchema(location, name, meta);\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ export declare class VueMain {
2
+ static slots: never[];
3
+ static dependencies: import("@teambit/harmony").Aspect[];
4
+ static runtime: import("@teambit/harmony").RuntimeDefinition;
5
+ static provider([apiUI]: [any]): Promise<VueMain>;
6
+ }
7
+ export default VueMain;
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = exports.VueMain = void 0;
7
+ function _ui() {
8
+ const data = require("@teambit/ui");
9
+ _ui = function () {
10
+ return data;
11
+ };
12
+ return data;
13
+ }
14
+ function _apiReference() {
15
+ const data = require("@teambit/api-reference");
16
+ _apiReference = function () {
17
+ return data;
18
+ };
19
+ return data;
20
+ }
21
+ function _vue() {
22
+ const data = require("./vue.aspect");
23
+ _vue = function () {
24
+ return data;
25
+ };
26
+ return data;
27
+ }
28
+ function _vue2() {
29
+ const data = require("./vue.schema");
30
+ _vue2 = function () {
31
+ return data;
32
+ };
33
+ return data;
34
+ }
35
+ function _vue3() {
36
+ const data = require("./vue.renderer");
37
+ _vue3 = function () {
38
+ return data;
39
+ };
40
+ return data;
41
+ }
42
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
43
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
44
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
45
+ class VueMain {
46
+ static async provider([apiUI]) {
47
+ apiUI.registerSchemaClasses(() => [_vue2().VueSchema]);
48
+ apiUI.registerAPINodeRenderer([_vue3().vueRenderer]);
49
+ return new VueMain();
50
+ }
51
+ }
52
+ exports.VueMain = VueMain;
53
+ _defineProperty(VueMain, "slots", []);
54
+ // define your aspect dependencies here.
55
+ // in case you need to use another aspect API.
56
+ _defineProperty(VueMain, "dependencies", [_apiReference().APIReferenceAspect]);
57
+ _defineProperty(VueMain, "runtime", _ui().UIRuntime);
58
+ _vue().VueAspect.addRuntime(VueMain);
59
+ var _default = exports.default = VueMain;
60
+
61
+ //# sourceMappingURL=vue.ui.runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_ui","data","require","_apiReference","_vue","_vue2","_vue3","_defineProperty","e","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","VueMain","provider","apiUI","registerSchemaClasses","VueSchema","registerAPINodeRenderer","vueRenderer","exports","APIReferenceAspect","UIRuntime","VueAspect","addRuntime","_default","default"],"sources":["vue.ui.runtime.ts"],"sourcesContent":["import { UIRuntime } from '@teambit/ui';\nimport { APIReferenceAspect } from '@teambit/api-reference';\nimport { VueAspect } from './vue.aspect';\nimport { VueSchema } from './vue.schema';\nimport { vueRenderer } from './vue.renderer';\n\nexport class VueMain {\n static slots = [];\n // define your aspect dependencies here.\n // in case you need to use another aspect API.\n static dependencies = [APIReferenceAspect];\n\n static runtime = UIRuntime;\n\n static async provider([apiUI]) {\n apiUI.registerSchemaClasses(() => [VueSchema]);\n apiUI.registerAPINodeRenderer([vueRenderer]);\n return new VueMain();\n }\n}\n\nVueAspect.addRuntime(VueMain);\n\nexport default VueMain;\n"],"mappings":";;;;;;AAAA,SAAAA,IAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,GAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,cAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,aAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,KAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,IAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,MAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,KAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAK,MAAA;EAAA,MAAAL,IAAA,GAAAC,OAAA;EAAAI,KAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA6C,SAAAM,gBAAAC,CAAA,EAAAC,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAD,CAAA,GAAAI,MAAA,CAAAC,cAAA,CAAAL,CAAA,EAAAC,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAT,CAAA,CAAAC,CAAA,IAAAC,CAAA,EAAAF,CAAA;AAAA,SAAAG,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAF,CAAA,GAAAE,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAb,CAAA,QAAAU,CAAA,GAAAV,CAAA,CAAAc,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;AAEtC,MAAMgB,OAAO,CAAC;EAQnB,aAAaC,QAAQA,CAAC,CAACC,KAAK,CAAC,EAAE;IAC7BA,KAAK,CAACC,qBAAqB,CAAC,MAAM,CAACC,iBAAS,CAAC,CAAC;IAC9CF,KAAK,CAACG,uBAAuB,CAAC,CAACC,mBAAW,CAAC,CAAC;IAC5C,OAAO,IAAIN,OAAO,CAAC,CAAC;EACtB;AACF;AAACO,OAAA,CAAAP,OAAA,GAAAA,OAAA;AAAAnB,eAAA,CAbYmB,OAAO,WACH,EAAE;AACjB;AACA;AAAAnB,eAAA,CAHWmB,OAAO,kBAII,CAACQ,kCAAkB,CAAC;AAAA3B,eAAA,CAJ/BmB,OAAO,aAMDS,eAAS;AAS5BC,gBAAS,CAACC,UAAU,CAACX,OAAO,CAAC;AAAC,IAAAY,QAAA,GAAAL,OAAA,CAAAM,OAAA,GAEfb,OAAO","ignoreList":[]}
package/esm.mjs ADDED
@@ -0,0 +1,7 @@
1
+ // eslint-disable-next-line import/no-unresolved
2
+ import cjsModule from './index.js';
3
+
4
+ export const VueAspect = cjsModule.VueAspect;
5
+
6
+ export default cjsModule;
7
+
package/package.json ADDED
@@ -0,0 +1,62 @@
1
+ {
2
+ "name": "@teambit/vue-aspect",
3
+ "version": "0.0.1",
4
+ "main": "dist/index.js",
5
+ "componentId": {
6
+ "name": "vue-aspect",
7
+ "version": "0.0.1",
8
+ "scope": "teambit.vue"
9
+ },
10
+ "dependencies": {
11
+ "vue-component-meta": "^2.2.10",
12
+ "chalk": "4.1.2",
13
+ "@teambit/harmony": "0.4.7",
14
+ "@teambit/documenter.ui.table-row": "4.1.14",
15
+ "@teambit/documenter.ui.table": "4.1.10",
16
+ "@teambit/cli": "0.0.1212",
17
+ "@teambit/schema": "1.0.635",
18
+ "@teambit/api-reference.models.api-node-renderer": "0.0.45",
19
+ "@teambit/api-reference.models.api-reference-model": "0.0.45",
20
+ "@teambit/semantics.entities.semantic-schema": "0.0.87",
21
+ "@teambit/api-reference": "1.0.635",
22
+ "@teambit/ui": "1.0.635"
23
+ },
24
+ "devDependencies": {
25
+ "@teambit/harmony.envs.core-aspect-env": "0.0.69"
26
+ },
27
+ "peerDependencies": {
28
+ "react": "^17.0.0 || ^18.0.0",
29
+ "@types/react": "^17.0.73"
30
+ },
31
+ "license": "Apache-2.0",
32
+ "optionalDependencies": {},
33
+ "peerDependenciesMeta": {},
34
+ "exports": {
35
+ ".": {
36
+ "node": {
37
+ "require": "./dist/index.js",
38
+ "import": "./dist/esm.mjs"
39
+ },
40
+ "default": "./dist/index.js"
41
+ },
42
+ "./dist/*": "./dist/*",
43
+ "./artifacts/*": "./artifacts/*",
44
+ "./*": "./*.ts"
45
+ },
46
+ "private": false,
47
+ "engines": {
48
+ "node": ">=16.0.0"
49
+ },
50
+ "repository": {
51
+ "type": "git",
52
+ "url": "https://github.com/teambit/bit"
53
+ },
54
+ "keywords": [
55
+ "bit",
56
+ "bit-aspect",
57
+ "bit-core-aspect",
58
+ "components",
59
+ "collaboration",
60
+ "web"
61
+ ]
62
+ }
@@ -0,0 +1,41 @@
1
+ declare module '*.png' {
2
+ const value: any;
3
+ export = value;
4
+ }
5
+ declare module '*.svg' {
6
+ import type { FunctionComponent, SVGProps } from 'react';
7
+
8
+ export const ReactComponent: FunctionComponent<
9
+ SVGProps<SVGSVGElement> & { title?: string }
10
+ >;
11
+ const src: string;
12
+ export default src;
13
+ }
14
+ declare module '*.jpg' {
15
+ const value: any;
16
+ export = value;
17
+ }
18
+ declare module '*.jpeg' {
19
+ const value: any;
20
+ export = value;
21
+ }
22
+ declare module '*.gif' {
23
+ const value: any;
24
+ export = value;
25
+ }
26
+ declare module '*.bmp' {
27
+ const value: any;
28
+ export = value;
29
+ }
30
+ declare module '*.otf' {
31
+ const value: any;
32
+ export = value;
33
+ }
34
+ declare module '*.woff' {
35
+ const value: any;
36
+ export = value;
37
+ }
38
+ declare module '*.woff2' {
39
+ const value: any;
40
+ export = value;
41
+ }
@@ -0,0 +1,42 @@
1
+ declare module '*.module.css' {
2
+ const classes: { readonly [key: string]: string };
3
+ export default classes;
4
+ }
5
+ declare module '*.module.scss' {
6
+ const classes: { readonly [key: string]: string };
7
+ export default classes;
8
+ }
9
+ declare module '*.module.sass' {
10
+ const classes: { readonly [key: string]: string };
11
+ export default classes;
12
+ }
13
+
14
+ declare module '*.module.less' {
15
+ const classes: { readonly [key: string]: string };
16
+ export default classes;
17
+ }
18
+
19
+ declare module '*.less' {
20
+ const classes: { readonly [key: string]: string };
21
+ export default classes;
22
+ }
23
+
24
+ declare module '*.css' {
25
+ const classes: { readonly [key: string]: string };
26
+ export default classes;
27
+ }
28
+
29
+ declare module '*.sass' {
30
+ const classes: { readonly [key: string]: string };
31
+ export default classes;
32
+ }
33
+
34
+ declare module '*.scss' {
35
+ const classes: { readonly [key: string]: string };
36
+ export default classes;
37
+ }
38
+
39
+ declare module '*.mdx' {
40
+ const component: any;
41
+ export default component;
42
+ }
@@ -0,0 +1,22 @@
1
+ .container {
2
+ display: flex;
3
+ height: calc(100% - 40px);
4
+ padding: 24px 0;
5
+ }
6
+
7
+ .inner {
8
+ overflow-y: auto;
9
+ padding-right: 16px;
10
+ width: 100%;
11
+ }
12
+
13
+ .title {
14
+ font-size: var(--bit-p-md);
15
+ font-weight: 500;
16
+ padding-bottom: 16px;
17
+ }
18
+
19
+ .empty {
20
+ font-size: var(--bit-p-xs);
21
+ padding-bottom: 24px;
22
+ }
@@ -0,0 +1,131 @@
1
+ import React from 'react';
2
+ import type { APINodeRenderProps, APINodeRenderer } from '@teambit/api-reference.models.api-node-renderer';
3
+ import type { APINode } from '@teambit/api-reference.models.api-reference-model';
4
+ import type { RowType } from '@teambit/documenter.ui.table-row';
5
+ import { Table } from '@teambit/documenter.ui.table';
6
+ import type { ComponentMeta } from 'vue-component-meta';
7
+
8
+ import styles from './vue.renderer.module.scss';
9
+
10
+ function predicate(node: any): boolean {
11
+ return node.__schema === 'VueSchema';
12
+ }
13
+
14
+ function useMeta(apiNode: APINode): ComponentMeta {
15
+ return (apiNode.api as any).meta as ComponentMeta;
16
+ }
17
+
18
+ function VueSFCTable({
19
+ rows,
20
+ hasDescription,
21
+ expanded,
22
+ }: {
23
+ rows: RowType[];
24
+ hasDescription?: boolean;
25
+ expanded?: boolean;
26
+ }) {
27
+ const headings = hasDescription ? ['name', 'type', 'default', 'description'] : ['name', 'type'];
28
+ return <Table headings={headings} rows={rows} isListView={expanded} />;
29
+ }
30
+
31
+ function VueSFCProps({ props, expanded = false }: { props: ComponentMeta['props']; expanded?: boolean }) {
32
+ const rows: RowType[] = props
33
+ .filter(({ global }) => !global)
34
+ .map(({ name, default: defaultValue, required, type, description }) => {
35
+ const row: RowType = {
36
+ name,
37
+ required,
38
+ type,
39
+ description,
40
+ };
41
+ if (defaultValue) {
42
+ row.default = { value: defaultValue };
43
+ }
44
+ return row;
45
+ });
46
+ if (rows.length === 0) {
47
+ return (
48
+ <div>
49
+ <h2 className={styles.title}>Props</h2>
50
+ <p className={styles.empty}>No props found.</p>
51
+ </div>
52
+ );
53
+ }
54
+ return (
55
+ <div>
56
+ <h2 className={styles.title}>Props</h2>
57
+ <VueSFCTable rows={rows} hasDescription expanded={expanded} />
58
+ </div>
59
+ );
60
+ }
61
+
62
+ function VueSFCEmits({ events, expanded = false }: { events: ComponentMeta['events']; expanded?: boolean }) {
63
+ const rows: RowType[] = events.map(({ name, type, description }) => ({
64
+ name,
65
+ required: false,
66
+ type,
67
+ description,
68
+ }));
69
+ if (rows.length === 0) {
70
+ return null;
71
+ }
72
+ return (
73
+ <div>
74
+ <h2 className={styles.title}>Emits</h2>
75
+ <VueSFCTable rows={rows} expanded={expanded} />
76
+ </div>
77
+ );
78
+ }
79
+
80
+ function VueSFCSlots({ slots, expanded }: { slots: ComponentMeta['slots']; expanded?: boolean }) {
81
+ const rows: RowType[] = slots.map(({ name, type, description }) => ({
82
+ name,
83
+ required: false,
84
+ type,
85
+ description,
86
+ }));
87
+ if (rows.length === 0) {
88
+ return null;
89
+ }
90
+ return (
91
+ <div>
92
+ <h2 className={styles.title}>Slots</h2>
93
+ <VueSFCTable rows={rows} expanded={expanded} />
94
+ </div>
95
+ );
96
+ }
97
+
98
+ function VueComponent({ apiNode }: APINodeRenderProps) {
99
+ const meta = useMeta(apiNode);
100
+ return (
101
+ <div className={styles.container}>
102
+ <div className={styles.inner}>
103
+ <VueSFCProps props={meta.props} />
104
+ <VueSFCEmits events={meta.events} />
105
+ <VueSFCSlots slots={meta.slots} />
106
+ </div>
107
+ </div>
108
+ );
109
+ }
110
+
111
+ function VueOverviewComponent({ apiNode }: APINodeRenderProps) {
112
+ const meta = useMeta(apiNode);
113
+ return (
114
+ <div className={styles.container}>
115
+ <div className={styles.inner}>
116
+ <VueSFCProps props={meta.props} />
117
+ <VueSFCEmits events={meta.events} />
118
+ <VueSFCSlots slots={meta.slots} />
119
+ </div>
120
+ </div>
121
+ );
122
+ }
123
+
124
+ export const vueRenderer: APINodeRenderer = {
125
+ predicate,
126
+ Component: VueComponent,
127
+ OverviewComponent: VueOverviewComponent,
128
+ nodeType: 'Vue SFCs',
129
+ icon: { name: 'Vue', url: 'https://static.bit.dev/extensions-icons/vue.svg' },
130
+ default: true,
131
+ };