@movable/ui 4.0.1 → 4.0.2-alpha.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/lib/index.mjs.map +1 -1
- package/package.json +3 -16
- package/README.md +0 -136
package/package.json
CHANGED
|
@@ -1,16 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@movable/ui",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.2-alpha.0",
|
|
4
4
|
"description": "Movable Ink's shared MUI components and MUI theme for our vite applications",
|
|
5
5
|
"module": "lib/index.mjs",
|
|
6
6
|
"types": "lib/index.d.ts",
|
|
7
7
|
"files": [
|
|
8
8
|
"lib"
|
|
9
9
|
],
|
|
10
|
-
"workspaces": [
|
|
11
|
-
"eslint-plugin-ui",
|
|
12
|
-
"mcp-server"
|
|
13
|
-
],
|
|
14
10
|
"scripts": {
|
|
15
11
|
"build": "vite build",
|
|
16
12
|
"build-storybook": "storybook build",
|
|
@@ -19,7 +15,6 @@
|
|
|
19
15
|
"lint:src": "tsc --project ./tsconfig.json && eslint -c ./.eslintrc.json ./src --report-unused-disable-directives --max-warnings 0",
|
|
20
16
|
"lint:cypress": "tsc --project ./cypress/tsconfig.json && eslint -c ./cypress/.eslintrc.json ./cypress --resolve-plugins-relative-to ./cypress --report-unused-disable-directives --max-warnings 0 --no-error-on-unmatched-pattern",
|
|
21
17
|
"lint:stories": "tsc --project ./tsconfig.json && eslint -c ./.eslintrc.json ./stories --report-unused-disable-directives --max-warnings 0",
|
|
22
|
-
"prepare": "husky install",
|
|
23
18
|
"percy:storybook": "PERCY_TOKEN=$PERCY_TOKEN percy exec -- percy storybook ./storybook-static",
|
|
24
19
|
"storybook": "storybook dev -p 6006",
|
|
25
20
|
"test": "cypress run --component -q",
|
|
@@ -29,7 +24,8 @@
|
|
|
29
24
|
},
|
|
30
25
|
"repository": {
|
|
31
26
|
"type": "git",
|
|
32
|
-
"url": "git+https://github.com/movableink/ui.git"
|
|
27
|
+
"url": "git+https://github.com/movableink/ui.git",
|
|
28
|
+
"directory": "packages/ui"
|
|
33
29
|
},
|
|
34
30
|
"keywords": [
|
|
35
31
|
"mui",
|
|
@@ -43,12 +39,9 @@
|
|
|
43
39
|
},
|
|
44
40
|
"homepage": "https://movableink.github.io/ui",
|
|
45
41
|
"devDependencies": {
|
|
46
|
-
"@commitlint/cli": "^17.6.7",
|
|
47
|
-
"@commitlint/config-conventional": "^17.6.7",
|
|
48
42
|
"@emotion/react": "^11.11.1",
|
|
49
43
|
"@emotion/styled": "^11.11.0",
|
|
50
44
|
"@movable/eslint-plugin-ui": "*",
|
|
51
|
-
"@movable/prettier-config": "^2.0.0",
|
|
52
45
|
"@mui/icons-material": "^6.5.0",
|
|
53
46
|
"@mui/material": "^6.5.0",
|
|
54
47
|
"@mui/x-data-grid-generator": "^7.29.8",
|
|
@@ -79,13 +72,10 @@
|
|
|
79
72
|
"eslint-plugin-react-hooks": "^4.6.0",
|
|
80
73
|
"eslint-plugin-react-refresh": "^0.4.3",
|
|
81
74
|
"eslint-plugin-storybook": "^9.1.4",
|
|
82
|
-
"husky": "^8.0.0",
|
|
83
|
-
"lint-staged": "^13.2.3",
|
|
84
75
|
"lodash-es": "^4.17.21",
|
|
85
76
|
"notistack": "^3.0.1",
|
|
86
77
|
"npm-run-all": "^4.1.5",
|
|
87
78
|
"postcss": "^8.4.27",
|
|
88
|
-
"prettier": "3.1.1",
|
|
89
79
|
"react": "^18.2.0",
|
|
90
80
|
"react-chartjs-2": "^5.3.0",
|
|
91
81
|
"react-dom": "^18.2.0",
|
|
@@ -115,8 +105,5 @@
|
|
|
115
105
|
},
|
|
116
106
|
"optionalDependencies": {
|
|
117
107
|
"@rollup/rollup-linux-x64-gnu": "4.9.5"
|
|
118
|
-
},
|
|
119
|
-
"volta": {
|
|
120
|
-
"node": "22.21.1"
|
|
121
108
|
}
|
|
122
109
|
}
|
package/README.md
DELETED
|
@@ -1,136 +0,0 @@
|
|
|
1
|
-
# @movable/ui
|
|
2
|
-
|
|
3
|
-
todo: update
|
|
4
|
-
|
|
5
|
-
This repo contains the shared components for our frontend applications. Using this [react component library guide](https://prateeksurana.me/blog/react-component-library-using-storybook-7/#compiling-the-library-using-rollup)
|
|
6
|
-
|
|
7
|
-
## Local Development
|
|
8
|
-
|
|
9
|
-
### Installation
|
|
10
|
-
|
|
11
|
-
1. Ensure you have [`volta`](https://volta.sh) installed on your computer
|
|
12
|
-
2. Clone the repo
|
|
13
|
-
3. `npm install` (note: `npm`, not `yarn`)
|
|
14
|
-
|
|
15
|
-
### Usage
|
|
16
|
-
|
|
17
|
-
Ensure the project consuming this library has all the required peer dependencies.
|
|
18
|
-
|
|
19
|
-
### WARNING: Providing Theme Colors to Custom Components
|
|
20
|
-
|
|
21
|
-
While within using app you'll be able to use `(theme) => theme.palette...` style of sx props. But within our custom component this _does NOT_ traverse to the using app. You'll want to use the theme palette directly to ensure proper color strings. See #224
|
|
22
|
-
|
|
23
|
-
```jsx
|
|
24
|
-
import palette from 'path_to_src/theme/palette';
|
|
25
|
-
|
|
26
|
-
export default InkCustomComponent() {
|
|
27
|
-
return (
|
|
28
|
-
<Box sx={{ backgroundColor: palette.neutral50 }}>
|
|
29
|
-
...
|
|
30
|
-
</Box>
|
|
31
|
-
)
|
|
32
|
-
}
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
## Alpha Pre-release Workflow
|
|
36
|
-
|
|
37
|
-
This project supports alpha releases for testing changes before full releases.
|
|
38
|
-
|
|
39
|
-
### Manual Alpha Release
|
|
40
|
-
For testing specific features or changes:
|
|
41
|
-
|
|
42
|
-
1. **Navigate to Actions tab** in GitHub repository
|
|
43
|
-
2. **Select "Release to NPM"** workflow
|
|
44
|
-
3. **Click "Run workflow"** button
|
|
45
|
-
4. **Configure options:**
|
|
46
|
-
- `release_type`: Select `prerelease`
|
|
47
|
-
- `dist_tag`: Leave as `alpha` or customize (e.g., `beta`, `feature-test`)
|
|
48
|
-
- `increment`: Leave empty for auto-increment or specify (`patch`, `minor`, `major`)
|
|
49
|
-
5. **Click "Run workflow"** to trigger the release
|
|
50
|
-
|
|
51
|
-
**Result:** Creates version like `3.4.1-alpha.0` and publishes to npm with `@alpha` tag
|
|
52
|
-
|
|
53
|
-
### Using Alpha Versions in Other Projects
|
|
54
|
-
|
|
55
|
-
Install alpha versions in your consuming projects:
|
|
56
|
-
|
|
57
|
-
```bash
|
|
58
|
-
# Install latest alpha
|
|
59
|
-
npm install @movable/ui@alpha
|
|
60
|
-
yarn add @movable/ui@alpha
|
|
61
|
-
|
|
62
|
-
# Install specific alpha version
|
|
63
|
-
npm install @movable/ui@3.4.1-alpha.0
|
|
64
|
-
yarn add @movable/ui@3.4.1-alpha.0
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
View all available versions at: https://www.npmjs.com/package/@movable/ui?activeTab=versions
|
|
68
|
-
|
|
69
|
-
## Claude Code Skills
|
|
70
|
-
|
|
71
|
-
This repo includes local [Claude Code](https://claude.com/claude-code) skills for common workflows. See [CLAUDE.md](./CLAUDE.md#local-skills) for the full list of available `/slash` commands.
|
|
72
|
-
|
|
73
|
-
## MCP Server
|
|
74
|
-
|
|
75
|
-
This repo includes an MCP (Model Context Protocol) server that exposes component information to AI assistants like Claude Code. See [mcp-server/README.md](./mcp-server/README.md) for setup instructions.
|
|
76
|
-
|
|
77
|
-
## Visual Regression Testing
|
|
78
|
-
|
|
79
|
-
Visual regression testing is handled via **Percy with Storybook** (Storybook-only approach):
|
|
80
|
-
|
|
81
|
-
- **Storybook Stories**: All visual states must be captured in Storybook stories
|
|
82
|
-
- **Percy Integration**: `npm run percy:storybook` runs Percy snapshots on built Storybook
|
|
83
|
-
- **Cypress Tests**: Focus on functional/integration testing only (no Percy snapshots)
|
|
84
|
-
|
|
85
|
-
This consolidated approach reduces duplicate snapshots and CI runtime while maintaining comprehensive visual coverage.
|
|
86
|
-
|
|
87
|
-
## Conventional Commits
|
|
88
|
-
|
|
89
|
-
This repo uses [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/) to drive automated versioning. Commits are linted both pre-commit and in PR checks.
|
|
90
|
-
|
|
91
|
-
**Breaking changes** must use `feat!:` or include a `BREAKING CHANGE:` footer — see [CONTRIBUTING.md](./CONTRIBUTING.md#breaking-changes) for details.
|
|
92
|
-
|
|
93
|
-
```
|
|
94
|
-
fix(percy): added percy snapshots for all component states
|
|
95
|
-
|
|
96
|
-
- active
|
|
97
|
-
- disabled
|
|
98
|
-
- focused
|
|
99
|
-
```
|
|
100
|
-
|
|
101
|
-
## GitHub Issue to Shortcut Sync
|
|
102
|
-
|
|
103
|
-
This repository automatically syncs GitHub issues to Shortcut stories on the Designer Team board. **GitHub Issues are the source of truth** - all work should start and be managed here.
|
|
104
|
-
|
|
105
|
-
### For Engineers
|
|
106
|
-
|
|
107
|
-
📖 **See [.github/SHORTCUT_SYNC.md](.github/SHORTCUT_SYNC.md) for the complete workflow guide**, including:
|
|
108
|
-
- How the automation works (automatic + manual triggers)
|
|
109
|
-
- Recommended workflow for working through issues
|
|
110
|
-
- Issue types and state transitions
|
|
111
|
-
- Troubleshooting common scenarios
|
|
112
|
-
|
|
113
|
-
**Quick summary:** When you open an issue, it automatically creates a Shortcut story. When you open a PR that fixes the issue, it moves the story to "In Development". When you close the issue, it completes the story.
|
|
114
|
-
|
|
115
|
-
### Updating the Shortcut API Token
|
|
116
|
-
|
|
117
|
-
If the Shortcut API token needs to be rotated or updated:
|
|
118
|
-
|
|
119
|
-
1. **Create a new token in Shortcut:**
|
|
120
|
-
- Go to [Shortcut Settings → API Tokens](https://app.shortcut.com/settings/account/api-tokens)
|
|
121
|
-
- Create new token with description "GitHub Issue Sync"
|
|
122
|
-
- Copy the token value
|
|
123
|
-
|
|
124
|
-
2. **Update the GitHub secret:**
|
|
125
|
-
|
|
126
|
-
Via GitHub CLI:
|
|
127
|
-
```bash
|
|
128
|
-
gh secret set SHORTCUT_API_TOKEN
|
|
129
|
-
# Paste the new token when prompted
|
|
130
|
-
```
|
|
131
|
-
|
|
132
|
-
Or via GitHub web UI:
|
|
133
|
-
- Go to Settings → Secrets and variables → Actions
|
|
134
|
-
- Click on `SHORTCUT_API_TOKEN` and update the value
|
|
135
|
-
|
|
136
|
-
3. **Test the automation** by creating a test issue to verify the sync is working
|