{"version":3,"file":"Picker.cjs","names":["_styled","_interopRequireDefault","require","_react","_OdysseyDesignTokensContext","_Typography","_ComposablePicker","_jsxRuntime","e","__esModule","default","StyledOption","exports","styled","li","hasAdornment","display","OptionLabelContainer","shouldForwardProp","prop","p","margin","OptionDescription","odysseyDesignTokens","Spacing1","color","TypographyColorSubordinate","OptionDetails","gap","Spacing3","marginBlockStart","Spacing2","OptionDetail","alignItems","svg","width","Spacing4","HueNeutral400","Option","children","muiProps","key","props","createElement","OptionMetadataComponent","metaData","jsx","map","meta","index","detailText","icon","jsxs","OptionDescriptionComponent","description","OptionLabelOnlyComponent","option","label","Paragraph","OptionLabelDescription","Heading6","component","OptionLabelDescriptionMetadata","Picker","ariaDescribedBy","defaultValue","emptyOptionsText","errorMessage","errorMessageList","filterOptions","getIsOptionEqualToValue","groupOptionsBy","hasMultipleChoices","id","idOverride","inputValue","isCustomValueAllowed","isDisabled","isFullWidth","isLoading","isOptional","isReadOnly","isVirtualized","isVirtualizedProp","hint","HintLinkComponent","name","nameOverride","onBlur","onChange","onChangeProp","onInputChange","onInputChangeProp","onFocus","options","value","testId","translate","useOdysseyDesignTokens","customOptionRender","useCallback","hasDescription","hasMetadata","isLabelOnly","Fragment","ComposablePicker","renderOption","MemoizedPicker","memo","displayName"],"sources":["../../../../src/labs/OdysseyPickers/Picker.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport { AutocompleteProps as MuiAutocompleteProps } from \"@mui/material\";\nimport {\n  FC,\n  Fragment,\n  memo,\n  PropsWithChildren,\n  ReactElement,\n  ReactNode,\n  useCallback,\n} from \"react\";\n\nimport {\n  DesignTokens,\n  useOdysseyDesignTokens,\n} from \"../../OdysseyDesignTokensContext.js\";\nimport { Heading6, Paragraph } from \"../../Typography.js\";\nimport {\n  type BasePickerProps,\n  type BaseRenderOptionProps,\n  ComposablePicker,\n} from \"./ComposablePicker.js\";\n\nexport const StyledOption = styled.li<{ hasAdornment?: boolean }>(\n  ({ hasAdornment }) => ({\n    ...(!hasAdornment && {\n      display: \"block !important\",\n    }),\n  }),\n);\n\nexport const OptionLabelContainer = styled(\"div\", {\n  shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{ odysseyDesignTokens: DesignTokens }>(() => ({\n  p: {\n    margin: 0,\n  },\n}));\n\nexport const OptionDescription = styled(\"p\", {\n  shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{ odysseyDesignTokens: DesignTokens }>(({ odysseyDesignTokens }) => ({\n  margin: `${odysseyDesignTokens.Spacing1} 0 0 !important`,\n  color: odysseyDesignTokens.TypographyColorSubordinate,\n}));\n\nexport const OptionDetails = styled(\"div\", {\n  shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{ odysseyDesignTokens: DesignTokens }>(({ odysseyDesignTokens }) => ({\n  display: \"flex\",\n  gap: odysseyDesignTokens.Spacing3,\n  marginBlockStart: odysseyDesignTokens.Spacing2,\n}));\n\nexport const OptionDetail = styled(\"div\", {\n  shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{ odysseyDesignTokens: DesignTokens }>(({ odysseyDesignTokens }) => ({\n  display: \"flex\",\n  alignItems: \"center\",\n  gap: odysseyDesignTokens.Spacing1,\n\n  svg: {\n    width: odysseyDesignTokens.Spacing4,\n    color: odysseyDesignTokens.HueNeutral400,\n  },\n}));\n\nexport type BaseOptionProps = {\n  muiProps: BaseRenderOptionProps;\n  odysseyDesignTokens: DesignTokens;\n};\n\ntype OptionComponentProps = {\n  hasAdornment?: boolean;\n  muiProps: BaseOptionProps[\"muiProps\"];\n};\n\nexport const Option = ({\n  children,\n  hasAdornment = false,\n  muiProps,\n}: PropsWithChildren<OptionComponentProps>) => {\n  const { key, ...props } = muiProps;\n  return (\n    <StyledOption {...props} hasAdornment={hasAdornment} key={key}>\n      {children}\n    </StyledOption>\n  );\n};\n\nexport const OptionMetadataComponent = ({\n  metaData,\n  odysseyDesignTokens,\n}: {\n  metaData: OptionMetadata[];\n  odysseyDesignTokens: DesignTokens;\n}) => {\n  return (\n    <OptionDetails odysseyDesignTokens={odysseyDesignTokens}>\n      {metaData.map((meta: OptionMetadata, index: number) => {\n        const { detailText, icon } = meta;\n        return (\n          <OptionDetail\n            key={`${detailText}-${index}`}\n            odysseyDesignTokens={odysseyDesignTokens}\n          >\n            {icon}\n            {detailText}\n          </OptionDetail>\n        );\n      })}\n    </OptionDetails>\n  );\n};\n\nexport const OptionDescriptionComponent = ({\n  description,\n  odysseyDesignTokens,\n}: {\n  description?: LabelDescription[\"description\"];\n  odysseyDesignTokens: DesignTokens;\n}) => {\n  return (\n    description && (\n      <OptionDescription odysseyDesignTokens={odysseyDesignTokens}>\n        {description}\n      </OptionDescription>\n    )\n  );\n};\n\nexport type OptionProps<OptionType> = {\n  option: OptionType;\n};\n\nexport const OptionLabelOnlyComponent = <OptionType extends OptionLabelOnly>({\n  muiProps,\n  odysseyDesignTokens,\n  option,\n}: BaseOptionProps & OptionProps<OptionType>) => {\n  const { label } = option;\n\n  return (\n    <Option muiProps={muiProps}>\n      <OptionLabelContainer odysseyDesignTokens={odysseyDesignTokens}>\n        <Paragraph>{label}</Paragraph>\n      </OptionLabelContainer>\n    </Option>\n  );\n};\n\nconst OptionLabelDescription = <OptionType extends LabelDescription>({\n  muiProps,\n  odysseyDesignTokens,\n  option,\n}: BaseOptionProps & OptionProps<OptionType>) => {\n  const { description, label } = option;\n\n  return (\n    <Option muiProps={muiProps}>\n      <OptionLabelContainer odysseyDesignTokens={odysseyDesignTokens}>\n        <Heading6 component=\"p\">{label}</Heading6>\n        <OptionDescriptionComponent\n          description={description}\n          odysseyDesignTokens={odysseyDesignTokens}\n        />\n      </OptionLabelContainer>\n    </Option>\n  );\n};\n\nconst OptionLabelDescriptionMetadata = <\n  OptionType extends LabelDescriptionMetadata,\n>({\n  muiProps,\n  odysseyDesignTokens,\n  option,\n}: BaseOptionProps & OptionProps<OptionType>) => {\n  const { description, label, metaData } = option;\n\n  return (\n    <Option muiProps={muiProps}>\n      <OptionLabelContainer odysseyDesignTokens={odysseyDesignTokens}>\n        <Heading6 component=\"p\">{label}</Heading6>\n        <OptionDescriptionComponent\n          description={description}\n          odysseyDesignTokens={odysseyDesignTokens}\n        />\n      </OptionLabelContainer>\n      <OptionMetadataComponent\n        metaData={metaData}\n        odysseyDesignTokens={odysseyDesignTokens}\n      />\n    </Option>\n  );\n};\n\nexport type OptionMetadata = {\n  detailText: string | number;\n  icon: ReactElement;\n};\n\nexport type OptionGroupType = { group?: string };\nexport type OptionValueType = { value: string | number };\nexport type OptionLabelType = { label: string };\nexport type BaseOptionType = OptionValueType &\n  OptionGroupType &\n  OptionLabelType;\nexport type Metadata = {\n  metaData: OptionMetadata[];\n};\n\nexport type OptionLabelOnly = BaseOptionType;\nexport type LabelDescription = BaseOptionType & { description?: string };\nexport type LabelDescriptionMetadata = LabelDescription & Metadata;\n\nexport type PickerProps<\n  OptionType extends\n    | OptionLabelOnly\n    | LabelDescription\n    | LabelDescriptionMetadata,\n  HasMultipleChoices extends boolean | undefined,\n  IsCustomValueAllowed extends boolean | undefined,\n> = Omit<\n  BasePickerProps<OptionType, HasMultipleChoices, IsCustomValueAllowed>,\n  \"adornmentSize\" | \"getOptionLabel\" | \"noOptionsText\"\n>;\n\nexport type PickerComponentType = {\n  <\n    OptionType extends OptionLabelOnly,\n    HasMultipleChoices extends boolean | undefined,\n    IsCustomValueAllowed extends boolean | undefined,\n  >(\n    props: PickerProps<OptionType, HasMultipleChoices, IsCustomValueAllowed>,\n  ): ReactNode;\n  <\n    OptionType extends LabelDescription,\n    HasMultipleChoices extends boolean | undefined,\n    IsCustomValueAllowed extends boolean | undefined,\n  >(\n    props: PickerProps<OptionType, HasMultipleChoices, IsCustomValueAllowed>,\n  ): ReactNode;\n  <\n    OptionType extends LabelDescriptionMetadata,\n    HasMultipleChoices extends boolean | undefined,\n    IsCustomValueAllowed extends boolean | undefined,\n  >(\n    props: PickerProps<OptionType, HasMultipleChoices, IsCustomValueAllowed>,\n  ): ReactNode;\n};\n\nconst Picker: PickerComponentType = <\n  OptionType extends\n    | OptionLabelOnly\n    | LabelDescription\n    | LabelDescriptionMetadata,\n  HasMultipleChoices extends boolean | undefined,\n  IsCustomValueAllowed extends boolean | undefined,\n>({\n  ariaDescribedBy,\n  defaultValue,\n  emptyOptionsText,\n  errorMessage,\n  errorMessageList,\n  filterOptions,\n  getIsOptionEqualToValue,\n  groupOptionsBy,\n  hasMultipleChoices,\n  id: idOverride,\n  inputValue,\n  isCustomValueAllowed,\n  isDisabled,\n  isFullWidth = false,\n  isLoading,\n  isOptional = false,\n  isReadOnly,\n  isVirtualized: isVirtualizedProp = false,\n  hint,\n  HintLinkComponent,\n  label,\n  name: nameOverride,\n  onBlur,\n  onChange: onChangeProp,\n  onInputChange: onInputChangeProp,\n  onFocus,\n  options,\n  value,\n  testId,\n  translate,\n}: PickerProps<OptionType, HasMultipleChoices, IsCustomValueAllowed>) => {\n  const odysseyDesignTokens = useOdysseyDesignTokens();\n\n  const customOptionRender = useCallback<\n    NonNullable<\n      MuiAutocompleteProps<\n        OptionType,\n        HasMultipleChoices,\n        undefined,\n        IsCustomValueAllowed\n      >[\"renderOption\"]\n    >\n  >(\n    (muiProps, option) => {\n      const hasDescription = \"description\" in option && option.description;\n      const hasMetadata = \"metaData\" in option && option.metaData;\n      const isLabelOnly = !hasMetadata && !hasDescription;\n\n      return (\n        <Fragment key={option.value}>\n          {isLabelOnly ? (\n            <OptionLabelOnlyComponent\n              muiProps={muiProps}\n              odysseyDesignTokens={odysseyDesignTokens}\n              option={option}\n            />\n          ) : hasMetadata ? (\n            <OptionLabelDescriptionMetadata\n              muiProps={muiProps}\n              odysseyDesignTokens={odysseyDesignTokens}\n              option={option}\n            />\n          ) : (\n            <OptionLabelDescription\n              muiProps={muiProps}\n              odysseyDesignTokens={odysseyDesignTokens}\n              option={option}\n            />\n          )}\n        </Fragment>\n      );\n    },\n    [odysseyDesignTokens],\n  );\n\n  return (\n    <ComposablePicker<OptionType, HasMultipleChoices, IsCustomValueAllowed>\n      ariaDescribedBy={ariaDescribedBy}\n      defaultValue={defaultValue}\n      emptyOptionsText={emptyOptionsText}\n      errorMessage={errorMessage}\n      errorMessageList={errorMessageList}\n      filterOptions={filterOptions}\n      getIsOptionEqualToValue={getIsOptionEqualToValue}\n      groupOptionsBy={groupOptionsBy}\n      hasMultipleChoices={hasMultipleChoices}\n      hint={hint}\n      HintLinkComponent={HintLinkComponent}\n      id={idOverride}\n      inputValue={inputValue}\n      isCustomValueAllowed={isCustomValueAllowed}\n      isDisabled={isDisabled}\n      isFullWidth={isFullWidth}\n      isLoading={isLoading}\n      isOptional={isOptional}\n      isReadOnly={isReadOnly}\n      isVirtualized={isVirtualizedProp}\n      label={label}\n      name={nameOverride}\n      onBlur={onBlur}\n      onChange={onChangeProp}\n      onFocus={onFocus}\n      onInputChange={onInputChangeProp}\n      options={options}\n      renderOption={customOptionRender}\n      testId={testId}\n      translate={translate}\n      value={value}\n    />\n  );\n};\n\nconst MemoizedPicker = memo(Picker) as PickerComponentType &\n  Pick<FC, \"displayName\">;\nMemoizedPicker.displayName = \"Picker\";\n\nexport { MemoizedPicker as Picker };\n"],"mappings":"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","ignoreList":[]}