@fluentui-react-native/experimental-avatar 0.13.0 → 0.13.4

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 (117) hide show
  1. package/CHANGELOG.json +106 -1
  2. package/CHANGELOG.md +39 -2
  3. package/lib/Avatar.d.ts +69 -2
  4. package/lib/Avatar.d.ts.map +1 -1
  5. package/lib/Avatar.js +32 -38
  6. package/lib/Avatar.js.map +1 -1
  7. package/lib/JSAvatar.d.ts +12 -0
  8. package/lib/JSAvatar.d.ts.map +1 -0
  9. package/lib/{Avatar.helpers.d.ts → JSAvatar.helpers.d.ts} +3 -3
  10. package/lib/JSAvatar.helpers.d.ts.map +1 -0
  11. package/lib/{Avatar.helpers.js → JSAvatar.helpers.js} +1 -1
  12. package/lib/JSAvatar.helpers.js.map +1 -0
  13. package/lib/JSAvatar.js +62 -0
  14. package/lib/JSAvatar.js.map +1 -0
  15. package/lib/JSAvatar.styling.d.ts +5 -0
  16. package/lib/JSAvatar.styling.d.ts.map +1 -0
  17. package/lib/{Avatar.styling.js → JSAvatar.styling.js} +35 -43
  18. package/lib/JSAvatar.styling.js.map +1 -0
  19. package/{lib-commonjs/Avatar.types.d.ts → lib/JSAvatar.types.d.ts} +20 -12
  20. package/lib/JSAvatar.types.d.ts.map +1 -0
  21. package/lib/JSAvatar.types.js +2 -0
  22. package/lib/JSAvatar.types.js.map +1 -0
  23. package/lib/JSAvatarTokens.d.ts +5 -0
  24. package/lib/JSAvatarTokens.d.ts.map +1 -0
  25. package/lib/JSAvatarTokens.js +18 -0
  26. package/lib/JSAvatarTokens.js.map +1 -0
  27. package/lib/index.d.ts +2 -1
  28. package/lib/index.d.ts.map +1 -1
  29. package/lib/index.js +2 -1
  30. package/lib/index.js.map +1 -1
  31. package/lib/useAvatar.d.ts +2 -2
  32. package/lib/useAvatar.d.ts.map +1 -1
  33. package/lib/useAvatar.js +3 -3
  34. package/lib/useAvatar.js.map +1 -1
  35. package/lib-commonjs/Avatar.d.ts +69 -2
  36. package/lib-commonjs/Avatar.d.ts.map +1 -1
  37. package/lib-commonjs/Avatar.js +31 -37
  38. package/lib-commonjs/Avatar.js.map +1 -1
  39. package/lib-commonjs/JSAvatar.d.ts +12 -0
  40. package/lib-commonjs/JSAvatar.d.ts.map +1 -0
  41. package/lib-commonjs/{Avatar.helpers.d.ts → JSAvatar.helpers.d.ts} +3 -3
  42. package/lib-commonjs/JSAvatar.helpers.d.ts.map +1 -0
  43. package/lib-commonjs/{Avatar.helpers.js → JSAvatar.helpers.js} +1 -1
  44. package/lib-commonjs/JSAvatar.helpers.js.map +1 -0
  45. package/lib-commonjs/JSAvatar.js +64 -0
  46. package/lib-commonjs/JSAvatar.js.map +1 -0
  47. package/lib-commonjs/JSAvatar.styling.d.ts +5 -0
  48. package/lib-commonjs/JSAvatar.styling.d.ts.map +1 -0
  49. package/lib-commonjs/JSAvatar.styling.js +125 -0
  50. package/lib-commonjs/JSAvatar.styling.js.map +1 -0
  51. package/{lib/Avatar.types.d.ts → lib-commonjs/JSAvatar.types.d.ts} +20 -12
  52. package/lib-commonjs/JSAvatar.types.d.ts.map +1 -0
  53. package/lib-commonjs/{Avatar.types.js → JSAvatar.types.js} +2 -2
  54. package/lib-commonjs/JSAvatar.types.js.map +1 -0
  55. package/lib-commonjs/JSAvatarTokens.d.ts +5 -0
  56. package/lib-commonjs/JSAvatarTokens.d.ts.map +1 -0
  57. package/lib-commonjs/JSAvatarTokens.js +20 -0
  58. package/lib-commonjs/JSAvatarTokens.js.map +1 -0
  59. package/lib-commonjs/index.d.ts +2 -1
  60. package/lib-commonjs/index.d.ts.map +1 -1
  61. package/lib-commonjs/index.js +2 -1
  62. package/lib-commonjs/index.js.map +1 -1
  63. package/lib-commonjs/useAvatar.d.ts +2 -2
  64. package/lib-commonjs/useAvatar.d.ts.map +1 -1
  65. package/lib-commonjs/useAvatar.js +4 -4
  66. package/lib-commonjs/useAvatar.js.map +1 -1
  67. package/package.json +5 -5
  68. package/src/Avatar.tsx +127 -37
  69. package/src/{Avatar.helpers.ts → JSAvatar.helpers.ts} +2 -2
  70. package/src/{Avatar.styling.ts → JSAvatar.styling.ts} +24 -20
  71. package/src/JSAvatar.tsx +56 -0
  72. package/src/{Avatar.types.ts → JSAvatar.types.ts} +20 -11
  73. package/src/{AvatarTokens.ts → JSAvatarTokens.ts} +11 -4
  74. package/src/index.ts +2 -1
  75. package/src/useAvatar.ts +6 -5
  76. package/lib/Avatar.helpers.d.ts.map +0 -1
  77. package/lib/Avatar.helpers.js.map +0 -1
  78. package/lib/Avatar.ios.d.ts +0 -70
  79. package/lib/Avatar.ios.d.ts.map +0 -1
  80. package/lib/Avatar.ios.js +0 -45
  81. package/lib/Avatar.ios.js.map +0 -1
  82. package/lib/Avatar.macos.d.ts +0 -70
  83. package/lib/Avatar.macos.d.ts.map +0 -1
  84. package/lib/Avatar.macos.js +0 -45
  85. package/lib/Avatar.macos.js.map +0 -1
  86. package/lib/Avatar.styling.d.ts +0 -4
  87. package/lib/Avatar.styling.d.ts.map +0 -1
  88. package/lib/Avatar.styling.js.map +0 -1
  89. package/lib/Avatar.types.d.ts.map +0 -1
  90. package/lib/Avatar.types.js +0 -2
  91. package/lib/Avatar.types.js.map +0 -1
  92. package/lib/AvatarTokens.d.ts +0 -5
  93. package/lib/AvatarTokens.d.ts.map +0 -1
  94. package/lib/AvatarTokens.js +0 -11
  95. package/lib/AvatarTokens.js.map +0 -1
  96. package/lib-commonjs/Avatar.helpers.d.ts.map +0 -1
  97. package/lib-commonjs/Avatar.helpers.js.map +0 -1
  98. package/lib-commonjs/Avatar.ios.d.ts +0 -70
  99. package/lib-commonjs/Avatar.ios.d.ts.map +0 -1
  100. package/lib-commonjs/Avatar.ios.js +0 -47
  101. package/lib-commonjs/Avatar.ios.js.map +0 -1
  102. package/lib-commonjs/Avatar.macos.d.ts +0 -70
  103. package/lib-commonjs/Avatar.macos.d.ts.map +0 -1
  104. package/lib-commonjs/Avatar.macos.js +0 -47
  105. package/lib-commonjs/Avatar.macos.js.map +0 -1
  106. package/lib-commonjs/Avatar.styling.d.ts +0 -4
  107. package/lib-commonjs/Avatar.styling.d.ts.map +0 -1
  108. package/lib-commonjs/Avatar.styling.js +0 -133
  109. package/lib-commonjs/Avatar.styling.js.map +0 -1
  110. package/lib-commonjs/Avatar.types.d.ts.map +0 -1
  111. package/lib-commonjs/Avatar.types.js.map +0 -1
  112. package/lib-commonjs/AvatarTokens.d.ts +0 -5
  113. package/lib-commonjs/AvatarTokens.d.ts.map +0 -1
  114. package/lib-commonjs/AvatarTokens.js +0 -13
  115. package/lib-commonjs/AvatarTokens.js.map +0 -1
  116. package/src/Avatar.ios.tsx +0 -134
  117. package/src/Avatar.macos.tsx +0 -134
