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

Add FileInput buttonText prop #3560

Merged
merged 13 commits into from
Jul 8, 2019
Merged

Add FileInput buttonText prop #3560

merged 13 commits into from
Jul 8, 2019

Conversation

thepocp
Copy link
Contributor

@thepocp thepocp commented May 21, 2019

Checklist

  • Includes tests
  • Update documentation

Unfortunately, I do not know how to test this functionality. You can only check the value of the data attribute, but not the text itself.

Changes proposed in this pull request:

Added a prop for FileInput, which changes the text on the button. This is necessary, for example, for the i18n.

@adidahiya adidahiya self-assigned this May 23, 2019

private changeButtonText = (text: string) => {
if (this.input) {
this.input.setAttribute("button-text", text);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we should namespace the attribute name, just to be safe

Suggested change
this.input.setAttribute("button-text", text);
this.input.setAttribute(`${NS}-button-text`, text);

... this would also require exporting NS from packages/core/src/common/classes.ts and importing that constant here

@@ -143,6 +143,11 @@ $file-input-button-padding-large: ($pt-input-height-large - $pt-button-height) /
}
}

#blueprint-documentation [data-example-id="file-input"] .#{$ns}-file-upload-input::after {
content: "Browse";
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why do you need this? shouldn't it be set as the default in the JS component?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I still don't think this block is needed, it doesn't seem to do anything

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I added this to this block. Attr function has the fallback parameter, but it's not supported by browsers. How I can set style only for docs?
Screenshot 2019-06-18 at 23 45 07

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

attr() is supported for the content property by all the browsers we care about: https://caniuse.com/#feat=css-gencontent

not sure what you're trying to achieve here? this kind of selector would be the right way to do docs-only styles, but there are a couple issues

  • the styles should go in docs-app along with the other overrides; not in blueprint core
  • the data-example-id selector is wrong

and I still think you don't need it overall

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I meant the second argument of the function attr (fallback)
If you don't use this style, the text is not displayed:
Screenshot 2019-06-19 at 00 13 30
I moved rule in docs styles

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hmm, that's not good then... we don't want all users to have to add a style override just to get things working out of the box... and unfortunately I don't want to introduce a breaking change to the CSS API where it's required to supply a bp3-button-text attribute in order to get the text to render...

can we try using multiple CSS statements to achieve the fallback? if not, we might have to delay merging this PR as it could be a breaking change...

content: "Browse";
content: attr(#{$ns}-button-text);

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe I wrote something wrong. Sorry for my English.
This rule is only needed for the CSS block in the documentation. In other places it isn't needed and everything works well.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you write like this, the second rule will overwrite the first. And there will be an empty string

content: "Browse";
content: attr (#{$ns}-button-text);

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Your English is fine, no need to apologize :)

This rule is only needed for the CSS block in the documentation.

Unfortunately, this is not true for this library because the CSS-only styling API is part of Blueprint's public API (in addition to the JS components).

Some users render this markup to get a working file input with the word "Browse":

<label class="bp3-file-input">
  <input type="file"/>
  <span class="bp3-file-upload-input">Choose file...</span>
</label>

We don't want to remove support for this, otherwise it would be a regression... even though I understand that it's a minor syntax migration to change the API to this instead:

<label class="bp3-file-input">
  <input type="file"/>
  <span class="bp3-file-upload-input" bp3-button-text="Browse">Choose file...</span>
</label>

... it is still a breaking change.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I solved the problem. The CSS is just the string content: "Borwse". When creating a component, a new style is created.
But for the documentation I had to leave the style, because the new style is applied.

@adidahiya
Copy link
Contributor

docs preview

also one small problem: the button should expand to accomodate the text if possible, and have a max width at which it truncates (with Classes.TEXT_OVERFLOW_ELLIPSIS)

image

Copy link
Contributor

@adidahiya adidahiya left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

almost there

@@ -143,6 +143,11 @@ $file-input-button-padding-large: ($pt-input-height-large - $pt-button-height) /
}
}

#blueprint-documentation [data-example-id="file-input"] .#{$ns}-file-upload-input::after {
content: "Browse";
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I still don't think this block is needed, it doesn't seem to do anything

@@ -3,6 +3,9 @@
Use the standard `input type="file"` along with a `span` with class `@ns-file-upload-input`.
Wrap that all in a `label` with class `@ns-file-input`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you please move this paragraph to the CSS section? right around L26

@adidahiya
Copy link
Contributor

latest docs preview

@adidahiya
Copy link
Contributor

See my comments above about the CSS breaking change.

You can adjust PR, though, to make the implementation non-breaking. Try adding the new attr() style declaration with another class which is only added by the JS component (perhaps .bp3-file-upload-input-text-content) which overrides the CSS-only API (.bp3-file-upload-input).

Copy link
Contributor

@adidahiya adidahiya left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please merge origin/develop to get the latest CI workflow

@@ -135,6 +139,14 @@ export class FileInput extends React.PureComponent<IFileInputProps, {}> {
);
}

