Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: Release v4.0.0 #746

Merged
merged 95 commits into from
Jun 15, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
95 commits
Select commit Hold shift + click to select a range
c8d918e
ci: Release canary builds for prerelease branches (#481)
anicholls Mar 5, 2020
52a69b0
Merge remote-tracking branch 'origin/master' into prerelease/v4
anicholls Mar 9, 2020
650faff
ci: Fix prerelease canary builds (#501)
anicholls Mar 9, 2020
df817d8
refactor(button): Simplify Button components and prep for theming (#471)
anicholls Mar 10, 2020
6fdff31
Merge remote-tracking branch 'origin/master' into prerelease/v4
anicholls Mar 13, 2020
8e7b013
fix(button): Misc. fixes after refactor (#509)
anicholls Mar 13, 2020
40d8d85
Merge remote-tracking branch 'origin/master' into prerelease/v4
anicholls Mar 13, 2020
b4d85d5
refactor: Rename and move IconButtonToggleGroup to SegmentedControl (…
anicholls Mar 13, 2020
7895f09
fix(modal): Use React portals for accessibility fixes (#419)
NicholasBoll Mar 17, 2020
2e439f5
feat: Add script for easy promotion of labs components (#522)
anicholls Mar 18, 2020
2e6db84
chore: Promote SegmentedControl out of labs (#524)
anicholls Mar 18, 2020
cf9bdf6
feat(button): Add theming support to buttons (#527)
anicholls Mar 24, 2020
bbc20e7
Merge remote-tracking branch 'origin/master' into prerelease/v4
anicholls Mar 30, 2020
d1e62a9
test(color-picker): Fix cypress tests after button refactor
anicholls Mar 30, 2020
0686c08
chore: Manage dependencies (#533)
anicholls Mar 31, 2020
49f3b07
chore: Release 4.0.0-beta.0 (#536)
anicholls Mar 31, 2020
60f29a3
refactor(button): TextButton design updates (#540)
anicholls Apr 2, 2020
4e20b93
feat(button): Add Hyperlink component (#541)
anicholls Apr 2, 2020
42b6ac1
fix: Remove SyntheticEvent type usage (#499)
donovangini Apr 7, 2020
0edde1d
refactor: Destructure default props (#525)
mannycarrera4 Apr 7, 2020
dfa3731
feat(tooltip): Refactor to a simpler API (#528)
NicholasBoll Apr 7, 2020
f139327
feat(core): Allow InputProvider to use a configurable container (#546)
mannycarrera4 Apr 13, 2020
48687cf
chore: Merge remote-tracking branch 'origin/master' into prerelease/v4
anicholls Apr 13, 2020
1eda47f
chore: Release v4.0.0-beta.1 (#565)
anicholls Apr 14, 2020
df989f5
chore: Promote functions out of labs (#558)
mannycarrera4 Apr 15, 2020
abf02b6
Merge branch 'master' of github.com:Workday/canvas-kit into merge/mas…
NicholasBoll Apr 15, 2020
fd06560
fix: Move rtl-css-js dep to the right package
anicholls Apr 15, 2020
506a50a
fix: Remove trailing comma in package.json
anicholls Apr 15, 2020
d6c7490
Merge branch 'prerelease/v4' into merge/master-into-prerelease/v4
anicholls Apr 15, 2020
80e594a
fix(common): Add missing dependency
anicholls Apr 15, 2020
c4562de
Merge pull request #576 from NicholasBoll/merge/master-into-prereleas…
NicholasBoll Apr 15, 2020
b049a9a
chore: Upgrade packages to fix vulnerabilities (#531)
anicholls Apr 16, 2020
7375804
Merge pull request #579 from Workday/master
NicholasBoll Apr 16, 2020
27abc01
fix(button): Fix IconButton states and update TextButton CSS (#577)
anicholls Apr 16, 2020
ca715d3
ci(tooltip): Fix chromatic flag (#585)
NicholasBoll Apr 17, 2020
dcefc94
fix: Rename prop labels to match aria labels (#551)
mannycarrera4 Apr 17, 2020
91b0513
fix(modal): Add missing aria-modal=true and add aria-label (#588)
alexandrzavalii Apr 20, 2020
2954b1f
feat(core): Add window configuration option to inherit font family (#…
anicholls Apr 20, 2020
8c27eec
feat(button): Add href support (#590)
anicholls Apr 22, 2020
7b21328
Merge branch 'master' of github.com:Workday/canvas-kit into merge/mas…
NicholasBoll Apr 28, 2020
1d6a49d
Merge pull request #604 from NicholasBoll/merge/master-into-prereleas…
NicholasBoll Apr 29, 2020
44307b4
chore: Move theme functionality from labs to common (#594)
mannycarrera4 Apr 29, 2020
ff3db0c
fix: Add type checking to PRs and fix type errors (#609)
NicholasBoll May 4, 2020
f1e1a93
ci: Use sha in prerelease version to avoid duplicates (#616)
anicholls May 5, 2020
ba8e51e
ci: Trim sha before using it for canary preid (#619)
anicholls May 5, 2020
baf5748
ci: Fix version regex for canary publish (#622)
anicholls May 5, 2020
c1d3fa5
fix(common): Improve theming API stability (#593)
anicholls May 5, 2020
5f48600
ci: Fix ChromaticQA Baselines (#627)
NicholasBoll May 6, 2020
02581b2
chore: Merge remote-tracking branch 'origin/master' into prerelease/v4
anicholls May 6, 2020
da2d967
Merge pull request #623 from anicholls/update-prerelease
anicholls May 6, 2020
e668828
fix: Clean up ts3.5 files (#630)
NicholasBoll May 7, 2020
9daf370
ci: Add script to announce trunk build failures in slack (#628)
anicholls May 7, 2020
22c6ff1
test(toast): Fix chromatic stories for toast (#625)
mannycarrera4 May 8, 2020
839d919
fix(color-picker): Fix accessibility announcement for color input (#639)
mannycarrera4 May 11, 2020
0c47b9c
chore: Release v4.0.0-beta.2 (#626)
anicholls May 11, 2020
bf33fae
fix(pagination): Provide aria live attribute for accessbility (#620)
mannycarrera4 May 11, 2020
0ec7791
chore: Upgrade Babel and presets to support optional chaining (#631)
NicholasBoll May 11, 2020
42c1aef
chore: Fix version issue in beta build (#644)
anicholls May 12, 2020
2df320f
chore: Release v4.0.0-beta.3 (#646)
anicholls May 12, 2020
9bee8d0
fix(avatar): Combine Avatar & AvatarButton and provide fallback image…
vibdev May 14, 2020
370c732
feat(select): Add theming to select in labs (#648)
mannycarrera4 May 18, 2020
25ebd14
chore: Fix create-module and promote-module (#660)
NicholasBoll May 19, 2020
f29f26b
fix: Fix check-lockfile call during precommit linting (#663)
jamesfan May 20, 2020
6026e10
ci: Improve canary builds & publish behavior (#665)
anicholls May 20, 2020
34db088
chore: Release 4.0.0-beta.4 (#666)
anicholls May 20, 2020
55f79be
feat(button): Add toolbar square icon (#662)
mannycarrera4 May 22, 2020
fd475bf
fix(avatar): Fix misalignment on ie11 (#676)
alexandrzavalii May 27, 2020
7dcb405
docs: Clean up 4.0 migration guide (#677)
anicholls May 27, 2020
5c84c92
fix(toast): Action link align on new line (#682)
alexandrzavalii May 27, 2020
d7be48d
fix: Update button readme with toolbar section (#680)
mannycarrera4 May 27, 2020
8f899a9
chore: Merge branch 'origin/master' into 'prerelease/v4'
anicholls Jun 1, 2020
35e0c77
fix: Cleanup after merging master into prerelease/v4
anicholls Jun 1, 2020
b9e9a28
Merge pull request #688 from anicholls/update-prerelease
anicholls Jun 5, 2020
d56c0d4
feat(button): Add toolbar dropdown button (#684)
mannycarrera4 Jun 5, 2020
93d09eb
test(card): Add stories and enable snapshots (#708)
mannycarrera4 Jun 8, 2020
668a01f
fix(common): Auto-generate contrast color for partial theme (#700)
donovangini Jun 9, 2020
0c8858b
feat: Add a Popup Stack manager to Canvas Kit (#670)
NicholasBoll Jun 9, 2020
da2f43d
chore: Update canvas-colors-web dependencies (#706)
anicholls Jun 9, 2020
6e9eb37
Merge branch 'master' of github.com:Workday/canvas-kit into merge/mas…
NicholasBoll Jun 10, 2020
7ca1d69
Merge pull request #725 from NicholasBoll/merge/master-into-prereleas…
NicholasBoll Jun 10, 2020
3fc94c9
fix: Use theme contrast color for input "checks" (#719)
anicholls Jun 10, 2020
283ba3c
fix(button): Misc. styling fixes and update to focusRing API (#726)
anicholls Jun 10, 2020
faa9e74
fix(form-field): Fix default prop bug (#702)
alanbsmith Jun 11, 2020
53b7f49
fix(segmented-control): Misc. fixes and story improvements (#730)
anicholls Jun 11, 2020
1814553
Merge branch 'prerelease/v4' of github.com:Workday/canvas-kit into me…
NicholasBoll Jun 12, 2020
ffcebc0
Merge pull request #738 from NicholasBoll/merge/master-into-prereleas…
anicholls Jun 12, 2020
a073caa
fix(icon): Fix icon color references (#733)
anicholls Jun 12, 2020
eb84837
feat(select): Render menu using a portal (#641)
jamesfan Jun 12, 2020
3c05cc9
chore: Release v4.0.0-beta.5 (#739)
anicholls Jun 12, 2020
87036b9
fix(button): Fix story categorization and OutlineButton focus backgro…
anicholls Jun 12, 2020
bdff49d
fix(select): Fix scrolling to the selected option (#743)
jamesfan Jun 12, 2020
e8215a1
fix(header): Fix prop usage to ensure we get defaults (#742)
anicholls Jun 12, 2020
33bfa49
fix: Fix issues after canvas-colors-web-upgrade (#741)
anicholls Jun 15, 2020
cc5c428
Merge branch 'master' of github.com:Workday/canvas-kit into merge/mas…
NicholasBoll Jun 15, 2020
a86a0e3
chore: Release v4.0.0
anicholls Jun 15, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
9 changes: 9 additions & 0 deletions .eslintrc-prettier.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
const prettierConfig = require('./.prettierrc.js');
const baseConfig = require('./.eslintrc.js');

module.exports = {
extends: './.eslintrc.js',
rules: {
'prettier/prettier': ['warn', prettierConfig]
}
}
43 changes: 8 additions & 35 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
const prettierConfig = require('./.prettierrc.js');

module.exports = {
env: {
browser: true,
Expand All @@ -23,7 +21,7 @@ module.exports = {
ecmaFeatures: {
jsx: true,
},
project: ['./tsconfig.json', './cypress/tsconfig.json'],
project: ['./tsconfig.eslint.json', './cypress/tsconfig.json'],
sourceType: 'module',
},
settings: {
Expand All @@ -37,12 +35,12 @@ module.exports = {
plugins: [
'workday-custom-rules',
'@typescript-eslint',
'@typescript-eslint/tslint',
'jest',
'react',
'prettier',
'react-hooks',
'emotion',
'jsdoc',
],
rules: {
'workday-custom-rules/restricted-imports': 'error',
Expand All @@ -60,11 +58,13 @@ module.exports = {
'default-case': 'error',
'dot-notation': 'error',
'eol-last': 'off',
eqeqeq: 'error',
'guard-for-in': 'error',
'linebreak-style': 'off',
'new-parens': 'off',
'newline-per-chained-call': 'off',
'no-caller': 'error',
'no-duplicate-imports': 'error',
'no-debugger': 'error',
'no-empty': 'error',
'no-empty-function': 'error',
Expand All @@ -75,44 +75,17 @@ module.exports = {
'no-multiple-empty-lines': 'off',
'no-new-wrappers': 'error',
'no-param-reassign': 'error',
'no-redeclare': 'error',
'no-undef-init': 'error',
'no-unused-expressions': 'off',
'@typescript-eslint/no-unused-expressions': 'error',
'no-unused-labels': 'error',
'no-use-before-define': 'warn', // Decide on this
'no-use-before-define': 'off', // TS takes care of this one...
'no-var': 'error',
'prefer-const': 'error',
'quote-props': 'off',
'space-before-function-paren': 'off',
'react/jsx-no-bind': 'off', // Keep perf implications in mind, but was giving too many warnings and hurting readability
curly: 'error',
radix: 'error',
'prettier/prettier': ['error', prettierConfig],
// NOTE: Commented out everything below that caused problems. A lot of this is likely included in the stuff above.
'@typescript-eslint/tslint/config': [
'error',
{
rules: {
// align: [true, 'parameters', 'arguments', 'statements'],
'comment-format': [true, 'check-space'],
// deprecation: true, // turned off for button deprecation
'jsdoc-format': true, // eslint-plugin-jsdoc
// 'jsx-no-string-ref': true,
// 'jsx-self-close': true,
'no-duplicate-imports': true,
'no-duplicate-variable': true,
// 'no-shadowed-variable': true,
'no-unused-expression': true,
'one-line': [true, 'check-catch', 'check-open-brace', 'check-whitespace'],
'triple-equals': [true, 'allow-null-check'],
typedef: [true, 'parameter', 'property-declaration'],
'variable-name': [
true,
'ban-keywords',
'check-format',
'allow-leading-underscore',
'allow-pascal-case',
],
},
},
],
},
};
18 changes: 18 additions & 0 deletions .github/tsc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"problemMatcher": [
{
"owner": "tsc",
"pattern": [
{
"regexp": "^(?:\\s+\\d+\\>)?([^\\s].*)\\((\\d+),(\\d+)\\)\\s*:\\s+(error|warning|info)\\s+(\\w{1,2}\\d+)\\s*:\\s*(.*)$",
"file": 1,
"line": 2,
"column": 3,
"severity": 4,
"code": 5,
"message": 6
}
]
}
]
}
12 changes: 10 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,9 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v2
with:
fetch-depth: 0 # Required to retrieve git history
- uses: actions/setup-node@v1
with:
node-version: 10.x
Expand Down Expand Up @@ -38,21 +40,27 @@ jobs:
env:
CYPRESS_CACHE_FOLDER: .cache/cypress

- name: Setup TSC matcher
run: node ./utils/add-matchers.js

# Keep steps separate for Github Actions annotation matching: https://github.com/actions/setup-node/blob/83c9f7a7df54d6b57455f7c57ac414f2ae5fb8de/src/setup-node.ts#L26-L33
- name: Lint
run: yarn lint

- name: Dependency Check
run: yarn depcheck

- name: Type Check
run: yarn typecheck

- name: Unit tests
run: yarn test

- name: Build Storybook
run: yarn build-storybook --quiet

- name: Start Server
run: yarn http-server docs -p 9001 & npx wait-on http://localhost:9001
run: npx http-server docs -p 9001 & npx wait-on http://localhost:9001

- uses: chromaui/action@v1
with:
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ lerna-debug.log*
# build
modules/**/dist
modules/**/ts-tmp
modules/**/ts3.5
build/*
*.tsbuildinfo

Expand Down
14 changes: 14 additions & 0 deletions .postcssrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
const date = new Date();

module.exports = {
map: true,
plugins: {
'postcss-discard-duplicates': {},
autoprefixer: {},
'css-mqpacker': {},
'postcss-banner': {
banner: `Copyright 2019-${date.getFullYear()} Workday, Inc.`,
},
'postcss-inline-svg': {},
},
};
4 changes: 2 additions & 2 deletions .storybook/config.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@ function loadStories() {
const allExports = [];

allReqs.forEach(req => {
req.keys().forEach(fname => {
const story = req(fname);
req.keys().forEach(filename => {
const story = req(filename);

if (story.default) allExports.push(story);
});
Expand Down
6 changes: 6 additions & 0 deletions .storybook/manager-head.html
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
<script>
document.title = 'Canvas Kit Storybook';
</script>

<style>
[title^='_hidden_'] {
display: none !important;
}
</style>
33 changes: 12 additions & 21 deletions .storybook/webpack.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ const createCompiler = require('@storybook/addon-docs/mdx-compiler-plugin');
const modulesPath = path.resolve(__dirname, '../modules');
const welcomeSectionPath = path.resolve(__dirname, './');
const utilsPath = path.resolve(__dirname, '../utils');
const postcssConfigPath = path.resolve(__dirname, './postcss.config');

module.exports = ({config, mode}) => {
// This is so we get consistent results when loading .ts/tsx and .mdx files
Expand All @@ -20,26 +19,18 @@ module.exports = ({config, mode}) => {
},
];

// Exclude all node_modules from babel-loader
config.module.rules
.find(rule => /mjs\|jsx/.test(rule.test.toString()))
.exclude.push(/node_modules/);

// Filter out extraneous rules added by CRA (react-scripts)
// react-scripts automatically adds js/ts matchers for a `src` folder which we don't use so these rules are moot
config.module.rules = config.module.rules.filter(
rule => !/js\|mjs\|jsx\|ts\|tsx/.test(rule.test.toString())
);

// Override CRA postcss presets
config.module.rules.forEach(rule => {
if (rule.test.toString().includes('scss|sass')) {
delete rule.use[2].options.plugins;

rule.use[2].options.config = {
path: postcssConfigPath,
};
}
config.module.rules.push({
test: /\.(scss|css)$/,
use: [
'style-loader',
{
loader: 'css-loader',
options: {importLoaders: 2},
},
'postcss-loader',
'sass-loader',
],
include: modulesPath,
});

// Add `.ts` and `.tsx` as a resolvable extension.
Expand Down
13 changes: 7 additions & 6 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ git:

stages:

- name: master
if: branch = master AND type != pull_request
- name: trunk
if: (branch = master OR branch =~ /^prerelease\//) AND type != pull_request

- name: tag
if: branch =~ /^v\d+\.\d+(\.\d+)?(-\S*)?$/ AND tag IS present
Expand All @@ -26,7 +26,6 @@ install:

jobs:
include:

- stage: tag
script:
- yarn build
Expand All @@ -37,20 +36,22 @@ jobs:
on:
tags: true

- stage: master
- stage: trunk
script:
- >- # Chromatic relies on a built Storybook, so exit early if build-storybook fails
yarn build-storybook --quiet &&
yarn chromatic --quiet --auto-accept-changes --exit-once-uploaded --storybook-build-dir docs
- yarn build
after_failure:
- node utils/report-failure.js
env:
- CHROMATIC_APP_CODE="dlpro96xybh"
deploy:
- provider: script
script: npm config set //registry.npmjs.org/:_authToken=$NPM_PUBLISH_TOKEN && node utils/publish-canary.js $SLACK_WEBHOOK $TRAVIS_BUILD_WEB_URL
script: npm config set //registry.npmjs.org/:_authToken=$NPM_PUBLISH_TOKEN && node utils/publish-canary.js
skip_cleanup: true
on:
branch: master
all_branches: true
- provider: pages
skip_cleanup: true
local_dir: docs
Expand Down
Loading