@@ -1,8 +1,11 @@
1
1
  import type { IViewProps } from '@fluentui-react-native/adapters';
2
2
  import { ImageProps, ViewProps, ImageURISource, TextProps, ColorValue } from 'react-native';
3
- import { IBackgroundColorTokens, IForegroundColorTokens } from '@fluentui-react-native/tokens';
4
- export declare const avatarName = "Avatar";
3
+ import { IBackgroundColorTokens, IForegroundColorTokens, IBorderTokens } from '@fluentui-react-native/tokens';
4
+ export declare const JSAvatarName = "Avatar";
5
5
  export declare type AvatarSize = 'size8' | 'size24' | 'size32' | 'size40' | 'size48' | 'size56' | 'size72' | 'size100' | 'size120';
6
+ export declare type AvatarShape = 'circular' | 'square';
7
+ export declare type AvatarActive = 'active' | 'inactive' | 'unset';
8
+ export declare type AvatarActiveAppearance = 'ring' | 'shadow' | 'glow' | 'ring-shadow' | 'ring-glow';
6
9
  /**
7
10
  * Sets color of the avatar when there is no picture. Uses fluent color names
8
11
  */
@@ -22,12 +25,15 @@ export interface AvatarConfigurableProps {
22
25
  ring?: RingConfig;
23
26
  coinColorFluent?: AvatarColor;
24
27
  }
25
- export interface AvatarProps extends IViewProps, AvatarConfigurableProps {
28
+ export interface JSAvatarProps extends IViewProps, AvatarConfigurableProps {
29
+ active?: AvatarActive;
30
+ activeAppearance?: AvatarActiveAppearance;
26
31
  imageUrl?: string;
27
32
  imageDescription?: string;
28
33
  initials?: string;
29
34
  presence?: AvatarPresence;
30
35
  isOutOfOffice?: boolean;
36
+ shape?: AvatarShape;
31
37
  }
32
38
  export interface AvatarSlotProps {
33
39
  root: ViewProps;
@@ -39,7 +45,7 @@ export interface AvatarSlotProps {
39
45
  glow: ViewProps;
40
46
  }
41
47
  export declare type IconAlignment = 'start' | 'center' | 'end';
42
- export interface AvatarTokens extends IBackgroundColorTokens, IForegroundColorTokens, AvatarConfigurableProps {
48
+ export interface JSAvatarTokens extends IBackgroundColorTokens, IForegroundColorTokens, AvatarConfigurableProps, IBorderTokens {
43
49
  avatarSize?: number;
44
50
  iconSize?: number;
45
51
  iconStrokeWidth?: number;
@@ -48,21 +54,23 @@ export interface AvatarTokens extends IBackgroundColorTokens, IForegroundColorTo
48
54
  horizontalIconAlignment?: IconAlignment;
49
55
  verticalIconAlignment?: IconAlignment;
50
56
  physicalSize?: number;
57
+ circular?: JSAvatarTokens;
58
+ square?: JSAvatarTokens;
51
59
  }
52
- export interface AvatarState {
60
+ export interface JSAvatarState {
53
61
  personaPhotoSource: ImageURISource | undefined;
54
62
  iconSource: ImageURISource | undefined;
55
63
  showRing: boolean;
56
64
  transparentRing: boolean;
57
65
  }
58
66
  export interface AvatarInfo {
59
- props: AvatarProps;
60
- state: AvatarState;
67
+ props: JSAvatarProps;
68
+ state: JSAvatarState;
61
69
  }
62
- export interface AvatarType {
63
- props: AvatarProps;
70
+ export interface JSAvatarType {
71
+ props: JSAvatarProps;
64
72
  slotProps: AvatarSlotProps;
65
- tokens: AvatarTokens;
66
- state: AvatarState;
73
+ tokens: JSAvatarTokens;
74
+ state: JSAvatarState;
67
75
  }
68
- //# sourceMappingURL=Avatar.types.d.ts.map
76
+ //# sourceMappingURL=JSAvatar.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JSAvatar.types.d.ts","sourceRoot":"","sources":["../src/JSAvatar.types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export var JSAvatarName = 'Avatar';
2
+ //# sourceMappingURL=JSAvatar.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JSAvatar.types.js","sourceRoot":"","sources":["../src/JSAvatar.types.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,IAAM,YAAY,GAAG,QAAQ,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { Theme } from '@fluentui-react-native/framework';
2
+ import { TokenSettings } from '@fluentui-react-native/use-styling';
3
+ import { JSAvatarTokens } from '.';
4
+ export declare const defaultJSAvatarTokens: TokenSettings<JSAvatarTokens, Theme>;
5
+ //# sourceMappingURL=JSAvatarTokens.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JSAvatarTokens.d.ts","sourceRoot":"","sources":["../src/JSAvatarTokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,GAAG,CAAC;AAInC,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,cAAc,EAAE,KAAK,CAajD,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { convertCoinColorFluent } from './JSAvatar.helpers';
2
+ import { globalTokens } from '@fluentui-react-native/theme-tokens';
3
+ export var defaultJSAvatarTokens = function () {
4
+ return ({
5
+ horizontalIconAlignment: 'end',
6
+ verticalIconAlignment: 'end',
7
+ color: 'white',
8
+ iconStrokeColor: 'white',
9
+ backgroundColor: convertCoinColorFluent('cornflower'),
10
+ circular: {
11
+ borderRadius: globalTokens.corner.radius.circle,
12
+ },
13
+ square: {
14
+ borderRadius: globalTokens.corner.radius.medium,
15
+ },
16
+ });
17
+ };
18
+ //# sourceMappingURL=JSAvatarTokens.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JSAvatarTokens.js","sourceRoot":"","sources":["../src/JSAvatarTokens.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAEnE,MAAM,CAAC,IAAM,qBAAqB,GAAyC;IACzE,OAAA,CAAC;QACC,uBAAuB,EAAE,KAAK;QAC9B,qBAAqB,EAAE,KAAK;QAC5B,KAAK,EAAE,OAAO;QACd,eAAe,EAAE,OAAO;QACxB,eAAe,EAAE,sBAAsB,CAAC,YAAY,CAAC;QACrD,QAAQ,EAAE;YACR,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM;SAChD;QACD,MAAM,EAAE;YACN,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM;SAChD;KACiB,CAAA;AAZpB,CAYoB,CAAC"}
package/lib/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
1
  export * from './Avatar';
2
- export * from './Avatar.types';
2
+ export * from './JSAvatar';
3
+ export * from './JSAvatar.types';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC"}
package/lib/index.js CHANGED
@@ -1,3 +1,4 @@
1
1
  export * from './Avatar';
2
- export * from './Avatar.types';
2
+ export * from './JSAvatar';
3
+ export * from './JSAvatar.types';
3
4
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { AvatarProps, AvatarInfo } from './Avatar.types';
1
+ import { JSAvatarProps, AvatarInfo } from './JSAvatar.types';
2
2
  /**
3
3
  * Re-usable hook for FURN Avatar.
4
4
  * This hook configures Avatar props and state for FURN Avatar.
@@ -6,5 +6,5 @@ import { AvatarProps, AvatarInfo } from './Avatar.types';
6
6
  * @param props user props sent to FURN Avatar
7
7
  * @returns configured props and state for FURN Avatar
8
8
  */
9
- export declare const useAvatar: (props: AvatarProps) => AvatarInfo;
9
+ export declare const useAvatar: (props: JSAvatarProps) => AvatarInfo;
10
10
  //# sourceMappingURL=useAvatar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useAvatar.d.ts","sourceRoot":"","sources":["../src/useAvatar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAe,MAAM,gBAAgB,CAAC;AAGtE;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,oCA+BrB,CAAC"}
1
+ {"version":3,"file":"useAvatar.d.ts","sourceRoot":"","sources":["../src/useAvatar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAiB,MAAM,kBAAkB,CAAC;AAG5E;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,sCAgCrB,CAAC"}
package/lib/useAvatar.js CHANGED
@@ -20,7 +20,7 @@ var __rest = (this && this.__rest) || function (s, e) {
20
20
  }
21
21
  return t;
22
22
  };
23
- import { getPresenceIconSource } from './Avatar.helpers';
23
+ import { getPresenceIconSource } from './JSAvatar.helpers';
24
24
  /**
25
25
  * Re-usable hook for FURN Avatar.
26
26
  * This hook configures Avatar props and state for FURN Avatar.
@@ -29,7 +29,7 @@ import { getPresenceIconSource } from './Avatar.helpers';
29
29
  * @returns configured props and state for FURN Avatar
30
30
  */
31
31
  export var useAvatar = function (props) {
32
- var imageUrl = props.imageUrl, imageDescription = props.imageDescription, initials = props.initials, presence = props.presence, isOutOfOffice = props.isOutOfOffice, ring = props.ring, rest = __rest(props, ["imageUrl", "imageDescription", "initials", "presence", "isOutOfOffice", "ring"]);
32
+ var imageUrl = props.imageUrl, imageDescription = props.imageDescription, initials = props.initials, presence = props.presence, isOutOfOffice = props.isOutOfOffice, ring = props.ring, shape = props.shape, rest = __rest(props, ["imageUrl", "imageDescription", "initials", "presence", "isOutOfOffice", "ring", "shape"]);
33
33
  var personaPhotoSource = imageUrl === undefined
34
34
  ? undefined
35
35
  : {
@@ -45,7 +45,7 @@ export var useAvatar = function (props) {
45
45
  transparentRing: transparentRing,
46
46
  };
47
47
  return {
48
- props: __assign({ children: initials, accessibilityLabel: imageDescription }, rest),
48
+ props: __assign({ children: initials, accessibilityLabel: imageDescription, shape: shape || 'circular' }, rest),
49
49
  state: __assign({}, state),
50
50
  };
51
51
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useAvatar.js","sourceRoot":"","sources":["../src/useAvatar.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEzD;;;;;;GAMG;AACH,MAAM,CAAC,IAAM,SAAS,GAAG,UAAC,KAAkB;IAClC,IAAA,yBAAQ,EAAE,yCAAgB,EAAE,yBAAQ,EAAE,yBAAQ,EAAE,mCAAa,EAAE,iBAAI,EAAE,uGAAO,CAAW;IAE/F,IAAM,kBAAkB,GACtB,QAAQ,KAAK,SAAS;QACpB,CAAC,CAAC,SAAS;QACX,CAAC,CAAC;YACE,GAAG,EAAE,QAAQ;SACd,CAAC;IAER,IAAM,UAAU,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,qBAAqB,CAAC,QAAQ,EAAE,aAAa,IAAI,KAAK,CAAC,CAAC;IAChH,IAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC;IACxB,IAAM,eAAe,GAAG,CAAC,EAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,CAAA,CAAC;IAE5C,IAAM,KAAK,GAAgB;QACzB,UAAU,YAAA;QACV,kBAAkB,oBAAA;QAClB,QAAQ,UAAA;QACR,eAAe,iBAAA;KAChB,CAAC;IAEF,OAAO;QACL,KAAK,aACH,QAAQ,EAAE,QAAQ,EAClB,kBAAkB,EAAE,gBAAgB,IACjC,IAAI,CACR;QACD,KAAK,eACA,KAAK,CACT;KACF,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"useAvatar.js","sourceRoot":"","sources":["../src/useAvatar.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAE3D;;;;;;GAMG;AACH,MAAM,CAAC,IAAM,SAAS,GAAG,UAAC,KAAoB;IACpC,IAAA,yBAAQ,EAAE,yCAAgB,EAAE,yBAAQ,EAAE,yBAAQ,EAAE,mCAAa,EAAE,iBAAI,EAAE,mBAAK,EAAE,gHAAO,CAAW;IAEtG,IAAM,kBAAkB,GACtB,QAAQ,KAAK,SAAS;QACpB,CAAC,CAAC,SAAS;QACX,CAAC,CAAC;YACE,GAAG,EAAE,QAAQ;SACd,CAAC;IAER,IAAM,UAAU,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,qBAAqB,CAAC,QAAQ,EAAE,aAAa,IAAI,KAAK,CAAC,CAAC;IAChH,IAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC;IACxB,IAAM,eAAe,GAAG,CAAC,EAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,CAAA,CAAC;IAE5C,IAAM,KAAK,GAAkB;QAC3B,UAAU,YAAA;QACV,kBAAkB,oBAAA;QAClB,QAAQ,UAAA;QACR,eAAe,iBAAA;KAChB,CAAC;IAEF,OAAO;QACL,KAAK,aACH,QAAQ,EAAE,QAAQ,EAClB,kBAAkB,EAAE,gBAAgB,EACpC,KAAK,EAAE,KAAK,IAAI,UAAU,IACvB,IAAI,CACR;QACD,KAAK,eACA,KAAK,CACT;KACF,CAAC;AACJ,CAAC,CAAC"}
@@ -1,3 +1,70 @@
1
- import { AvatarProps } from './Avatar.types';
2
- export declare const Avatar: import("@fluentui-react-native/composition").ComposeFactoryComponent<AvatarProps, import("./Avatar.types").AvatarSlotProps, import("./Avatar.types").AvatarTokens, import("@fluentui-react-native/framework").Theme, object>;
1
+ import { ImageURISource, ViewProps, ColorValue } from 'react-native';
2
+ export declare type Size = 'xSmall' | 'small' | 'medium' | 'large' | 'xLarge' | 'xxLarge';
3
+ export declare type AvatarStyle = 'default' | 'accent' | 'group' | 'outlined' | 'outlinedPrimary' | 'overflow';
4
+ export declare type Presence = 'none' | 'available' | 'away' | 'blocked' | 'doNotDisturb' | 'offline' | 'unknown';
5
+ export declare type AvatarTokens = {
6
+ /**
7
+ * Supported Avatar sizes
8
+ */
9
+ size?: Size;
10
+ /**
11
+ * Supported Avatar styles
12
+ */
13
+ avatarStyle?: AvatarStyle;
14
+ };
15
+ export declare type AvatarProps = AvatarTokens & {
16
+ /**
17
+ * The image to be displayed
18
+ */
19
+ imageSource?: ImageURISource;
20
+ /**
21
+ * The primary text to create initials with (e.g. a name)
22
+ */
23
+ primaryText?: string;
24
+ /**
25
+ * The secondary text to create initials with if primary text is not provided (e.g. an email address)
26
+ */
27
+ secondaryText?: string;
28
+ /**
29
+ * A custom color for the ring around the Avatar
30
+ */
31
+ ringColor?: ColorValue;
32
+ /**
33
+ * A custom color for the avatar initials when no image is shown
34
+ */
35
+ foregroundColor?: ColorValue;
36
+ /**
37
+ * A custom color for the avatar background when no image is shown
38
+ */
39
+ backgroundColor?: ColorValue;
40
+ /**
41
+ * The avatar view's presence state.
42
+ */
43
+ presence?: Presence;
44
+ /**
45
+ * A boolean inidicating whether the ring is visible
46
+ */
47
+ isRingVisible?: boolean;
48
+ /**
49
+ * A boolean indicating whether the Inner Ring Gap is transparent
50
+ */
51
+ isTransparent?: boolean;
52
+ /**
53
+ * A boolean indicating out of office status
54
+ */
55
+ isOutOfOffice?: boolean;
56
+ /**
57
+ * A boolean indicating whether the gap between the avatar and ring is visible.
58
+ */
59
+ hasRingInnerGap?: boolean;
60
+ /**
61
+ * An image to be shown as the backdrop of the ring, rather then a solid color.
62
+ * Takes precendence over `ringColor`
63
+ */
64
+ customBorderImageSource?: ImageURISource;
65
+ };
66
+ export declare type NativeAvatarViewProps = ViewProps & AvatarProps;
67
+ export declare const Avatar: import("@fluentui-react-native/composition").ComposeFactoryComponent<AvatarProps, {
68
+ root: NativeAvatarViewProps;
69
+ }, AvatarTokens, import("@fluentui-react-native/framework").Theme, object>;
3
70
  //# sourceMappingURL=Avatar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Avatar.d.ts","sourceRoot":"","sources":["../src/Avatar.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAA0B,MAAM,gBAAgB,CAAC;AAKrE,eAAO,MAAM,MAAM,8NAoCjB,CAAC"}
1
+ {"version":3,"file":"Avatar.d.ts","sourceRoot":"","sources":["../src/Avatar.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAiB,SAAS,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAOpF,oBAAY,IAAI,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC;AAElF,oBAAY,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,GAAG,iBAAiB,GAAG,UAAU,CAAC;AAEvG,oBAAY,QAAQ,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,GAAG,SAAS,CAAC;AAQ1G,oBAAY,YAAY,GAAG;IACzB;;OAEG;IACH,IAAI,CAAC,EAAE,IAAI,CAAC;IAEZ;;OAEG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,CAAC;AAEF,oBAAY,WAAW,GAAG,YAAY,GAAG;IACvC;;OAEG;IACH,WAAW,CAAC,EAAE,cAAc,CAAC;IAE7B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,SAAS,CAAC,EAAE,UAAU,CAAC;IAEvB;;OAEG;IACH,eAAe,CAAC,EAAE,UAAU,CAAC;IAE7B;;OAEG;IACH,eAAe,CAAC,EAAE,UAAU,CAAC;IAE7B;;OAEG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEpB;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;;OAGG;IACH,uBAAuB,CAAC,EAAE,cAAc,CAAC;CAC1C,CAAC;AAIF,oBAAY,qBAAqB,GAAG,SAAS,GAAG,WAAW,CAAC;AAO5D,eAAO,MAAM,MAAM;;0EA4BjB,CAAC"}
@@ -10,44 +10,38 @@ var __assign = (this && this.__assign) || function () {
10
10
  };
11
11
  return __assign.apply(this, arguments);
12
12
  };
13
- var __rest = (this && this.__rest) || function (s, e) {
14
- var t = {};
15
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
- t[p] = s[p];
17
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
- t[p[i]] = s[p[i]];
21
- }
22
- return t;
23
- };
24
13
  Object.defineProperty(exports, "__esModule", { value: true });
25
14
  /** @jsx withSlots */
26
- var react_native_1 = require("react-native");
27
- var Avatar_types_1 = require("./Avatar.types");
28
- var Avatar_styling_1 = require("./Avatar.styling");
29
15
  var framework_1 = require("@fluentui-react-native/framework");
30
- var useAvatar_1 = require("./useAvatar");
31
- exports.Avatar = framework_1.compose(__assign(__assign({ displayName: Avatar_types_1.avatarName }, Avatar_styling_1.stylingSettings), { slots: {
32
- root: react_native_1.View,
33
- photo: react_native_1.Image,
34
- initials: react_native_1.Text,
35
- initialsBackground: react_native_1.View,
36
- icon: react_native_1.Image,
37
- ring: react_native_1.View,
38
- glow: react_native_1.View,
39
- }, render: function (userProps, useSlots) {
40
- var Avatar = useAvatar_1.useAvatar(userProps);
41
- var Slots = useSlots(userProps, function (layer) { return Avatar.state[layer] || userProps[layer]; });
42
- return function (final) {
43
- var _a = framework_1.mergeProps(Avatar.props, final), children = _a.children, accessibilityLabel = _a.accessibilityLabel, mergedProps = __rest(_a, ["children", "accessibilityLabel"]);
44
- var _b = Avatar.state, personaPhotoSource = _b.personaPhotoSource, iconSource = _b.iconSource, showRing = _b.showRing, transparentRing = _b.transparentRing;
45
- return (framework_1.withSlots(Slots.root, __assign({}, mergedProps),
46
- personaPhotoSource ? (framework_1.withSlots(Slots.photo, { accessibilityLabel: accessibilityLabel, source: personaPhotoSource })) : (framework_1.withSlots(Slots.initialsBackground, null,
47
- framework_1.withSlots(Slots.initials, null, children))),
48
- showRing && !transparentRing && framework_1.withSlots(Slots.ring, null),
49
- showRing && framework_1.withSlots(Slots.glow, null),
50
- !!iconSource && !!iconSource.uri && framework_1.withSlots(Slots.icon, { source: iconSource })));
51
- };
52
- } }));
16
+ var react_native_1 = require("react-native");
17
+ var component_cache_1 = require("@fluentui-react-native/component-cache");
18
+ var avatarName = 'Avatar';
19
+ var NativeAvatarView = component_cache_1.ensureNativeComponent('FRNAvatarView');
20
+ var ExportedNativeConstants = react_native_1.NativeModules.FRNAvatarViewManager;
21
+ var tokensThatAreAlsoProps = ['size', 'avatarStyle'];
22
+ exports.Avatar = framework_1.compose({
23
+ displayName: avatarName,
24
+ tokens: [
25
+ {
26
+ size: 'small',
27
+ avatarStyle: 'default',
28
+ },
29
+ avatarName,
30
+ ],
31
+ tokensThatAreAlsoProps: tokensThatAreAlsoProps,
32
+ slots: { root: NativeAvatarView },
33
+ slotProps: {
34
+ root: framework_1.buildProps(function (tokens) { return ({
35
+ size: tokens.size,
36
+ style: {
37
+ height: ExportedNativeConstants.sizes[tokens.size],
38
+ width: ExportedNativeConstants.sizes[tokens.size],
39
+ },
40
+ }); }, ['size']),
41
+ },
42
+ render: function (props, useSlots) {
43
+ var Root = useSlots(props).root;
44
+ return function (rest) { return framework_1.withSlots(Root, __assign({}, framework_1.mergeProps(props, rest))); };
45
+ },
46
+ });
53
47
  //# sourceMappingURL=Avatar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Avatar.js","sourceRoot":"","sources":["../src/Avatar.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,qBAAqB;AACrB,6CAAiD;AACjD,+CAAqE;AACrE,mDAAmD;AACnD,8DAA4F;AAC5F,yCAAwC;AAE3B,QAAA,MAAM,GAAG,mBAAO,qBAC3B,WAAW,EAAE,yBAAU,IACpB,gCAAe,KAClB,KAAK,EAAE;QACL,IAAI,EAAE,mBAAI;QACV,KAAK,EAAE,oBAAK;QACZ,QAAQ,EAAE,mBAAI;QACd,kBAAkB,EAAE,mBAAI;QACxB,IAAI,EAAE,oBAAK;QACX,IAAI,EAAE,mBAAI;QACV,IAAI,EAAE,mBAAI;KACX,EACD,MAAM,EAAE,UAAC,SAAsB,EAAE,QAA8B;QAC7D,IAAM,MAAM,GAAG,qBAAS,CAAC,SAAS,CAAC,CAAC;QACpC,IAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,EAAE,UAAC,KAAK,IAAK,OAAA,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,EAAvC,CAAuC,CAAC,CAAC;QAEtF,OAAO,UAAC,KAAkB;YACxB,IAAM,gDAAkF,EAAhF,sBAAQ,EAAE,0CAAkB,EAAE,4DAAkD,CAAC;YACnF,IAAA,iBAA4E,EAA1E,0CAAkB,EAAE,0BAAU,EAAE,sBAAQ,EAAE,oCAAgC,CAAC;YAEnF,OAAO,CACL,sBAAC,KAAK,CAAC,IAAI,eAAK,WAAW;gBACxB,kBAAkB,CAAC,CAAC,CAAC,CACpB,sBAAC,KAAK,CAAC,KAAK,IAAC,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,EAAE,kBAAkB,GAAI,CACpF,CAAC,CAAC,CAAC,CACF,sBAAC,KAAK,CAAC,kBAAkB;oBACvB,sBAAC,KAAK,CAAC,QAAQ,QAAE,QAAQ,CAAkB,CAClB,CAC5B;gBACA,QAAQ,IAAI,CAAC,eAAe,IAAI,sBAAC,KAAK,CAAC,IAAI,OAAG;gBAC9C,QAAQ,IAAI,sBAAC,KAAK,CAAC,IAAI,OAAG;gBAC1B,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,IAAI,sBAAC,KAAK,CAAC,IAAI,IAAC,MAAM,EAAE,UAAU,GAAI,CAC5D,CACd,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC,IACD,CAAC"}
1
+ {"version":3,"file":"Avatar.js","sourceRoot":"","sources":["../src/Avatar.tsx"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,qBAAqB;AACrB,8DAAwG;AACxG,6CAAoF;AACpF,0EAA+E;AAE/E,IAAM,UAAU,GAAG,QAAQ,CAAC;AAE5B,IAAM,gBAAgB,GAAG,uCAAqB,CAAC,eAAe,CAAC,CAAC;AAYhE,IAAM,uBAAuB,GAAsB,4BAAa,CAAC,oBAAoB,CAAC;AA6EtF,IAAM,sBAAsB,GAA2B,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;AASlE,QAAA,MAAM,GAAG,mBAAO,CAAa;IACxC,WAAW,EAAE,UAAU;IACvB,MAAM,EAAE;QACN;YACE,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,SAAS;SACvB;QACD,UAAU;KACX;IACD,sBAAsB,wBAAA;IACtB,KAAK,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE;IACjC,SAAS,EAAE;QACT,IAAI,EAAE,sBAAU,CACd,UAAC,MAAM,IAAK,OAAA,CAAC;YACX,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,KAAK,EAAE;gBACL,MAAM,EAAE,uBAAuB,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;gBAClD,KAAK,EAAE,uBAAuB,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;aAClD;SACF,CAAC,EANU,CAMV,EACF,CAAC,MAAM,CAAC,CACT;KACF;IACD,MAAM,EAAE,UAAC,KAAkB,EAAE,QAA8B;QACzD,IAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;QAElC,OAAO,UAAC,IAAiB,IAAK,OAAA,sBAAC,IAAI,eAAK,sBAAU,CAAC,KAAK,EAAE,IAAI,CAAC,EAAI,EAArC,CAAqC,CAAC;IACtE,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { JSAvatarProps, JSAvatarState } from './JSAvatar.types';
2
+ /**
3
+ * A function which determines if a set of styles should be applied to the compoent given the current state and props of the avatar.
4
+ *
5
+ * @param layer The name of the state that is being checked for
6
+ * @param state The current state of the avatar
7
+ * @param userProps The props that were passed into the avatar
8
+ * @returns Whether the styles that are assigned to the layer should be applied to the avatar
9
+ */
10
+ export declare const avatarLookup: (layer: string, state: JSAvatarState, userProps: JSAvatarProps) => boolean;
11
+ export declare const JSAvatar: import("@fluentui-react-native/composition").ComposeFactoryComponent<JSAvatarProps, import("./JSAvatar.types").AvatarSlotProps, import("./JSAvatar.types").JSAvatarTokens, import("@fluentui-react-native/framework").Theme, object>;
12
+ //# sourceMappingURL=JSAvatar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JSAvatar.d.ts","sourceRoot":"","sources":["../src/JSAvatar.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAA8B,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAK5F;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,4EAExB,CAAC;AAEF,eAAO,MAAM,QAAQ,sOAoCnB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { AvatarSize, AvatarColor, AvatarPresence, AvatarTokens, RingThickness } from './Avatar.types';
1
+ import { AvatarSize, AvatarColor, AvatarPresence, JSAvatarTokens, RingThickness } from './JSAvatar.types';
2
2
  import { ImageURISource } from 'react-native';
3
3
  export declare function getPresenceIconSource(presence: AvatarPresence, isOutOfOffice: boolean): ImageURISource;
4
4
  export declare type AvatarSizeConfig = {
@@ -12,6 +12,6 @@ export declare function getSizeConfig(size: AvatarSize): AvatarSizeConfig;
12
12
  * Converts the AvatarColor into a hex color value
13
13
  */
14
14
  export declare function convertCoinColorFluent(coinColor: AvatarColor): string;
15
- export declare function calculateEffectiveSizes(tokens: AvatarTokens): AvatarSizeConfig;
15
+ export declare function calculateEffectiveSizes(tokens: JSAvatarTokens): AvatarSizeConfig;
16
16
  export declare function getRingThickness(thickness: RingThickness): number;
17
- //# sourceMappingURL=Avatar.helpers.d.ts.map
17
+ //# sourceMappingURL=JSAvatar.helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JSAvatar.helpers.d.ts","sourceRoot":"","sources":["../src/JSAvatar.helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC1G,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AA4B9C,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,OAAO,GAAG,cAAc,CAEtG;AAED,oBAAY,gBAAgB,GAAG;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAcF,wBAAgB,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,gBAAgB,CAEhE;AAyBD;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,WAAW,GAAG,MAAM,CAErE;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,cAAc,GAAG,gBAAgB,CAoBhF;AAED,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,aAAa,GAAG,MAAM,CAiBjE"}
@@ -107,4 +107,4 @@ function getRingThickness(thickness) {
107
107
  }
108
108
  }
109
109
  exports.getRingThickness = getRingThickness;
110
- //# sourceMappingURL=Avatar.helpers.js.map
110
+ //# sourceMappingURL=JSAvatar.helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JSAvatar.helpers.js","sourceRoot":"","sources":["../src/JSAvatar.helpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __rest = (this && this.__rest) || function (s, e) {
14
+ var t = {};
15
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
+ t[p] = s[p];
17
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
+ t[p[i]] = s[p[i]];
21
+ }
22
+ return t;
23
+ };
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ /** @jsx withSlots */
26
+ var react_native_1 = require("react-native");
27
+ var JSAvatar_types_1 = require("./JSAvatar.types");
28
+ var JSAvatar_styling_1 = require("./JSAvatar.styling");
29
+ var framework_1 = require("@fluentui-react-native/framework");
30
+ var useAvatar_1 = require("./useAvatar");
31
+ /**
32
+ * A function which determines if a set of styles should be applied to the compoent given the current state and props of the avatar.
33
+ *
34
+ * @param layer The name of the state that is being checked for
35
+ * @param state The current state of the avatar
36
+ * @param userProps The props that were passed into the avatar
37
+ * @returns Whether the styles that are assigned to the layer should be applied to the avatar
38
+ */
39
+ exports.avatarLookup = function (layer, state, userProps) {
40
+ return state[layer] || userProps[layer] || layer === userProps['shape'] || (!userProps['shape'] && layer === 'circular');
41
+ };
42
+ exports.JSAvatar = framework_1.compose(__assign(__assign({ displayName: JSAvatar_types_1.JSAvatarName }, JSAvatar_styling_1.stylingSettings), { slots: {
43
+ root: react_native_1.View,
44
+ photo: react_native_1.Image,
45
+ initials: react_native_1.Text,
46
+ initialsBackground: react_native_1.View,
47
+ icon: react_native_1.Image,
48
+ ring: react_native_1.View,
49
+ glow: react_native_1.View,
50
+ }, render: function (userProps, useSlots) {
51
+ var avatar = useAvatar_1.useAvatar(userProps);
52
+ var Slots = useSlots(userProps, function (layer) { return exports.avatarLookup(layer, avatar.state, userProps); });
53
+ return function (final) {
54
+ var _a = framework_1.mergeProps(avatar.props, final), children = _a.children, accessibilityLabel = _a.accessibilityLabel, mergedProps = __rest(_a, ["children", "accessibilityLabel"]);
55
+ var _b = avatar.state, personaPhotoSource = _b.personaPhotoSource, iconSource = _b.iconSource, showRing = _b.showRing, transparentRing = _b.transparentRing;
56
+ return (framework_1.withSlots(Slots.root, __assign({}, mergedProps),
57
+ personaPhotoSource ? (framework_1.withSlots(Slots.photo, { accessibilityLabel: accessibilityLabel, source: personaPhotoSource })) : (framework_1.withSlots(Slots.initialsBackground, null,
58
+ framework_1.withSlots(Slots.initials, null, children))),
59
+ showRing && !transparentRing && framework_1.withSlots(Slots.ring, null),
60
+ showRing && framework_1.withSlots(Slots.glow, null),
61
+ !!iconSource && !!iconSource.uri && framework_1.withSlots(Slots.icon, { source: iconSource })));
62
+ };
63
+ } }));
64
+ //# sourceMappingURL=JSAvatar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JSAvatar.js","sourceRoot":"","sources":["../src/JSAvatar.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,qBAAqB;AACrB,6CAAiD;AACjD,mDAA4F;AAC5F,uDAAqD;AACrD,8DAA4F;AAC5F,yCAAwC;AAExC;;;;;;;GAOG;AACU,QAAA,YAAY,GAAG,UAAC,KAAa,EAAE,KAAoB,EAAE,SAAwB;IACxF,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,KAAK,KAAK,UAAU,CAAC,CAAC;AAC3H,CAAC,CAAC;AAEW,QAAA,QAAQ,GAAG,mBAAO,qBAC7B,WAAW,EAAE,6BAAY,IACtB,kCAAe,KAClB,KAAK,EAAE;QACL,IAAI,EAAE,mBAAI;QACV,KAAK,EAAE,oBAAK;QACZ,QAAQ,EAAE,mBAAI;QACd,kBAAkB,EAAE,mBAAI;QACxB,IAAI,EAAE,oBAAK;QACX,IAAI,EAAE,mBAAI;QACV,IAAI,EAAE,mBAAI;KACX,EACD,MAAM,EAAE,UAAC,SAAwB,EAAE,QAAgC;QACjE,IAAM,MAAM,GAAG,qBAAS,CAAC,SAAS,CAAC,CAAC;QACpC,IAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,EAAE,UAAC,KAAK,IAAK,OAAA,oBAAY,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,EAA5C,CAA4C,CAAC,CAAC;QAE3F,OAAO,UAAC,KAAoB;YAC1B,IAAM,gDAAkF,EAAhF,sBAAQ,EAAE,0CAAkB,EAAE,4DAAkD,CAAC;YACnF,IAAA,iBAA4E,EAA1E,0CAAkB,EAAE,0BAAU,EAAE,sBAAQ,EAAE,oCAAgC,CAAC;YAEnF,OAAO,CACL,sBAAC,KAAK,CAAC,IAAI,eAAK,WAAW;gBACxB,kBAAkB,CAAC,CAAC,CAAC,CACpB,sBAAC,KAAK,CAAC,KAAK,IAAC,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,EAAE,kBAAkB,GAAI,CACpF,CAAC,CAAC,CAAC,CACF,sBAAC,KAAK,CAAC,kBAAkB;oBACvB,sBAAC,KAAK,CAAC,QAAQ,QAAE,QAAQ,CAAkB,CAClB,CAC5B;gBACA,QAAQ,IAAI,CAAC,eAAe,IAAI,sBAAC,KAAK,CAAC,IAAI,OAAG;gBAC9C,QAAQ,IAAI,sBAAC,KAAK,CAAC,IAAI,OAAG;gBAC1B,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,IAAI,sBAAC,KAAK,CAAC,IAAI,IAAC,MAAM,EAAE,UAAU,GAAI,CAC5D,CACd,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC,IACD,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { JSAvatarTokens, AvatarSlotProps, JSAvatarProps } from './JSAvatar.types';
2
+ import { UseStylingOptions } from '@fluentui-react-native/framework';
3
+ export declare const avatarStates: (keyof JSAvatarTokens)[];
4
+ export declare const stylingSettings: UseStylingOptions<JSAvatarProps, AvatarSlotProps, JSAvatarTokens>;
5
+ //# sourceMappingURL=JSAvatar.styling.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JSAvatar.styling.d.ts","sourceRoot":"","sources":["../src/JSAvatar.styling.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,cAAc,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAChG,OAAO,EAAS,iBAAiB,EAAc,MAAM,kCAAkC,CAAC;AAYxF,eAAO,MAAM,YAAY,EAAE,CAAC,MAAM,cAAc,CAAC,EAA2B,CAAC;AAE7E,eAAO,MAAM,eAAe,EAAE,iBAAiB,CAAC,aAAa,EAAE,eAAe,EAAE,cAAc,CAmJ7F,CAAC"}