UNPKG

one

Version:

One is a React framework for web, iOS, and Android apps.

144 lines (141 loc) • 4.77 kB
import { jsx } from "react/jsx-runtime"; import { MenuAction, ToolbarHost, ToolbarItem } from "../../platform/index.native.js"; import { toolbarChildrenToBottomData } from "./stackToolbarDescriptors.native.js"; function BottomButtonElement(param) { var { data } = param; return /* @__PURE__ */ jsx(ToolbarItem, { identifier: data.identifier, title: data.title, systemImageName: data.systemImageName, xcassetName: data.xcassetName, image: data.image, imageRenderingMode: data.imageRenderingMode, tintColor: data.tintColor, barButtonItemStyle: data.barButtonItemStyle, sharesBackground: data.sharesBackground, hidesSharedBackground: data.hidesSharedBackground, hidden: data.hidden, selected: data.selected, disabled: data.disabled, badgeConfiguration: data.badgeConfiguration, titleStyle: data.titleStyle, accessibilityLabel: data.accessibilityLabel, accessibilityHint: data.accessibilityHint, onSelected: data.handler }); } function BottomMenuActionElement(param) { var { data } = param; return /* @__PURE__ */ jsx(MenuAction, { identifier: data.identifier, title: data.title, icon: data.icon, xcassetName: data.xcassetName, image: data.image, imageRenderingMode: data.imageRenderingMode, disabled: data.disabled, destructive: data.destructive, hidden: data.hidden, isOn: data.isOn, keepPresented: data.keepPresented, discoverabilityLabel: data.discoverabilityLabel, subtitle: data.subtitle, accessibilityLabel: data.accessibilityLabel, accessibilityHint: data.accessibilityHint, onSelected: data.handler }); } function BottomMenuChild(param) { var { data } = param; if (data.kind === "submenu") { return /* @__PURE__ */ jsx(BottomSubmenuElement, { data }); } return /* @__PURE__ */ jsx(BottomMenuActionElement, { data }); } function BottomSubmenuElement(param) { var { data } = param; return /* @__PURE__ */ jsx(MenuAction, { identifier: data.identifier, title: data.title, icon: data.icon, xcassetName: data.xcassetName, image: data.image, imageRenderingMode: data.imageRenderingMode, destructive: data.destructive, hidden: data.hidden, displayInline: data.inline, displayAsPalette: data.palette, accessibilityLabel: data.accessibilityLabel, accessibilityHint: data.accessibilityHint, children: data.children.map(function(child) { return /* @__PURE__ */ jsx(BottomMenuChild, { data: child }, child.identifier); }) }); } function BottomMenuElement(param) { var { data } = param; return /* @__PURE__ */ jsx(MenuAction, { identifier: data.identifier, title: data.title, label: data.label, icon: data.systemImageName, xcassetName: data.xcassetName, image: data.image, imageRenderingMode: data.imageRenderingMode, tintColor: data.tintColor, barButtonItemStyle: data.barButtonItemStyle, sharesBackground: data.sharesBackground, hidesSharedBackground: data.hidesSharedBackground, disabled: data.disabled, destructive: data.destructive, hidden: data.hidden, displayInline: data.inline, displayAsPalette: data.palette, preferredElementSize: data.elementSize, accessibilityLabel: data.accessibilityLabel, accessibilityHint: data.accessibilityHint, children: data.children.map(function(child) { return /* @__PURE__ */ jsx(BottomMenuChild, { data: child }, child.identifier); }) }); } function BottomSpacerElement(param) { var { data } = param; return /* @__PURE__ */ jsx(ToolbarItem, { identifier: data.identifier, type: data.width === void 0 ? "fluidSpacer" : "fixedSpacer", width: data.width, sharesBackground: data.sharesBackground, hidden: data.hidden }); } function BottomSearchBarSlotElement(param) { var { data } = param; return /* @__PURE__ */ jsx(ToolbarItem, { identifier: data.identifier, type: "searchBar", sharesBackground: data.sharesBackground, hidesSharedBackground: data.hidesSharedBackground, hidden: data.hidden }); } function BottomToolbarHost(param) { var { children, hidden, animated = true } = param; var data = toolbarChildrenToBottomData(children); if (!data.length) return null; return /* @__PURE__ */ jsx(ToolbarHost, { hidden, animated, children: data.map(function(entry) { switch (entry.kind) { case "button": return /* @__PURE__ */ jsx(BottomButtonElement, { data: entry }, entry.identifier); case "menu": return /* @__PURE__ */ jsx(BottomMenuElement, { data: entry }, entry.identifier); case "spacer": return /* @__PURE__ */ jsx(BottomSpacerElement, { data: entry }, entry.identifier); case "searchBar": return /* @__PURE__ */ jsx(BottomSearchBarSlotElement, { data: entry }, entry.identifier); default: return null; } }) }); } export { BottomToolbarHost }; //# sourceMappingURL=StackToolbarBottomHost.native.js.map