@assembly-js/design-system 3.1.12 → 3.1.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/dist/esm/components/Button/Base.js +2 -1
  2. package/dist/esm/components/UserCompanySelector/SelectedValueChip.js +5 -1
  3. package/dist/esm/components/UserCompanySelector/UserCompanySelector.js +32 -44
  4. package/dist/esm/components/UserCompanySelector/__tests__/getClassNames.test.js +81 -0
  5. package/dist/esm/components/UserCompanySelector/__tests__/getOptionRelevanceScore.test.js +115 -0
  6. package/dist/esm/components/UserCompanySelector/data.js +17 -15
  7. package/dist/esm/components/UserCompanySelector/getClassNames.js +44 -0
  8. package/dist/esm/components/UserCompanySelector/getOptionRelevanceScore.js +33 -0
  9. package/dist/esm/types/components/Button/Base.d.ts +1 -1
  10. package/dist/esm/types/components/Button/Button.stories.d.ts +1 -0
  11. package/dist/esm/types/components/UserCompanySelector/UserCompanySelector.stories.d.ts +2 -0
  12. package/dist/esm/types/components/UserCompanySelector/__tests__/getClassNames.test.d.ts +1 -0
  13. package/dist/esm/types/components/UserCompanySelector/__tests__/getOptionRelevanceScore.test.d.ts +1 -0
  14. package/dist/esm/types/components/UserCompanySelector/getClassNames.d.ts +11 -0
  15. package/dist/esm/types/components/UserCompanySelector/getOptionRelevanceScore.d.ts +14 -0
  16. package/dist/esm/types/components/UserCompanySelector/types.d.ts +10 -0
  17. package/dist/esm/types/index.d.ts +1 -1
  18. package/dist/esm/types/tsconfig.tsbuildinfo +1 -1
  19. package/dist/styles/main.css +1 -1
  20. package/dist/types/components/Button/Base.d.ts +1 -1
  21. package/dist/types/components/Button/Button.stories.d.ts +1 -0
  22. package/dist/types/components/UserCompanySelector/UserCompanySelector.stories.d.ts +2 -0
  23. package/dist/types/components/UserCompanySelector/__tests__/getClassNames.test.d.ts +1 -0
  24. package/dist/types/components/UserCompanySelector/__tests__/getOptionRelevanceScore.test.d.ts +1 -0
  25. package/dist/types/components/UserCompanySelector/getClassNames.d.ts +11 -0
  26. package/dist/types/components/UserCompanySelector/getOptionRelevanceScore.d.ts +14 -0
  27. package/dist/types/components/UserCompanySelector/types.d.ts +10 -0
  28. package/dist/types/index.d.ts +1 -1
  29. package/dist/types/tsconfig.tsbuildinfo +1 -1
  30. package/dist/umd/components/Button/Base.js +2 -1
  31. package/dist/umd/components/UserCompanySelector/SelectedValueChip.js +5 -1
  32. package/dist/umd/components/UserCompanySelector/UserCompanySelector.js +34 -48
  33. package/dist/umd/components/UserCompanySelector/__tests__/getClassNames.test.js +96 -0
  34. package/dist/umd/components/UserCompanySelector/__tests__/getOptionRelevanceScore.test.js +130 -0
  35. package/dist/umd/components/UserCompanySelector/data.js +17 -15
  36. package/dist/umd/components/UserCompanySelector/getClassNames.js +64 -0
  37. package/dist/umd/components/UserCompanySelector/getOptionRelevanceScore.js +53 -0
  38. package/dist/umd/types/components/Button/Base.d.ts +1 -1
  39. package/dist/umd/types/components/Button/Button.stories.d.ts +1 -0
  40. package/dist/umd/types/components/UserCompanySelector/UserCompanySelector.stories.d.ts +2 -0
  41. package/dist/umd/types/components/UserCompanySelector/__tests__/getClassNames.test.d.ts +1 -0
  42. package/dist/umd/types/components/UserCompanySelector/__tests__/getOptionRelevanceScore.test.d.ts +1 -0
  43. package/dist/umd/types/components/UserCompanySelector/getClassNames.d.ts +11 -0
  44. package/dist/umd/types/components/UserCompanySelector/getOptionRelevanceScore.d.ts +14 -0
  45. package/dist/umd/types/components/UserCompanySelector/types.d.ts +10 -0
  46. package/dist/umd/types/index.d.ts +1 -1
  47. package/dist/umd/types/tsconfig.tsbuildinfo +1 -1
  48. package/package.json +1 -1
@@ -17,3 +17,5 @@ export declare const WithCustomLabels: Story;
17
17
  export declare const WithListHeading: Story;
18
18
  export declare const WithAvatarFallbackColor: Story;
19
19
  export declare const SelectClientInManyCompanies: Story;
20
+ export declare const UnifiedVariant: Story;
21
+ export declare const UnifiedVariantWithPlaceholder: Story;
@@ -0,0 +1,11 @@
1
+ export type UserCompanySelectorVariant = 'default' | 'unified';
2
+ type ClassNamesResult = {
3
+ container?: () => string;
4
+ control: () => string;
5
+ menuList: () => string;
6
+ input: () => string;
7
+ placeholder: () => string;
8
+ valueContainer: () => string;
9
+ };
10
+ export declare const getClassNames: (variant: UserCompanySelectorVariant) => ClassNamesResult;
11
+ export {};
@@ -0,0 +1,14 @@
1
+ import type { UserCompanySelectorOption } from '../../components/UserCompanySelector/types';
2
+ /**
3
+ * Returns a relevance score for an option based on the input value.
4
+ * Higher scores indicate more relevant matches (direct name matches > company name matches).
5
+ *
6
+ * This is a pure function so it can be unit-tested in isolation.
7
+ *
8
+ * @param option - the option to score
9
+ * @param inputValue - the current search input
10
+ * @param companiesMap - lookup of company value -> company option (used to match clients by company name)
11
+ * @param ignoreCompanies - when true, company options are excluded from results entirely
12
+ * @returns 2 for direct name match, 1 for company name match only, 0 for no match
13
+ */
14
+ export declare const getOptionRelevanceScore: (option: UserCompanySelectorOption, inputValue: string, companiesMap: Map<string, UserCompanySelectorOption>, ignoreCompanies?: boolean) => number;
@@ -1,3 +1,5 @@
1
+ import type { UserCompanySelectorVariant } from './getClassNames';
2
+ export type { UserCompanySelectorVariant };
1
3
  export type UserCompanySelectorObjectType = 'company' | 'internalUser' | 'client';
2
4
  export type UserCompanySelectorOption = Prettify<{
3
5
  value: string;
@@ -42,6 +44,14 @@ export type UserCompanySelectorProps = {
42
44
  };
43
45
  listHeading?: string;
44
46
  listClassName?: string;
47
+ /**
48
+ * Controls the visual layout of the selector.
49
+ * - `'default'`: search input and options list are separate bordered boxes (current behavior).
50
+ * - `'unified'`: a single container wraps both with a divider line between them.
51
+ * @remarks When using `variant="unified"`, do not pass a `menu` key via the `styles` prop —
52
+ * it will override the `position: static` required for the inline layout.
53
+ */
54
+ variant?: UserCompanySelectorVariant;
45
55
  };
46
56
  /**
47
57
  * @deprecated Use Option instead
@@ -31,4 +31,4 @@ export * from './components/Callout/Callout';
31
31
  export * from './components/Toolbar';
32
32
  export * from './components/IconPicker';
33
33
  export * from './components/UserCompanySelector/UserCompanySelector';
34
- export type { UserCompanySelectorProps, UserCompanySelectorOption, } from './components/UserCompanySelector/types';
34
+ export type { UserCompanySelectorProps, UserCompanySelectorOption, UserCompanySelectorVariant, } from './components/UserCompanySelector/types';