chore(packages): move the packages to root

This commit is contained in:
Brandy Carney
2018-03-12 16:02:25 -04:00
parent 097f1a2cd3
commit d37623a2ca
1255 changed files with 38 additions and 38 deletions

View File

@ -0,0 +1,79 @@
import { Component, Prop } from '@stencil/core';
@Component({
tag: 'ion-item-option',
host: {
theme: 'item-option'
},
styleUrls: {
ios: 'item-option.ios.scss',
md: 'item-option.md.scss'
}
})
export class ItemOption {
/**
* The color to use from your Sass `$colors` map.
* Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`.
* For more information, see [Theming your App](/docs/theming/theming-your-app).
*/
@Prop() color: string;
/**
* The mode determines which platform styles to use.
* Possible values are: `"ios"` or `"md"`.
* For more information, see [Platform Styles](/docs/theming/platform-specific-styles).
*/
@Prop() mode: 'ios' | 'md';
/**
* If true, the user cannot interact with the item option. Defaults to `false`.
*/
@Prop() disabled = false;
/**
* If true, the option will expand to take up the available width and cover any other options. Defaults to `false`.
*/
@Prop() expandable = false;
/**
* Contains a URL or a URL fragment that the hyperlink points to.
* If this property is set, an anchor tag will be rendered.
*/
@Prop() href: string;
clickedOptionButton(ev: Event): boolean {
const el = (ev.target as HTMLElement).closest('ion-item-option');
return !!el;
}
hostData() {
return {
class: {
'item-option-expandable': this.expandable
}
};
}
render() {
const TagType = this.href ? 'a' : 'button';
return (
<TagType
class='item-option-button'
disabled={this.disabled}
href={this.href}
onClick={this.clickedOptionButton.bind(this)}>
<span class='item-option-button-inner'>
<slot name='start'></slot>
<slot name='top'></slot>
<slot name='icon-only'></slot>
<slot></slot>
<slot name='bottom'></slot>
<slot name='end'></slot>
</span>
</TagType>
);
}
}