private createSheet = () => {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't want components to directly create new sheets like this... I think you can achieve the same result by conditionally adding a class name in the render() method... and style that class declaratively in _file-input.scss

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, I did too hard. Now everything seems fine

Copy link
Contributor

@adidahiya adidahiya left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

great, thanks @thepocp!

@adidahiya adidahiya merged commit c5004e9 into palantir:develop Jul 8, 2019
crispamares added a commit to graphext/blueprint that referenced this pull request Apr 2, 2020
* [OverflowList] Always re-render items (palantir#3278)

* Allow overriding of heading typography in Sass (palantir#3283)

* [TimezonePicker] Support a custom target via <children> (palantir#3287)

* Export getTimezoneMetadata(), add default value for date parameter

* Support one custom child in <TimezonePicker>

* Update example

* Update tests

* (nit) Rename to CustomTimezonePickerTarget

* Add more docs about possibly ignored props

* Update docs

* Respond to @giladgray CR

* Create CHANGELOG.md

* Suggest query remains when closed if nothing is selected. (palantir#3289)

* Allow shortcuts to change time in Date Range Picker (palantir#3223)

* Allow date range shortcuts to change time

* Address PR comments

* lint

* [Suggest] add `disabled` and `resetOnClose` props (palantir#3292)

* add Suggest resetOnClose prop a la Select

* add Suggest disabled prop

* add resetOnClose switch to example

* docs note

* [QueryList] Initialize activeItem state correctly based on prop. (palantir#3290)

* Initialize QueryList's activeItem state correctly based on prop.

* Fix comment typo

* Code cleanup

* [PanelStack] Allow any prop type for initial panels (palantir#3295)

* [Tooltip] allow HOVER interactions (palantir#3291)

* [Tag] fill & [TagInput] intent props (palantir#3237)

* add Tag fill prop

* add TagInput intent prop

* add tag fill styles & example switch

* docs: Fix link to Popover (palantir#3300)

* Add directory details to packages/*/package.json (palantir#3301)

Specifying the directory as part of the `repository` field in a `package.json`
allows third party tools to provide better support when working with monorepos.
For example, it allows them to correctly construct a commit diff for a specific
package.

This format was accepted by npm in
[npm/rfcs#19](npm/rfcs#19).

* Add directory to repository details in package.json files (palantir#3299)

Specifying the directory as part of the `repository` field in a `package.json`
allows third party tools to provide better support when working with monorepos.
For example, it allows them to correctly construct a commit diff for a specific
package.

This format was accepted by npm in npm/rfcs#19.

* [select] Add optional "itemsEqual" comparator prop to QueryList and related components (palantir#3285)

* Improve QueryList and related components to support optional
equality test implementation for non-primitive item types.

* Revert change to use undefined for representing no selection

* Finish revert change to use undefined for representing no selection

* Remove TODO

* Remove unnecessary param documentation

* Rename "areValuesEqual" prop to "itemsEqual"

* Improve "itemsEqual" prop to also support a property name.

* Documentation typos

* Documentation improvements

* Update copyright year in new file

* Rename new unit test file

* [DRP] Shortcuts support changing time & docs (palantir#3293)

* shortcut shouldChangeTime => includeTime

* revert unnecessary test changes

* add Shortcuts docs to DRP

* Publish

 - @blueprintjs/core@3.12.0
 - @blueprintjs/datetime@3.7.0
 - @blueprintjs/docs-theme@3.0.4
 - @blueprintjs/icons@3.5.1
 - @blueprintjs/karma-build-scripts@0.9.1
 - @blueprintjs/labs@0.16.3
 - @blueprintjs/node-build-scripts@0.8.1
 - @blueprintjs/select@3.6.0
 - @blueprintjs/table@3.4.1
 - @blueprintjs/test-commons@0.8.1
 - @blueprintjs/timezone@3.3.0
 - @blueprintjs/tslint-config@1.7.1
 - @blueprintjs/webpack-build-scripts@0.7.1

* [select] consistency refactors (palantir#3305)

* code consistency across `select` components:

- public state = ... (not inconstructor)
- non-optional refs
- safeInvokeMember to reduce destructuring

* fix tests, explicit null check

* dedupe shortcuts prop types (palantir#3311)

* [NumericInput] allows min === max (palantir#3296)

* NumericInput allows min === max

* add test

* [NumericInput] new rightElement prop (palantir#3314)

* Update select-component.md (palantir#3319)

* Fixing typo (palantir#3318)

Missing "and"

* Added new inbox icons (palantir#3335)

* [docs] click to download sketch files from Resources page (palantir#3334)

* click to download sketch files from Resources page

* lint

* use /raw/ url to download actual file

* rename resource files so they download correctly

* add "Missing fonts?" callout

* minor style polish

* Add internal text to switch component (palantir#3327)

* switch text v0

* font size a bit smaller

* add an example of internal text property

* test

* cleanup

* lint fixes

* review comments

* remove whitespace in tests

* more review comments

* even more review changes

* remove errant property

* restore comment

* update prop docs

* additional tests

* remove unnecessary checks

* [Spinner] SIZE_SMALL = 20 (palantir#3342)

* Spinner.SIZE_SMALL = 20

* fix isotest

* [NumericInput] countDecimalPlaces for number type (palantir#3337)

Fixes palantir#3336

* New Drawer component (palantir#2957)

* add files

* fixed styling

* dark theme added

* Added vertical orientation

* changed viewport units

* Added small and large sizes

* Standardized sizing

* backdrop fixed

* add tests

* small/large => one size prop

* update size constants

* add hasBackdrop switch to example

* use Drawer for API browser

* size prop docs

* fix isotest

* add size+vertical tests, actually run suite

* [DatePicker] fix onChange on month change after initial day selection (palantir#3343)

* fix onChange doesn't fire on month change after initial day selection
Fixes palantir#3340

* change !== to != operator

* add test onChange fired when month is changed for uncontrolled datepicker

* Publish

 - @blueprintjs/core@3.13.0
 - @blueprintjs/datetime@3.7.1
 - @blueprintjs/icons@3.6.0
 - @blueprintjs/select@3.6.1

* Corrected the type of Popover's onInteraction prop (palantir#3348)

* ButtonGroup supports "fill" prop when Buttons are wrapped in Popovers (palantir#3347)

* 🔧 upgrade tslint (palantir#3315)

* Fix shortcuts.tsx react import typings (palantir#3356)

* [Tabs] add panelClassName prop (palantir#3351)

* Fix lint (palantir#3374)

* [Core] Fixed not applying intent color for icon inside tree node (palantir#3355)

* [Core] Add option to make tree node disabled (palantir#3354)

* Drawer default prop warning fix (palantir#3382)

* [Select] Create-able Select components (palantir#3381)

* Upgrade dev dependencies and types (palantir#3370)

* Publish

 - @blueprintjs/core@3.14.0
 - @blueprintjs/docs-app@3.14.0
 - @blueprintjs/select@3.7.0

* [Core] Overlay: fix transitionDuration documentation (palantir#3391)

* [Core] Fix react types regression (palantir#3390)

* Publish

 - @blueprintjs/core@3.14.1
 - @blueprintjs/docs-app@3.14.1

* Publish

 - @blueprintjs/datetime@3.7.2

* [Core] Checkbox: fix indeterminate state update (palantir#3409)

Fixes palantir#3408

* Minor README updates

* [Core] Docs: fix small typo (palantir#3411)

"accomodate" to "accommodate"

* [Docs] Overlay Example: add option to test scrolling behavior (palantir#3406)

* Update Bug_report.md

* [datetime] docs: fix react-day-picker API hyperlink (palantir#3435)

* [core] TagInput: use undefined instead of null to hide clearButton (palantir#3436)

* [Select] hide QueryList item list when menuContent and createItemView are both null (palantir#3426)

* [MultiSelect] Enable pasting of multiple values (same as TagInput) (palantir#3428)

* [Core] Add z-index to panel stack header (palantir#3414)

* [Core] Add option to grow text area with input (palantir#3398)

* [Core] TextArea: fix style object regression (palantir#3440)

* [Core] Add position prop to Drawer component, deprecate vertical prop (palantir#3386)

* [Table] Fix resizable props documentation (palantir#3400)

* Switch to standard Apache-2.0 license (palantir#3457)

* [table] Fix documentation to use the right css file name (palantir#3452)

* Prepare release v3.15.0 (palantir#3458)

* Publish

 - @blueprintjs/core@3.15.0
 - @blueprintjs/datetime@3.8.0
 - @blueprintjs/docs-app@3.15.0
 - @blueprintjs/docs-theme@3.1.0
 - @blueprintjs/icons@3.7.0
 - @blueprintjs/karma-build-scripts@0.10.0
 - @blueprintjs/node-build-scripts@0.9.0
 - @blueprintjs/select@3.8.0
 - @blueprintjs/table@3.5.0
 - @blueprintjs/test-commons@0.9.0
 - @blueprintjs/timezone@3.4.0
 - @blueprintjs/tslint-config@1.8.0
 - @blueprintjs/webpack-build-scripts@0.8.0

* [Core] File input text styling for active selections (palantir#3375)

* [Icons] Added new inheritance icon (palantir#3451)

* Added new inheritance icon

* Updated content per CR

* Update font files

* Fix typo in bug report template

* [datetime] Fix DateInput IE11 bug when changing month/day (palantir#3471)

* Upgrade react-day-picker, fix caption months support, regen lockfile (palantir#3461)

* Publish

 - @blueprintjs/core@3.15.1
 - @blueprintjs/datetime@3.9.0
 - @blueprintjs/docs-app@3.15.1
 - @blueprintjs/icons@3.8.0

* [core] Fix NumericInput documentation of initial state value (palantir#3484)

* Upgrade documentalist, refactor CI config (palantir#3482)

* Publish

 - @blueprintjs/docs-app@3.15.2
 - @blueprintjs/docs-theme@3.2.0

* [docs] Fix accidental markdown strikethrough (palantir#3493)

- Incorrectly showed up as strikethrough text on https://blueprintjs.com/docs/#core/components/popover

* [datetime] [bugfix] Hover over date no longer clears time input (palantir#3502)

* [datetime] [bugfix] render the correct month when DRP singleMonthOnly is enabled (palantir#3504)

* [Icons] Added new UI icons (palantir#3510)

* [Select] Change activeItem when items change (palantir#3496)

* [datetime] Fix DRP inconsistency with single day ranges and time precision enabled (palantir#3557)

* Prepare datetime, icons, select release (palantir#3565)

* Publish

 - @blueprintjs/datetime@3.9.1
 - @blueprintjs/icons@3.9.0
 - @blueprintjs/select@3.8.1

* [docs-app] fix scrolling of interface definition drawer (palantir#3576)

* [core] Improve dark muted and disabled text contrast (palantir#3584)

* Fix docs rendering of mixed HTML / markdown content (palantir#3585)

* [dependencies] Bump js-yaml, cssnano, svgo

* [core] Fix number of clicks required to use HTMLSelect inside ControlGroup in Firefox (palantir#3568)

* [table] add editableTextProps to allow adjusting cells during editing (palantir#3350)

* [core] fix TagInput tags overflowing their container (palantir#3591)

* [core] Fix intent color for Icons inside Tree component in dark mode (palantir#3598)

* [core] Allow hiding panel stack header (palantir#3600)

* Update abstract button props to match react's. (palantir#3608)

React recently updated the typings for HTML button from 'string'
to a more limited union. See:
https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/react/index.d.ts#L1848
for the current types.

* [core] docs: use Pre component in Collapse example (palantir#3610)

* [core] Add controlled mode to PanelStack (palantir#3601)

* [datetime] feat(DateRangeInput): add support for disabling start or end input (palantir#3607)

* [table] feat(RowHeaderCell): Add support for nameRenderer (palantir#3447)

* Publish

 - @blueprintjs/core@3.16.0
 - @blueprintjs/datetime@3.10.0
 - @blueprintjs/docs-app@3.16.0
 - @blueprintjs/table@3.6.0

* Upgrade testing infrastructure (palantir#3615)

* Publish

 - @blueprintjs/core@3.16.1
 - @blueprintjs/karma-build-scripts@0.11.0
 - @blueprintjs/node-build-scripts@0.10.0

* Fix up inter-package dependencies

* Publish

 - @blueprintjs/core@3.16.2

* [tslint-config] Fix suggestion for <table> element replacement (palantir#3624)

* [datetime] Fix typing values into TimePicker's fields (palantir#3613)

* [docs-app] Fix minor bug in upload toast example (palantir#3626)

* [core] docs: add caveat about tooltip target element (palantir#3620)

* [select] bugfix(Select): fix keyboard navigation when all items disabled (palantir#3627)

* [select] fix: do not call itemRenderer when Select is disabled (palantir#3629)

* [core] fix(Toast): long words in toast messages no longer break container layout (palantir#3634)

* Various documentation fixes (palantir#3635)

* [core] fix(Switch): tweak dark theme hover/active colors (palantir#3637)

Fixes palantir#3599

* Split karma testing into more CI containers (palantir#3638)

* [core, select] feat: add fill prop to Popover, InputGroup, Suggest, MultiSelect (palantir#3636)

* Publish

 - @blueprintjs/core@3.17.0
 - @blueprintjs/datetime@3.10.1
 - @blueprintjs/docs-app@3.17.0
 - @blueprintjs/select@3.9.0
 - @blueprintjs/tslint-config@1.8.1

* [ci] fix: persist lib files when building dist

* Publish

 - @blueprintjs/core@3.17.1

* [datetime] feat(DatePicker): add option to highlight current day (palantir#3628)

* Publish

 - @blueprintjs/datetime@3.11.0
 - @blueprintjs/icons@3.9.1

* [core] feat(FileInput): add buttonText prop (palantir#3560)

* [core] fix(HotkeysTarget): invoke user-defined key event handlers correctly (palantir#3645)

* [core] fix(TextArea): grow box vertically to show initial content (palantir#3647)

* [table] fix EditableCell update cycle, improve EditableName docs (palantir#3649)

* [datetime] fix(DateRangeInput): maintain focus on time inputs during key interactions (palantir#3644)

* fix: restrict tslib dependency to minor version range

* chore: upgrade non-react typings

* [docs-app] feat(DateRangeInputExample): time picker toggle

* chore: upgrade to typescript 3.2 (palantir#3653)

* chore: upgrade to typescript 3.5.3 (palantir#3654)

* chore: upgrade documentalist (palantir#3656)

* [datetime] fix(DRI): do not close on selection when time inputs receive key presses (palantir#3658)

* [core] fix(EditableText): support selectAllOnFocus with type=number in latest React (palantir#3672)

* fix: correctly declare react peer deps in package.json (palantir#3676)

* [core] fix(Popover): only apply active class to target in uncontrolled mode (palantir#3677)

* [docs-app] create "Design Principles" section, mention CSS API contract (palantir#3678)

* chore: upgrade dependencies, delete labs package (palantir#3679)

* Publish

 - @blueprintjs/core@3.18.0
 - @blueprintjs/datetime@3.12.0
 - @blueprintjs/docs-app@3.18.0
 - @blueprintjs/docs-data@3.16.0
 - @blueprintjs/docs-theme@3.3.0
 - @blueprintjs/icons@3.10.0
 - @blueprintjs/karma-build-scripts@0.12.0
 - @blueprintjs/landing-app@3.16.0
 - @blueprintjs/node-build-scripts@0.11.0
 - @blueprintjs/select@3.10.0
 - @blueprintjs/table-dev-app@3.1.0
 - @blueprintjs/table@3.7.0
 - @blueprintjs/test-commons@0.10.0
 - test-react15@1.1.1
 - @blueprintjs/timezone@3.5.0
 - @blueprintjs/tslint-config@1.9.0
 - @blueprintjs/webpack-build-scripts@0.9.0

* chore: minor adjustment to vscode settings

* [core] fix(Drawer): use Sass variable $drawer-padding (palantir#3689)

Correcting use of $dialog-padding to $drawer-padding

* [core] feat: support create-react-app environment variable (palantir#3691)

Allows create-react-app users to set a custom blueprint namespace more easily.

* [table] fix(EditableCell): support tabIndex prop correctly (palantir#3687)

* [core] docs(Popover) fix import statements (palantir#3708)

* chore: Update Lerna URL in Readme (palantir#3715)

* [core] fix(Popover): click on target no longer affects hover behavior (palantir#3716)

* [core] fix(AnchorButton): left text alignment (palantir#3713)

* [datetime] feat(DateRangePicker): add active menu styles to shortcuts (palantir#3688)

* [datetime] fix: upgrade react-day-picker, clean up type imports (palantir#3725)

* [core] docs: add missing closing angle bracket (palantir#3714)

* chore: update code sandbox to latest package versions

* [core] fix(MenuItem): avoid React warning for unknown attr labelClassName (palantir#3730)

* Publish

 - @blueprintjs/core@3.18.1
 - @blueprintjs/datetime@3.13.0
 - @blueprintjs/docs-app@3.18.1
 - @blueprintjs/table@3.7.1

* [core] docs(Toaster): fix position prop comment (palantir#3657)

* [icons] feat: add learning, new layer(s), stopwatch icons (palantir#3745)

* [core] fix(MultiSlider): fix rendering bug with track fill (palantir#3733)

* Refactor to use React 16.3+ lifecycle methods (palantir#3702)

* [datetime] fix(TimePicker): allow more natural text entry (palantir#3762)

* [select] fix(Suggest): Default autoComplete for text input to "off" (palantir#3724)

* [core] feat(Tab): spread HTML props to rendered div (palantir#3766)

* Publish

 - @blueprintjs/core@3.19.0
 - @blueprintjs/datetime@3.14.0
 - @blueprintjs/docs-app@3.19.0
 - @blueprintjs/docs-theme@3.4.0
 - @blueprintjs/icons@3.11.0
 - @blueprintjs/select@3.11.0
 - @blueprintjs/table@3.8.0
 - @blueprintjs/timezone@3.6.0

* fix: lifecycle methods in MultiSlider, Resizable, and TableBodyCell (palantir#3771)

* Publish

 - @blueprintjs/core@3.19.1
 - @blueprintjs/table@3.8.1

* [select] fix(QueryList): re-render when controlled items change (palantir#3776)

* Publish

 - @blueprintjs/select@3.11.1

* [core] fix(Toast): fix bottom toast animation (palantir#3784)

* [core] feat(Breadcrumb): render icon if provided through props (palantir#3786)

* [core] fix(NumericInput): correct styles when placed inside label (palantir#3809)

* [core] fix(PanelStack): do not trigger unintended animations (palantir#3787)

* [core] docs: fix spelling of "dropdown" (palantir#3806)

* chore: use latest tree-sitter-typescript from github (palantir#3812)

* [core] fix(TagInput): prevent infinite setState in componentDidUpdate (palantir#3811)

* chore: remove commented code

* [core] fix(InputGroup): prevent infinite setState in componentDidUpdate (palantir#3813)

* [icons] feat: new icons (palantir#3816)

- New drawing
- Data lineage
- Archive
- Unarchive
- Signal search

* [core] feat(Toaster): ability to set max number of active toasts (palantir#3770)

* [datetime] feat: export IDateRangeInputProps (palantir#3821)

* [core] fix(NumericInput): do not trigger onValueChange if value is changed via props (palantir#3814)

* [datetime] feat(DateInput): add fill prop (palantir#3777)

* [datetime] feat: add shortcuts to single date picker (palantir#3818)

* [table] fix: cell copy to clipboard works in IE11 (palantir#3764)

* [core] fix(Collapse): simplify lifecycle, fix animation bugs (palantir#3831)

* [select] fix(MultiSelect): better handling of key events in Tag… (palantir#3836)

* [core] fix(Switch): indicator background colors (palantir#3828)

* Publish

 - @blueprintjs/core@3.20.0
 - @blueprintjs/datetime@3.15.0
 - @blueprintjs/docs-app@3.20.0
 - @blueprintjs/icons@3.12.0
 - @blueprintjs/select@3.11.2
 - @blueprintjs/table@3.8.2
 - @blueprintjs/test-commons@0.10.1

* [datetime] fix(Shortcuts): make shortcuts container focusable (palantir#3843)

* Publish

 - @blueprintjs/datetime@3.15.1

* [core] feat(EditableText): add alwaysRenderInput experimental feature (palantir#3841)

* [core] feat(Drawer): add Sass variables for background color (palantir#3857)

* chore: update dev env prerequisites

* [core] fix(TagInput): add intent styling when component is active (palantir#3855)

* Publish

 - @blueprintjs/core@3.21.0
 - @blueprintjs/docs-app@3.21.0

* [core] fix: Explicitly declare dom4 side effects (palantir#3867)

* [core] chore: isolate dom4 import to its own module (palantir#3868)

* [core] feat: high contrast CSS with color adjustments to pass WCAG requirements (palantir#3862)

* Publish

 - @blueprintjs/core@3.22.0
 - @blueprintjs/docs-app@3.22.0

* Fix PanelStack (palantir#3879)

Approving since only test failures are unrelated

* Fix DatePicker unit test (palantir#3880)

DatePicker unit tests started failing in December because
it relied on being able to press "next month". This change
sets the initial month to January.

* add tractor, truck, bring in data icons (palantir#3878)

* Release core 3.22.1

* Fix 3882 (palantir#3886)

Add gated input.focus to reinstate previous behavior

* Update react-popper to include important bugfix (palantir#3885)

* Update react-popper to include the fix from floating-ui/react-popper#320

* Update popper to 1.3.7

* Dedupe

* Yarn fix

* Yarny yarn

* Yo yo yarn

* Publish
- @blueprintjs/core@3.22.2
- @blueprintjs/docs-app@3.22.2

* Include index.js files in sideEffects list (palantir#3876)

* Include index files in sideEffects list

* Remove unnecessary index.js sideEffects

* Publish
- @blueprintjs/core@3.22.3
- @blueprintjs/docs-app@3.22.3

* [timezone] fix: upgrade moment-timezone to fix Brazilian timezones (palantir#3873)

* Publish

 - @blueprintjs/icons@3.13.0
 - @blueprintjs/timezone@3.6.1

* [core] fix(Toast): bottom toasts exit in the correct direction (palantir#3911)

Fixes palantir#3791

* [docs-app] fix(FormGroupExample): label ids (palantir#3892)

* [core] fix(NumericInput): correct rounding of default value (palantir#3894)

Fixes palantir#3889

* [docs-app] fix: CSS wrapping of main title in sidebar (palantir#3896)

* [core] fix(Toast): bottom shadow is no longer clipped (palantir#3912)

* [datetime] chore: fix tests which used year 2020 (palantir#3916)

* chore: use ESLint to run TSlint (palantir#3887)

* [core] feat: add intent prop to Slider and RangeSlider (palantir#3913)

* [table] fix: invalidate grid before rendering table when dimensions change (palantir#3888)

* chore: upgrade dependencies (palantir#3920)

* [core] docs: update link to popper.js modifiers reference (palantir#3922)

* [core] docs(Popover): fix text referencing "dismiss" buttons in example (palantir#3923)

* [core] fix(EditableText): allow setting value to null in controlled mode (palantir#3924)

* Publish

 - @blueprintjs/core@3.23.0
 - @blueprintjs/datetime@3.15.2
 - @blueprintjs/eslint-config@0.1.0

* [core] fix(Overlay): avoid rare crash in focus handling logic (palantir#3936)

* [resources] update sketch palette with named colors instead of hex (palantir#3931)

* chore: convert custom tslint rules to eslint (palantir#3917)

* [eslint-plugin-blueprint] fix(icon-components): autofix (palantir#3938)

also run this package's tests in CI properly

* [table] fix: column resize calculation on header double click (palantir#3732)

* [core] fix(Collapse): closing animation (palantir#3929)

* Prepare release (palantir#3939)

* Publish

 - @blueprintjs/core@3.23.1
 - @blueprintjs/docs-app@3.23.0
 - @blueprintjs/eslint-config@0.2.0
 - @blueprintjs/eslint-plugin-blueprint@0.1.0
 - @blueprintjs/node-build-scripts@1.0.0
 - @blueprintjs/table@3.8.3
 - @blueprintjs/tslint-config@2.0.0

* fix: eslint-config package reference, improve es-lint build script (palantir#3940)

* Publish

 - @blueprintjs/eslint-config@0.2.1
 - @blueprintjs/node-build-scripts@1.1.0

* chore: update README with new ESLint packages

* [core] feat(PanelStack): add renderCurrentPanelOnly prop (palantir#3768)

* [core] fix(PanelStack): rename prop and other fixes (palantir#3950)

* [core] feat(Button): add "outlined" modifier (palantir#3947)

* chore: upgrade to typescript 3.7 (palantir#3953)

* [core] remove non-HTML attributes in overflow menu items (palantir#3956)

* [icons] feat: add diagnosis and lab test icons (palantir#3966)

* [core] fix(HtmlSelect): text color for disabled options in dark mode (palantir#3968)

* [core] docs(Alert): clarify that intent applies to icon too (palantir#3978)

* [core] fix(InputGroup): right element padding adjusting on update (palantir#3973)

* [select] feat(Suggest): sync activeItem with selectedItem on popover close (palantir#3934)

* Publish

 - @blueprintjs/core@3.24.0
 - @blueprintjs/docs-app@3.24.0
 - @blueprintjs/icons@3.14.0
 - @blueprintjs/select@3.12.0

* [datetime] fix(DateRange): values are possibly null, not undefi… (palantir#3983)

fixes palantir#3970

* [core] feat(NumericInput): supply input element to onValueChange (palantir#3982)

* [core] feat(NumericInput): supply input element in onValueChange callback

* small refactor, use optional chaining to invoke callback

* fix lint

* fix more tests

* fix lint, remove describe.only

* [eslint-config] docs: add README (palantir#3985)

* [docs-app] feat(BreadcrumbsExample): render current as input (palantir#3986)

* [core] feat(TagInput): handle delete to remove items (palantir#3993)

Allows users to press `DELETE` on their keyboards to delete
an item from `<TagInput />`, which in turn is used by the
`Select` family of components.

Handling `DELETE` to remove item mimics the way `DELETE` works
in a text editor, where an user can delete from the beginning
of the line forward. Reaching the end of the line, in our
case passing the last selected item in `<TagInput />` will stop
deleting. Moving the selection to the first item and deleting
from that point onwards repeatedly will delete all the selected
items.

* [core] fix(Button): remove invalid HTML attr (palantir#3998)

update INVALID_PROPS list used by removeNonHTMLProps() utility fn

* [datetime] docs: improved localization code example (palantir#4003)

* chore(deps): bump acorn from 5.7.3 to 5.7.4 (palantir#4011)

Bumps [acorn](https://github.com/acornjs/acorn) from 5.7.3 to 5.7.4.
- [Release notes](https://github.com/acornjs/acorn/releases)
- [Commits](acornjs/acorn@5.7.3...5.7.4)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* [datetime] feat(DatePicker): add support for dayPickerProps.renderDay (palantir#4012)

* docs(README): update code sandbox link

Co-authored-by: Sebastian Brückner <mail@invlid.com>
Co-authored-by: Ed Hinchliffe <ed@pixelnebula.com>
Co-authored-by: Chris Lewis <cmslewis@gmail.com>
Co-authored-by: Gilad Gray <ggray@palantir.com>
Co-authored-by: Gilad Gray <giladgray@gmail.com>
Co-authored-by: yixunx <yixunx@gmail.com>
Co-authored-by: Jeff Lau <jlau@uselesspickles.com>
Co-authored-by: Gianfrancø Palumbo <gianpaj@users.noreply.github.com>
Co-authored-by: Philip Harrison <philip@mailharrison.com>
Co-authored-by: Grey Baker <greysteil@gmail.com>
Co-authored-by: Mark Sinapilo <markdhel@users.noreply.github.com>
Co-authored-by: mohanaravind <mohanaravind@gmail.com>
Co-authored-by: Piotr Adam Kwiatkowski <contact@piotrkwiatkowski.co.uk>
Co-authored-by: Leah Anderson <leah.a.anderson@gmail.com>
Co-authored-by: Isabel Muñoz <teanocrata@gmail.com>
Co-authored-by: Endi Modric <endi.modric@outlook.com>
Co-authored-by: MGHawes <hawes.info@gmail.com>
Co-authored-by: Marvin Sum <831708+marvinsum@users.noreply.github.com>
Co-authored-by: Phil Chen <c.phillip91@gmail.com>
Co-authored-by: Yury Shevchenko <n1313@users.noreply.github.com>
Co-authored-by: Shuyang Li <shuyang.li.95@gmail.com>
Co-authored-by: Jacek Jagiełło <jacekjagiello47@gmail.com>
Co-authored-by: Acko <spasic.acko.95@gmail.com>
Co-authored-by: Adi Dahiya <adi.dahiya14@gmail.com>
Co-authored-by: Adi Dahiya <adahiya@palantir.com>
Co-authored-by: Gabe Boning <gboning@gmail.com>
Co-authored-by: Stephen Kennedy <stephenjameskennedy@gmail.com>
Co-authored-by: jamison judge <jj@jamisonjudge.com>
Co-authored-by: wangxiaolei <fatelei@gmail.com>
Co-authored-by: Matt Conway <mattconway55@gmail.com>
Co-authored-by: Thomas Rich <tnrich@teselagen.com>
Co-authored-by: Paul Okuda <paulyokuda@gmail.com>
Co-authored-by: jroitgrund <jroitgrund@gmail.com>
Co-authored-by: Nick Zelei <nickzelei@gmail.com>
Co-authored-by: peachfuzz <32380679+peachfuzz@users.noreply.github.com>
Co-authored-by: Christopher Yu <cyu06@hotmail.com>
Co-authored-by: Gertjan van Oosten <gertjan@west.nl>
Co-authored-by: Bala <bala_krishna@outlook.com>
Co-authored-by: James Greenleaf <james@greenle.af>
Co-authored-by: David <david.lobosco@uprightlabs.com>
Co-authored-by: Rhys Brett-Bowen <rhysbrettbowen@gmail.com>
Co-authored-by: Chris Lott <chrisnlott@gmail.com>
Co-authored-by: alecf <alecf@flett.org>
Co-authored-by: n1xx1 <simo.sc22@gmail.com>
Co-authored-by: Sebastian Brückner <sbrueckner@palantir.com>
Co-authored-by: Mac Lockard <mlockard@palantir.com>
Co-authored-by: ericjeney <me@ericjeney.com>
Co-authored-by: Shovon Hasan <im.shovonhasan@gmail.com>
Co-authored-by: Tanmoy Bhowmik <tanmoy.openroot@gmail.com>
Co-authored-by: Benjamin Lee <leebyp@gmail.com>
Co-authored-by: Veda <pal.veda.deepta@gmail.com>
Co-authored-by: Jeremy Paterson <jaydpaterson@gmail.com>
Co-authored-by: Mihail Novikov <thepocp@gmail.com>
Co-authored-by: 李逸飛 <45546645+li-yifei@users.noreply.github.com>
Co-authored-by: Vadzim <v@vadzim.info>
Co-authored-by: Nathan Hinish <nathan.hinish@gmail.com>
Co-authored-by: doanguyen <dungnv2410@gmail.com>
Co-authored-by: Daniel Saewitz <switz213@gmail.com>
Co-authored-by: Garrett B <garrettgsb@gmail.com>
Co-authored-by: Thibault V <8404502+thibaultvanluchene@users.noreply.github.com>
Co-authored-by: Darren Zhao <darryqueen@berkeley.edu>
Co-authored-by: Adam Storr <155064+adamstorr@users.noreply.github.com>
Co-authored-by: Lei Ferretti <lei.ferretti@oaknorth.ai>
Co-authored-by: Tobias Lengsholz <tobias.lengsholz@invision.de>
Co-authored-by: trevor <tmehard@gmail.com>
Co-authored-by: Pep Rodeja <pep@rodeja.me>
Co-authored-by: Caleb Angelino <belac9615@users.noreply.github.com>
Co-authored-by: Adam Storr <adamstorr@gmail.com>
Co-authored-by: jamesgiu <james.giuffrida@gmail.com>
Co-authored-by: Max Bucknell <me@maxbucknell.com>
Co-authored-by: Jonathan Christopher <nathanchrs@users.noreply.github.com>
Co-authored-by: Ryan Hermstein <rlhermstein@yahoo.com>
Co-authored-by: Chu-Ya Chia <chuyachia@gmail.com>
Co-authored-by: Bill Dwyer <bdwyer@palantir.com>
Co-authored-by: Miklós András Danka <danka.miklos@gmail.com>
Co-authored-by: Stephanie Yu <stephaniey@palantir.com>
Co-authored-by: Meike <meike@grewing.eu>
Co-authored-by: J Paterson <contact@jpatersondev.com>
Co-authored-by: Denis Sokolov <denis@sokolov.cc>
Co-authored-by: Igor Lysak <igorlysak@agilestacks.com>
Co-authored-by: John Wiseheart <johnwiseheart@gmail.com>
Co-authored-by: Boaz Rymland <boazrymland@users.noreply.github.com>
Co-authored-by: Johnny Goodnow <jgoodnow@fastmail.com>
Co-authored-by: David Esteves <estevesd@users.noreply.github.com>
Co-authored-by: John Wiseheart <jwiseheart@palantir.com>
Co-authored-by: Valentine Nuikin <zwerg44@gmail.com>
Co-authored-by: Radosław Miernik <radekmie@gmail.com>
Co-authored-by: Charles Perinet <charles.perinet@gmail.com>
Co-authored-by: Spencer Sutton <spencersutton@users.noreply.github.com>
Co-authored-by: Rootul Patel <rootulp@gmail.com>
Co-authored-by: lexistein <61256233+lexistein@users.noreply.github.com>
Co-authored-by: Trevor Mehard <trevor.mehard@crunchydata.com>
Co-authored-by: Leon Coto <grancalavera@users.noreply.github.com>
Co-authored-by: Lumyo <thib.bouillon@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Malik Bagwala <m.bagwala@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants