UNPKG

@kitten-science/kitten-scientists

Version:

Add-on for the wonderful incremental browser game: https://kittensgame.com/web/

46 lines 1.94 kB
import stylesButton from "./Button.module.css"; import { LimitedButton } from "./buttons/LimitedButton.js"; import { MaxButton } from "./buttons/MaxButton.js"; import { TriggerButton } from "./buttons/TriggerButton.js"; import { Container } from "./Container.js"; import stylesLabelListItem from "./LabelListItem.module.css"; import stylesListItem from "./ListItem.module.css"; import { SettingListItem } from "./SettingListItem.js"; export class WorkshopCraftListItem extends SettingListItem { limitedButton; maxButton; triggerButton; constructor(parent, setting, locale, label, options) { super(parent, setting, label, options); this.limitedButton = new LimitedButton(parent, setting, { ...options, classes: [stylesListItem.headAction], }); this.maxButton = new MaxButton(parent, setting, { alignment: "right", border: false, classes: [stylesButton.headAction], onClick: () => options.onSetMax.call(this), onRefresh: options?.onRefreshMax ? () => options.onRefreshMax?.call(this) : undefined, }); this.triggerButton = new TriggerButton(parent, setting, locale, { border: false, classes: [stylesButton.lastHeadAction], onClick: async () => { await options.onSetTrigger.call(this); }, onRefresh: options?.onRefreshTrigger ? () => options.onRefreshTrigger?.call(this) : undefined, renderLabel: options?.renderLabelTrigger ?? true, }); this.addChildrenHead([ new Container(parent, { classes: [stylesLabelListItem.fillSpace] }), this.limitedButton, this.maxButton, this.triggerButton, ]); } toString() { return `[${WorkshopCraftListItem.name}#${this.componentId}]`; } } //# sourceMappingURL=WorkshopCraftListItem.js.map