-
Notifications
You must be signed in to change notification settings - Fork 0
/
workspace
159 lines (159 loc) · 4.95 KB
/
workspace
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
/**
* this is the main configuration file of your bit workspace.
* for full documentation, please see: https://docs.bit.dev/configuration
**/{
"$schema": "",
/**
* main configuration of the Bit workspace.
**/
"@teambit/workspace": {
/**
* applies only on bit.dev. configure the main owner of your workspace.
**/
// "defaultOwner": "teambit",
/**
* set the default scope when there is no matching for the component in the components array.
**/
// "defaultScope": "my-scope",
/**
* set the default directory when there is no matching for the component in the components array.
**/
"defaultDirectory": "components",
/**
* set the default structure of components in your project.
**/
"components": [
{
"defaultScope": "ui",
"directory": "base"
},
{
"defaultScope": "extensions",
"directory": "extensions"
}
]
},
/**
* main configuration for component dependency resolution.
**/
"@teambit/dependency-resolver": {
/**
* choose the package manager for Bit to use. you can choose between 'npm', 'yarn', 'pnpm'
*/
"packageManager": "yarn",
/**
* If true, then Bit will add the "--strict-peer-dependencies" option when invoking package managers.
* This causes "bit install" to fail if there are unsatisfied peer dependencies, which is
* an invalid state that can cause build failures or incompatible dependency versions.
* (For historical reasons, JavaScript package managers generally do not treat this invalid
* state as an error.)
*
* The default value is false to avoid legacy compatibility issues.
* It is strongly recommended to set strictPeerDependencies=true.
*/
"strictPeerDependencies": true,
/**
* map of extra arguments to pass to the configured package manager upon the installation
* of dependencies.
*/
"extraArgs": []
},
/**
* automate Bit workflow with Git.
*/
// "@teambit/git": {
/**
* fetch dependency and component updates on `git pull`.
**/
// "dependencyUpdateOnPull": true
// },
/**
* workspace variants allow to set different subsets of configuration for components in your workspace.
* this is extremely useful for upgrading, aligning and building components with a
* new set of dependencies.
**/
"@teambit/variants": {
/**
* wildcards can be used to configure components under a specific namespace.
* this configuration applies the react extensions on all components the `ui` namespace.
**/
"base/*": {
/**
* apply the react environment on all ui components.
**/
"@teambit/react": {
/**
* turn on typescript compiler.
**/
"typescript": true,
/**
* root component is the one to be deployed and served.
**/
"root": "src/components/taskBox",
/**
* sets react version to be bigger or equal to 16.0.0.
* this will add react and @types/react (in case typescript is turned on) as peer dependencies
* with this SemVer.
**/
"version": ">=16.0.0"
},
"base/fragments/*": {
/**
* main configuration file for handling the build process of components.
*/
"@teambit/flows": {
/**
* configure build tasks. configuration of build tasks is basically a map of `task name`
* pointed to an array of tasks. each task can be either a bash command or an extension
* which exposes a task. reserved task names: build, test, runs on pre-tag.
*/
"tasks": {
"build": [
"@teambit/react:build",
"mv dist dist-copy"
],
"test": [
"mocha ."
],
"deploy": [
"firebase deploy"
]
}
}
},
/**
* configure storybook extension on all ui components. :TODO: @gilad please define config for
* storybook extension
*/
"@teambit/storybook": {}
},
/**
* variants can be applied to a component in any namespace level.
* the configuration below sets all components under `base` to be compatible with all versions of
* react 15 as well.
**/
"ui/base/*": {
"@teambit/component": {
"peerDependencies": {
"react": ">15.0.1"
}
}
},
"extensions/*": {
// "@teambit/extension": {
// need to decide configuration for extension environment.
// },
/**
* configure the creation of new components in your workspace through the `bit create` command.
* this is helpful for setting component structure standards.
**/
"@teambit/create": {
/**
* default component template for Bit to use for creation of components upon `bit create`.
* default template is:
*/
"defaultTemplate": "@teambit/extension-template"
}
}
}
}