@fluentui/react-migration-v8-v9 9.8.8 → 9.9.1
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.
- package/CHANGELOG.md +21 -2
- package/lib/components/Button/ActionButtonShim.js.map +1 -1
- package/lib/components/Button/ButtonShim.js.map +1 -1
- package/lib/components/Button/CommandButtonShim.js.map +1 -1
- package/lib/components/Button/CompoundButtonShim.js.map +1 -1
- package/lib/components/Button/DefaultButtonShim.js.map +1 -1
- package/lib/components/Button/MenuButtonShim.js.map +1 -1
- package/lib/components/Button/PrimaryButtonShim.js.map +1 -1
- package/lib/components/Button/ToggleButtonShim.js.map +1 -1
- package/lib/components/Button/index.js.map +1 -1
- package/lib/components/Button/shimButtonProps.js.map +1 -1
- package/lib/components/Checkbox/Checkbox.styles.raw.js +6 -0
- package/lib/components/Checkbox/Checkbox.styles.raw.js.map +1 -0
- package/lib/components/Checkbox/CheckboxShim.js.map +1 -1
- package/lib/components/Checkbox/index.js.map +1 -1
- package/lib/components/Checkbox/shimCheckboxProps.js.map +1 -1
- package/lib/components/Menu/MenuShim.js.map +1 -1
- package/lib/components/Menu/index.js.map +1 -1
- package/lib/components/Menu/shimMenuProps.js.map +1 -1
- package/lib/components/Stack/StackItemShim.js.map +1 -1
- package/lib/components/Stack/StackItemShim.styles.raw.js +114 -0
- package/lib/components/Stack/StackItemShim.styles.raw.js.map +1 -0
- package/lib/components/Stack/StackShim.js.map +1 -1
- package/lib/components/Stack/StackShim.styles.raw.js +133 -0
- package/lib/components/Stack/StackShim.styles.raw.js.map +1 -0
- package/lib/components/Stack/index.js.map +1 -1
- package/lib/components/Stack/stackUtils.js.map +1 -1
- package/lib/components/Theme/index.js.map +1 -1
- package/lib/components/Theme/themeDuplicates.js.map +1 -1
- package/lib/components/Theme/v8ThemeShim.js.map +1 -1
- package/lib/components/Theme/v9BrandVariantsShim.js.map +1 -1
- package/lib/components/Theme/v9ThemeShim.js.map +1 -1
- package/lib/components/utils.js.map +1 -1
- package/lib/index.js.map +1 -1
- package/lib-commonjs/components/Button/ActionButtonShim.js.map +1 -1
- package/lib-commonjs/components/Button/ButtonShim.js.map +1 -1
- package/lib-commonjs/components/Button/CommandButtonShim.js.map +1 -1
- package/lib-commonjs/components/Button/CompoundButtonShim.js.map +1 -1
- package/lib-commonjs/components/Button/DefaultButtonShim.js.map +1 -1
- package/lib-commonjs/components/Button/MenuButtonShim.js.map +1 -1
- package/lib-commonjs/components/Button/PrimaryButtonShim.js.map +1 -1
- package/lib-commonjs/components/Button/ToggleButtonShim.js.map +1 -1
- package/lib-commonjs/components/Button/index.js.map +1 -1
- package/lib-commonjs/components/Button/shimButtonProps.js.map +1 -1
- package/lib-commonjs/components/Checkbox/Checkbox.styles.js.map +1 -1
- package/lib-commonjs/components/Checkbox/Checkbox.styles.raw.js +16 -0
- package/lib-commonjs/components/Checkbox/Checkbox.styles.raw.js.map +1 -0
- package/lib-commonjs/components/Checkbox/CheckboxShim.js.map +1 -1
- package/lib-commonjs/components/Checkbox/index.js.map +1 -1
- package/lib-commonjs/components/Checkbox/shimCheckboxProps.js.map +1 -1
- package/lib-commonjs/components/Menu/MenuShim.js.map +1 -1
- package/lib-commonjs/components/Menu/index.js.map +1 -1
- package/lib-commonjs/components/Menu/shimMenuProps.js.map +1 -1
- package/lib-commonjs/components/Stack/StackItemShim.js.map +1 -1
- package/lib-commonjs/components/Stack/StackItemShim.styles.js.map +1 -1
- package/lib-commonjs/components/Stack/StackItemShim.styles.raw.js +141 -0
- package/lib-commonjs/components/Stack/StackItemShim.styles.raw.js.map +1 -0
- package/lib-commonjs/components/Stack/StackShim.js.map +1 -1
- package/lib-commonjs/components/Stack/StackShim.styles.js.map +1 -1
- package/lib-commonjs/components/Stack/StackShim.styles.raw.js +157 -0
- package/lib-commonjs/components/Stack/StackShim.styles.raw.js.map +1 -0
- package/lib-commonjs/components/Stack/index.js.map +1 -1
- package/lib-commonjs/components/Stack/stackUtils.js.map +1 -1
- package/lib-commonjs/components/Theme/index.js.map +1 -1
- package/lib-commonjs/components/Theme/themeDuplicates.js.map +1 -1
- package/lib-commonjs/components/Theme/v8ThemeShim.js.map +1 -1
- package/lib-commonjs/components/Theme/v9BrandVariantsShim.js.map +1 -1
- package/lib-commonjs/components/Theme/v9ThemeShim.js.map +1 -1
- package/lib-commonjs/components/utils.js.map +1 -1
- package/lib-commonjs/index.js.map +1 -1
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,12 +1,31 @@
|
|
|
1
1
|
# Change Log - @fluentui/react-migration-v8-v9
|
|
2
2
|
|
|
3
|
-
This log was last generated on
|
|
3
|
+
This log was last generated on Mon, 28 Jul 2025 18:44:12 GMT and should not be manually modified.
|
|
4
4
|
|
|
5
5
|
<!-- Start content -->
|
|
6
6
|
|
|
7
|
+
## [9.9.1](https://github.com/microsoft/fluentui/tree/@fluentui/react-migration-v8-v9_v9.9.1)
|
|
8
|
+
|
|
9
|
+
Mon, 28 Jul 2025 18:44:12 GMT
|
|
10
|
+
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-migration-v8-v9_v9.9.0..@fluentui/react-migration-v8-v9_v9.9.1)
|
|
11
|
+
|
|
12
|
+
### Patches
|
|
13
|
+
|
|
14
|
+
- Bump @fluentui/react-components to v9.68.0 ([PR #34918](https://github.com/microsoft/fluentui/pull/34918) by beachball)
|
|
15
|
+
|
|
16
|
+
## [9.9.0](https://github.com/microsoft/fluentui/tree/@fluentui/react-migration-v8-v9_v9.9.0)
|
|
17
|
+
|
|
18
|
+
Thu, 17 Jul 2025 13:49:42 GMT
|
|
19
|
+
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-migration-v8-v9_v9.8.8..@fluentui/react-migration-v8-v9_v9.9.0)
|
|
20
|
+
|
|
21
|
+
### Minor changes
|
|
22
|
+
|
|
23
|
+
- feat: enable griffel raw styles ([PR #34853](https://github.com/microsoft/fluentui/pull/34853) by martinhochel@microsoft.com)
|
|
24
|
+
- Bump @fluentui/react-components to v9.67.0 ([PR #34862](https://github.com/microsoft/fluentui/pull/34862) by beachball)
|
|
25
|
+
|
|
7
26
|
## [9.8.8](https://github.com/microsoft/fluentui/tree/@fluentui/react-migration-v8-v9_v9.8.8)
|
|
8
27
|
|
|
9
|
-
Wed, 16 Jul 2025 13:
|
|
28
|
+
Wed, 16 Jul 2025 13:52:50 GMT
|
|
10
29
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-migration-v8-v9_v9.8.7..@fluentui/react-migration-v8-v9_v9.8.8)
|
|
11
30
|
|
|
12
31
|
### Patches
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Button/ActionButtonShim.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport type { IButtonProps } from '@fluentui/react';\n\nimport { Button } from '@fluentui/react-components';\nimport type { RefAttributes } from '@fluentui/react-utilities';\n\nimport { shimButtonProps } from './shimButtonProps';\n\n/**\n * Shims a v8 ActionButton to render a v9 Button\n */\nexport const ActionButtonShim: React.ForwardRefExoticComponent<\n IButtonProps &\n // eslint-disable-next-line @typescript-eslint/no-restricted-types -- this is expected in order to be compatible with v8, as every v8 interface contains `React.RefAttributes` to accept ref as string\n React.RefAttributes<HTMLButtonElement>\n> = React.forwardRef((props, _ref) => {\n const variantProps = {\n ...props,\n variantClassName: 'ms-Button--action ms-Button--command',\n };\n\n const shimProps = shimButtonProps(variantProps);\n\n return <Button {...(props as RefAttributes<HTMLButtonElement>)} {...shimProps} appearance=\"transparent\" />;\n});\n"],"names":["React","Button","shimButtonProps","ActionButtonShim","forwardRef","props","_ref","variantProps","variantClassName","shimProps","appearance"],"
|
|
1
|
+
{"version":3,"sources":["../src/components/Button/ActionButtonShim.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport type { IButtonProps } from '@fluentui/react';\n\nimport { Button } from '@fluentui/react-components';\nimport type { RefAttributes } from '@fluentui/react-utilities';\n\nimport { shimButtonProps } from './shimButtonProps';\n\n/**\n * Shims a v8 ActionButton to render a v9 Button\n */\nexport const ActionButtonShim: React.ForwardRefExoticComponent<\n IButtonProps &\n // eslint-disable-next-line @typescript-eslint/no-restricted-types -- this is expected in order to be compatible with v8, as every v8 interface contains `React.RefAttributes` to accept ref as string\n React.RefAttributes<HTMLButtonElement>\n> = React.forwardRef((props, _ref) => {\n const variantProps = {\n ...props,\n variantClassName: 'ms-Button--action ms-Button--command',\n };\n\n const shimProps = shimButtonProps(variantProps);\n\n return <Button {...(props as RefAttributes<HTMLButtonElement>)} {...shimProps} appearance=\"transparent\" />;\n});\n"],"names":["React","Button","shimButtonProps","ActionButtonShim","forwardRef","props","_ref","variantProps","variantClassName","shimProps","appearance"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAI/B,SAASC,MAAM,QAAQ,6BAA6B;AAGpD,SAASC,eAAe,QAAQ,oBAAoB;AAEpD;;CAEC,GACD,OAAO,MAAMC,iCAITH,MAAMI,UAAU,CAAC,CAACC,OAAOC;IAC3B,MAAMC,eAAe;QACnB,GAAGF,KAAK;QACRG,kBAAkB;IACpB;IAEA,MAAMC,YAAYP,gBAAgBK;IAElC,qBAAO,oBAACN;QAAQ,GAAII,KAAK;QAAwC,GAAGI,SAAS;QAAEC,YAAW;;AAC5F,GAAG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Button/ButtonShim.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport type { IBaseButtonProps } from '@fluentui/react';\n\nimport { Button } from '@fluentui/react-components';\nimport type { RefAttributes } from '@fluentui/react-utilities';\n\nimport { shimButtonProps } from './shimButtonProps';\nimport { ToggleButtonShim } from './ToggleButtonShim';\nimport { CompoundButtonShim } from './CompoundButtonShim';\n\nexport const ButtonShim: React.ForwardRefExoticComponent<\n IBaseButtonProps &\n // eslint-disable-next-line @typescript-eslint/no-restricted-types -- this is expected in order to be compatible with v8, as every v8 interface contains `React.RefAttributes` to accept ref as string\n React.RefAttributes<HTMLButtonElement>\n> = React.forwardRef((props, _ref) => {\n const shimProps = shimButtonProps(props);\n\n if (props.toggle) {\n return <ToggleButtonShim {...props}>{props.children}</ToggleButtonShim>;\n }\n if (props.secondaryText || props.onRenderDescription?.(props)) {\n return <CompoundButtonShim {...props} />;\n }\n\n return <Button {...(props as RefAttributes<HTMLButtonElement>)} {...shimProps} />;\n});\n"],"names":["React","Button","shimButtonProps","ToggleButtonShim","CompoundButtonShim","ButtonShim","forwardRef","props","_ref","shimProps","toggle","children","secondaryText","onRenderDescription"],"
|
|
1
|
+
{"version":3,"sources":["../src/components/Button/ButtonShim.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport type { IBaseButtonProps } from '@fluentui/react';\n\nimport { Button } from '@fluentui/react-components';\nimport type { RefAttributes } from '@fluentui/react-utilities';\n\nimport { shimButtonProps } from './shimButtonProps';\nimport { ToggleButtonShim } from './ToggleButtonShim';\nimport { CompoundButtonShim } from './CompoundButtonShim';\n\nexport const ButtonShim: React.ForwardRefExoticComponent<\n IBaseButtonProps &\n // eslint-disable-next-line @typescript-eslint/no-restricted-types -- this is expected in order to be compatible with v8, as every v8 interface contains `React.RefAttributes` to accept ref as string\n React.RefAttributes<HTMLButtonElement>\n> = React.forwardRef((props, _ref) => {\n const shimProps = shimButtonProps(props);\n\n if (props.toggle) {\n return <ToggleButtonShim {...props}>{props.children}</ToggleButtonShim>;\n }\n if (props.secondaryText || props.onRenderDescription?.(props)) {\n return <CompoundButtonShim {...props} />;\n }\n\n return <Button {...(props as RefAttributes<HTMLButtonElement>)} {...shimProps} />;\n});\n"],"names":["React","Button","shimButtonProps","ToggleButtonShim","CompoundButtonShim","ButtonShim","forwardRef","props","_ref","shimProps","toggle","children","secondaryText","onRenderDescription"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAI/B,SAASC,MAAM,QAAQ,6BAA6B;AAGpD,SAASC,eAAe,QAAQ,oBAAoB;AACpD,SAASC,gBAAgB,QAAQ,qBAAqB;AACtD,SAASC,kBAAkB,QAAQ,uBAAuB;AAE1D,OAAO,MAAMC,2BAITL,MAAMM,UAAU,CAAC,CAACC,OAAOC;QAMAD;IAL3B,MAAME,YAAYP,gBAAgBK;IAElC,IAAIA,MAAMG,MAAM,EAAE;QAChB,qBAAO,oBAACP,kBAAqBI,OAAQA,MAAMI,QAAQ;IACrD;IACA,IAAIJ,MAAMK,aAAa,MAAIL,6BAAAA,MAAMM,mBAAmB,cAAzBN,iDAAAA,gCAAAA,OAA4BA,SAAQ;QAC7D,qBAAO,oBAACH,oBAAuBG;IACjC;IAEA,qBAAO,oBAACN;QAAQ,GAAIM,KAAK;QAAwC,GAAGE,SAAS;;AAC/E,GAAG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Button/CommandButtonShim.tsx"],"sourcesContent":["/**\n * Shims v8 CommandButtonShim to render a v9 Button\n */\nexport { ActionButtonShim as CommandButtonShim } from './ActionButtonShim';\n"],"names":["ActionButtonShim","CommandButtonShim"],"
|
|
1
|
+
{"version":3,"sources":["../src/components/Button/CommandButtonShim.tsx"],"sourcesContent":["/**\n * Shims v8 CommandButtonShim to render a v9 Button\n */\nexport { ActionButtonShim as CommandButtonShim } from './ActionButtonShim';\n"],"names":["ActionButtonShim","CommandButtonShim"],"mappings":"AAAA;;CAEC,GACD,SAASA,oBAAoBC,iBAAiB,QAAQ,qBAAqB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Button/CompoundButtonShim.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport type { IButtonProps } from '@fluentui/react';\n\nimport { CompoundButton } from '@fluentui/react-components';\nimport type { CompoundButtonProps } from '@fluentui/react-components';\nimport type { RefAttributes } from '@fluentui/react-utilities';\n\nimport { shimButtonProps } from './shimButtonProps';\n\n/**\n * Shims v8 CompoundButton to render a v9 CompoundButton\n */\nexport const CompoundButtonShim: React.ForwardRefExoticComponent<\n IButtonProps &\n // eslint-disable-next-line @typescript-eslint/no-restricted-types -- this is expected in order to be compatible with v8, as every v8 interface contains `React.RefAttributes` to accept ref as string\n React.RefAttributes<HTMLButtonElement>\n> = React.forwardRef((props, _ref) => {\n const variantProps = {\n ...props,\n variantClassName: props.primary ? 'ms-Button--compoundPrimary' : 'ms-Button--compound',\n };\n\n const shimProps: CompoundButtonProps = {\n ...shimButtonProps(variantProps),\n secondaryContent: props.secondaryText || props.onRenderDescription?.(props),\n };\n\n return <CompoundButton {...(props as RefAttributes<HTMLButtonElement>)} {...shimProps} />;\n});\n"],"names":["React","CompoundButton","shimButtonProps","CompoundButtonShim","forwardRef","props","_ref","variantProps","variantClassName","primary","shimProps","secondaryContent","secondaryText","onRenderDescription"],"
|
|
1
|
+
{"version":3,"sources":["../src/components/Button/CompoundButtonShim.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport type { IButtonProps } from '@fluentui/react';\n\nimport { CompoundButton } from '@fluentui/react-components';\nimport type { CompoundButtonProps } from '@fluentui/react-components';\nimport type { RefAttributes } from '@fluentui/react-utilities';\n\nimport { shimButtonProps } from './shimButtonProps';\n\n/**\n * Shims v8 CompoundButton to render a v9 CompoundButton\n */\nexport const CompoundButtonShim: React.ForwardRefExoticComponent<\n IButtonProps &\n // eslint-disable-next-line @typescript-eslint/no-restricted-types -- this is expected in order to be compatible with v8, as every v8 interface contains `React.RefAttributes` to accept ref as string\n React.RefAttributes<HTMLButtonElement>\n> = React.forwardRef((props, _ref) => {\n const variantProps = {\n ...props,\n variantClassName: props.primary ? 'ms-Button--compoundPrimary' : 'ms-Button--compound',\n };\n\n const shimProps: CompoundButtonProps = {\n ...shimButtonProps(variantProps),\n secondaryContent: props.secondaryText || props.onRenderDescription?.(props),\n };\n\n return <CompoundButton {...(props as RefAttributes<HTMLButtonElement>)} {...shimProps} />;\n});\n"],"names":["React","CompoundButton","shimButtonProps","CompoundButtonShim","forwardRef","props","_ref","variantProps","variantClassName","primary","shimProps","secondaryContent","secondaryText","onRenderDescription"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAI/B,SAASC,cAAc,QAAQ,6BAA6B;AAI5D,SAASC,eAAe,QAAQ,oBAAoB;AAEpD;;CAEC,GACD,OAAO,MAAMC,mCAITH,MAAMI,UAAU,CAAC,CAACC,OAAOC;QAQgBD;IAP3C,MAAME,eAAe;QACnB,GAAGF,KAAK;QACRG,kBAAkBH,MAAMI,OAAO,GAAG,+BAA+B;IACnE;IAEA,MAAMC,YAAiC;QACrC,GAAGR,gBAAgBK,aAAa;QAChCI,kBAAkBN,MAAMO,aAAa,MAAIP,6BAAAA,MAAMQ,mBAAmB,cAAzBR,iDAAAA,gCAAAA,OAA4BA;IACvE;IAEA,qBAAO,oBAACJ;QAAgB,GAAII,KAAK;QAAwC,GAAGK,SAAS;;AACvF,GAAG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Button/DefaultButtonShim.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport type { IButtonProps } from '@fluentui/react';\n\nimport { ButtonShim } from './ButtonShim';\n\n/**\n * Shims a v8 DefaultButton to render a v9 Button\n */\nexport const DefaultButtonShim: React.ForwardRefExoticComponent<\n IButtonProps &\n // eslint-disable-next-line @typescript-eslint/no-restricted-types -- this is expected in order to be compatible with v8, as every v8 interface contains `React.RefAttributes` to accept ref as string\n React.RefAttributes<HTMLButtonElement>\n> = React.forwardRef((props, _ref) => {\n return <ButtonShim {...props} variantClassName={props.primary ? 'ms-Button--primary' : 'ms-Button--default'} />;\n});\n"],"names":["React","ButtonShim","DefaultButtonShim","forwardRef","props","_ref","variantClassName","primary"],"
|
|
1
|
+
{"version":3,"sources":["../src/components/Button/DefaultButtonShim.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport type { IButtonProps } from '@fluentui/react';\n\nimport { ButtonShim } from './ButtonShim';\n\n/**\n * Shims a v8 DefaultButton to render a v9 Button\n */\nexport const DefaultButtonShim: React.ForwardRefExoticComponent<\n IButtonProps &\n // eslint-disable-next-line @typescript-eslint/no-restricted-types -- this is expected in order to be compatible with v8, as every v8 interface contains `React.RefAttributes` to accept ref as string\n React.RefAttributes<HTMLButtonElement>\n> = React.forwardRef((props, _ref) => {\n return <ButtonShim {...props} variantClassName={props.primary ? 'ms-Button--primary' : 'ms-Button--default'} />;\n});\n"],"names":["React","ButtonShim","DefaultButtonShim","forwardRef","props","_ref","variantClassName","primary"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAI/B,SAASC,UAAU,QAAQ,eAAe;AAE1C;;CAEC,GACD,OAAO,MAAMC,kCAITF,MAAMG,UAAU,CAAC,CAACC,OAAOC;IAC3B,qBAAO,oBAACJ;QAAY,GAAGG,KAAK;QAAEE,kBAAkBF,MAAMG,OAAO,GAAG,uBAAuB;;AACzF,GAAG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Button/MenuButtonShim.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport type { IButtonProps } from '@fluentui/react';\nimport { MenuButton, Menu, MenuList, MenuPopover, MenuTrigger } from '@fluentui/react-components';\nimport type { MenuButtonProps } from '@fluentui/react-components';\nimport { MenuItemShim, shimMenuProps } from '../Menu/index';\n\nimport { shimButtonProps } from './shimButtonProps';\n\nexport const MenuButtonShim: React.ForwardRefExoticComponent<\n IButtonProps &\n // eslint-disable-next-line @typescript-eslint/no-restricted-types -- this is expected in order to be compatible with v8, as every v8 interface contains `React.RefAttributes` to accept ref as string\n React.RefAttributes<HTMLButtonElement>\n> = React.forwardRef((props, _ref) => {\n const variantProps = {\n ...props,\n variantClassName: props.primary ? 'ms-Button--primary' : 'ms-Button--default',\n };\n\n const shimProps: MenuButtonProps = {\n ...shimButtonProps(variantProps),\n };\n\n const shimmedMenuProps = props.menuProps ? shimMenuProps(props.menuProps) : {};\n\n return (\n <Menu {...shimmedMenuProps}>\n <MenuTrigger>\n <MenuButton {...shimProps} />\n </MenuTrigger>\n <MenuPopover>\n <MenuList>\n {props.menuProps?.items.map(item => (\n // key is added through item spread\n // eslint-disable-next-line react/jsx-key\n <MenuItemShim {...item} />\n ))}\n </MenuList>\n </MenuPopover>\n </Menu>\n );\n});\n"],"names":["React","MenuButton","Menu","MenuList","MenuPopover","MenuTrigger","MenuItemShim","shimMenuProps","shimButtonProps","MenuButtonShim","forwardRef","props","_ref","variantProps","variantClassName","primary","shimProps","shimmedMenuProps","menuProps","items","map","item"],"
|
|
1
|
+
{"version":3,"sources":["../src/components/Button/MenuButtonShim.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport type { IButtonProps } from '@fluentui/react';\nimport { MenuButton, Menu, MenuList, MenuPopover, MenuTrigger } from '@fluentui/react-components';\nimport type { MenuButtonProps } from '@fluentui/react-components';\nimport { MenuItemShim, shimMenuProps } from '../Menu/index';\n\nimport { shimButtonProps } from './shimButtonProps';\n\nexport const MenuButtonShim: React.ForwardRefExoticComponent<\n IButtonProps &\n // eslint-disable-next-line @typescript-eslint/no-restricted-types -- this is expected in order to be compatible with v8, as every v8 interface contains `React.RefAttributes` to accept ref as string\n React.RefAttributes<HTMLButtonElement>\n> = React.forwardRef((props, _ref) => {\n const variantProps = {\n ...props,\n variantClassName: props.primary ? 'ms-Button--primary' : 'ms-Button--default',\n };\n\n const shimProps: MenuButtonProps = {\n ...shimButtonProps(variantProps),\n };\n\n const shimmedMenuProps = props.menuProps ? shimMenuProps(props.menuProps) : {};\n\n return (\n <Menu {...shimmedMenuProps}>\n <MenuTrigger>\n <MenuButton {...shimProps} />\n </MenuTrigger>\n <MenuPopover>\n <MenuList>\n {props.menuProps?.items.map(item => (\n // key is added through item spread\n // eslint-disable-next-line react/jsx-key\n <MenuItemShim {...item} />\n ))}\n </MenuList>\n </MenuPopover>\n </Menu>\n );\n});\n"],"names":["React","MenuButton","Menu","MenuList","MenuPopover","MenuTrigger","MenuItemShim","shimMenuProps","shimButtonProps","MenuButtonShim","forwardRef","props","_ref","variantProps","variantClassName","primary","shimProps","shimmedMenuProps","menuProps","items","map","item"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAG/B,SAASC,UAAU,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,WAAW,EAAEC,WAAW,QAAQ,6BAA6B;AAElG,SAASC,YAAY,EAAEC,aAAa,QAAQ,gBAAgB;AAE5D,SAASC,eAAe,QAAQ,oBAAoB;AAEpD,OAAO,MAAMC,+BAITT,MAAMU,UAAU,CAAC,CAACC,OAAOC;QAmBlBD;IAlBT,MAAME,eAAe;QACnB,GAAGF,KAAK;QACRG,kBAAkBH,MAAMI,OAAO,GAAG,uBAAuB;IAC3D;IAEA,MAAMC,YAA6B;QACjC,GAAGR,gBAAgBK,aAAa;IAClC;IAEA,MAAMI,mBAAmBN,MAAMO,SAAS,GAAGX,cAAcI,MAAMO,SAAS,IAAI,CAAC;IAE7E,qBACE,oBAAChB,MAASe,gCACR,oBAACZ,iCACC,oBAACJ,YAAee,2BAElB,oBAACZ,iCACC,oBAACD,iBACEQ,mBAAAA,MAAMO,SAAS,cAAfP,uCAAAA,iBAAiBQ,KAAK,CAACC,GAAG,CAACC,CAAAA,OAC1B,mCAAmC;QACnC,yCAAyC;sBACzC,oBAACf,cAAiBe;AAM9B,GAAG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Button/PrimaryButtonShim.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport type { IButtonProps } from '@fluentui/react';\nimport { ButtonShim } from './ButtonShim';\n\n/**\n * Shims v8 PrimaryButton to render a v9 Button\n */\nexport const PrimaryButtonShim: React.ForwardRefExoticComponent<\n IButtonProps &\n // eslint-disable-next-line @typescript-eslint/no-restricted-types -- this is expected in order to be compatible with v8, as every v8 interface contains `React.RefAttributes` to accept ref as string\n React.RefAttributes<HTMLButtonElement>\n> = React.forwardRef((props, _ref) => {\n return <ButtonShim {...props} primary variantClassName=\"ms-Button--primary\" />;\n});\n"],"names":["React","ButtonShim","PrimaryButtonShim","forwardRef","props","_ref","primary","variantClassName"],"
|
|
1
|
+
{"version":3,"sources":["../src/components/Button/PrimaryButtonShim.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport type { IButtonProps } from '@fluentui/react';\nimport { ButtonShim } from './ButtonShim';\n\n/**\n * Shims v8 PrimaryButton to render a v9 Button\n */\nexport const PrimaryButtonShim: React.ForwardRefExoticComponent<\n IButtonProps &\n // eslint-disable-next-line @typescript-eslint/no-restricted-types -- this is expected in order to be compatible with v8, as every v8 interface contains `React.RefAttributes` to accept ref as string\n React.RefAttributes<HTMLButtonElement>\n> = React.forwardRef((props, _ref) => {\n return <ButtonShim {...props} primary variantClassName=\"ms-Button--primary\" />;\n});\n"],"names":["React","ButtonShim","PrimaryButtonShim","forwardRef","props","_ref","primary","variantClassName"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAG/B,SAASC,UAAU,QAAQ,eAAe;AAE1C;;CAEC,GACD,OAAO,MAAMC,kCAITF,MAAMG,UAAU,CAAC,CAACC,OAAOC;IAC3B,qBAAO,oBAACJ;QAAY,GAAGG,KAAK;QAAEE,SAAAA;QAAQC,kBAAiB;;AACzD,GAAG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Button/ToggleButtonShim.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport type { IButtonProps } from '@fluentui/react';\n\nimport { ToggleButton } from '@fluentui/react-components';\nimport type { ToggleButtonProps } from '@fluentui/react-components';\nimport type { RefAttributes } from '@fluentui/react-utilities';\n\nimport { shimButtonProps } from './shimButtonProps';\n\n/**\n * Shims v8 ToggleButton to render a v9 ToggleButton\n */\nexport const ToggleButtonShim: React.ForwardRefExoticComponent<\n IButtonProps &\n // eslint-disable-next-line @typescript-eslint/no-restricted-types -- this is expected in order to be compatible with v8, as every v8 interface contains `React.RefAttributes` to accept ref as string\n React.RefAttributes<HTMLButtonElement>\n> = React.forwardRef((props, _ref) => {\n const variantProps = {\n ...props,\n variantClassName: props.primary ? 'ms-Button--compoundPrimary' : 'ms-Button--compound',\n };\n\n const shimProps: ToggleButtonProps = {\n ...shimButtonProps(variantProps),\n checked: props.checked,\n defaultChecked: props.defaultChecked,\n };\n\n return <ToggleButton {...(props as RefAttributes<HTMLButtonElement>)} {...shimProps} />;\n});\n"],"names":["React","ToggleButton","shimButtonProps","ToggleButtonShim","forwardRef","props","_ref","variantProps","variantClassName","primary","shimProps","checked","defaultChecked"],"
|
|
1
|
+
{"version":3,"sources":["../src/components/Button/ToggleButtonShim.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport type { IButtonProps } from '@fluentui/react';\n\nimport { ToggleButton } from '@fluentui/react-components';\nimport type { ToggleButtonProps } from '@fluentui/react-components';\nimport type { RefAttributes } from '@fluentui/react-utilities';\n\nimport { shimButtonProps } from './shimButtonProps';\n\n/**\n * Shims v8 ToggleButton to render a v9 ToggleButton\n */\nexport const ToggleButtonShim: React.ForwardRefExoticComponent<\n IButtonProps &\n // eslint-disable-next-line @typescript-eslint/no-restricted-types -- this is expected in order to be compatible with v8, as every v8 interface contains `React.RefAttributes` to accept ref as string\n React.RefAttributes<HTMLButtonElement>\n> = React.forwardRef((props, _ref) => {\n const variantProps = {\n ...props,\n variantClassName: props.primary ? 'ms-Button--compoundPrimary' : 'ms-Button--compound',\n };\n\n const shimProps: ToggleButtonProps = {\n ...shimButtonProps(variantProps),\n checked: props.checked,\n defaultChecked: props.defaultChecked,\n };\n\n return <ToggleButton {...(props as RefAttributes<HTMLButtonElement>)} {...shimProps} />;\n});\n"],"names":["React","ToggleButton","shimButtonProps","ToggleButtonShim","forwardRef","props","_ref","variantProps","variantClassName","primary","shimProps","checked","defaultChecked"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAI/B,SAASC,YAAY,QAAQ,6BAA6B;AAI1D,SAASC,eAAe,QAAQ,oBAAoB;AAEpD;;CAEC,GACD,OAAO,MAAMC,iCAITH,MAAMI,UAAU,CAAC,CAACC,OAAOC;IAC3B,MAAMC,eAAe;QACnB,GAAGF,KAAK;QACRG,kBAAkBH,MAAMI,OAAO,GAAG,+BAA+B;IACnE;IAEA,MAAMC,YAA+B;QACnC,GAAGR,gBAAgBK,aAAa;QAChCI,SAASN,MAAMM,OAAO;QACtBC,gBAAgBP,MAAMO,cAAc;IACtC;IAEA,qBAAO,oBAACX;QAAc,GAAII,KAAK;QAAwC,GAAGK,SAAS;;AACrF,GAAG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Button/index.ts"],"sourcesContent":["export { ActionButtonShim } from './ActionButtonShim';\nexport { ButtonShim } from './ButtonShim';\nexport { CommandButtonShim } from './CommandButtonShim';\nexport { CompoundButtonShim } from './CompoundButtonShim';\nexport { DefaultButtonShim } from './DefaultButtonShim';\nexport { MenuButtonShim } from './MenuButtonShim';\nexport { PrimaryButtonShim } from './PrimaryButtonShim';\nexport { shimButtonProps } from './shimButtonProps';\nexport { ToggleButtonShim } from './ToggleButtonShim';\n"],"names":["ActionButtonShim","ButtonShim","CommandButtonShim","CompoundButtonShim","DefaultButtonShim","MenuButtonShim","PrimaryButtonShim","shimButtonProps","ToggleButtonShim"],"
|
|
1
|
+
{"version":3,"sources":["../src/components/Button/index.ts"],"sourcesContent":["export { ActionButtonShim } from './ActionButtonShim';\nexport { ButtonShim } from './ButtonShim';\nexport { CommandButtonShim } from './CommandButtonShim';\nexport { CompoundButtonShim } from './CompoundButtonShim';\nexport { DefaultButtonShim } from './DefaultButtonShim';\nexport { MenuButtonShim } from './MenuButtonShim';\nexport { PrimaryButtonShim } from './PrimaryButtonShim';\nexport { shimButtonProps } from './shimButtonProps';\nexport { ToggleButtonShim } from './ToggleButtonShim';\n"],"names":["ActionButtonShim","ButtonShim","CommandButtonShim","CompoundButtonShim","DefaultButtonShim","MenuButtonShim","PrimaryButtonShim","shimButtonProps","ToggleButtonShim"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,qBAAqB;AACtD,SAASC,UAAU,QAAQ,eAAe;AAC1C,SAASC,iBAAiB,QAAQ,sBAAsB;AACxD,SAASC,kBAAkB,QAAQ,uBAAuB;AAC1D,SAASC,iBAAiB,QAAQ,sBAAsB;AACxD,SAASC,cAAc,QAAQ,mBAAmB;AAClD,SAASC,iBAAiB,QAAQ,sBAAsB;AACxD,SAASC,eAAe,QAAQ,oBAAoB;AACpD,SAASC,gBAAgB,QAAQ,qBAAqB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Button/shimButtonProps.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Icon } from '@fluentui/react';\nimport type { IBaseButtonProps } from '@fluentui/react';\n\nimport type { ButtonProps } from '@fluentui/react-components';\n\nexport const shimButtonProps = (\n props: IBaseButtonProps &\n // eslint-disable-next-line @typescript-eslint/no-restricted-types -- this is expected in order to be compatible with v8, as every v8 interface contains `React.RefAttributes` to accept ref as string\n React.RefAttributes<HTMLButtonElement>,\n): ButtonProps => {\n //TODO: Icon shim. This still renders the v8 icon.\n const icon = props.onRenderIcon ? (\n props.onRenderIcon(props)\n ) : props.iconProps ? (\n <Icon {...props.iconProps} />\n ) : undefined;\n\n const variantClassName = props.variantClassName ?? props.primary ? 'ms-Button--primary' : 'ms-Button--default';\n const className = [props.baseClassName, variantClassName, props.className].filter(Boolean).join(' ');\n\n return {\n // spread incoming props to propagate HTML properties not part of IBaseButtonProps\n ...props,\n appearance: props.primary ? 'primary' : undefined,\n className,\n disabled: props.disabled,\n disabledFocusable: props.allowDisabledFocus,\n 'aria-hidden': props.ariaHidden,\n 'aria-label': props.ariaLabel,\n icon,\n key: props.key || props.uniqueId,\n children: props.onRenderChildren\n ? props.onRenderChildren(props)\n : props.onRenderText\n ? props.onRenderText(props)\n : props.text || props.children,\n } as ButtonProps;\n};\n"],"names":["React","Icon","shimButtonProps","props","icon","onRenderIcon","iconProps","undefined","variantClassName","primary","className","baseClassName","filter","Boolean","join","appearance","disabled","disabledFocusable","allowDisabledFocus","ariaHidden","ariaLabel","key","uniqueId","children","onRenderChildren","onRenderText","text"],"
|
|
1
|
+
{"version":3,"sources":["../src/components/Button/shimButtonProps.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Icon } from '@fluentui/react';\nimport type { IBaseButtonProps } from '@fluentui/react';\n\nimport type { ButtonProps } from '@fluentui/react-components';\n\nexport const shimButtonProps = (\n props: IBaseButtonProps &\n // eslint-disable-next-line @typescript-eslint/no-restricted-types -- this is expected in order to be compatible with v8, as every v8 interface contains `React.RefAttributes` to accept ref as string\n React.RefAttributes<HTMLButtonElement>,\n): ButtonProps => {\n //TODO: Icon shim. This still renders the v8 icon.\n const icon = props.onRenderIcon ? (\n props.onRenderIcon(props)\n ) : props.iconProps ? (\n <Icon {...props.iconProps} />\n ) : undefined;\n\n const variantClassName = props.variantClassName ?? props.primary ? 'ms-Button--primary' : 'ms-Button--default';\n const className = [props.baseClassName, variantClassName, props.className].filter(Boolean).join(' ');\n\n return {\n // spread incoming props to propagate HTML properties not part of IBaseButtonProps\n ...props,\n appearance: props.primary ? 'primary' : undefined,\n className,\n disabled: props.disabled,\n disabledFocusable: props.allowDisabledFocus,\n 'aria-hidden': props.ariaHidden,\n 'aria-label': props.ariaLabel,\n icon,\n key: props.key || props.uniqueId,\n children: props.onRenderChildren\n ? props.onRenderChildren(props)\n : props.onRenderText\n ? props.onRenderText(props)\n : props.text || props.children,\n } as ButtonProps;\n};\n"],"names":["React","Icon","shimButtonProps","props","icon","onRenderIcon","iconProps","undefined","variantClassName","primary","className","baseClassName","filter","Boolean","join","appearance","disabled","disabledFocusable","allowDisabledFocus","ariaHidden","ariaLabel","key","uniqueId","children","onRenderChildren","onRenderText","text"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAE/B,SAASC,IAAI,QAAQ,kBAAkB;AAKvC,OAAO,MAAMC,kBAAkB,CAC7BC;IAIA,kDAAkD;IAClD,MAAMC,OAAOD,MAAME,YAAY,GAC7BF,MAAME,YAAY,CAACF,SACjBA,MAAMG,SAAS,iBACjB,oBAACL,MAASE,MAAMG,SAAS,IACvBC;QAEqBJ;IAAzB,MAAMK,mBAAmBL,CAAAA,CAAAA,0BAAAA,MAAMK,gBAAgB,cAAtBL,qCAAAA,0BAA0BA,MAAMM,OAAO,AAAD,IAAI,uBAAuB;IAC1F,MAAMC,YAAY;QAACP,MAAMQ,aAAa;QAAEH;QAAkBL,MAAMO,SAAS;KAAC,CAACE,MAAM,CAACC,SAASC,IAAI,CAAC;IAEhG,OAAO;QACL,kFAAkF;QAClF,GAAGX,KAAK;QACRY,YAAYZ,MAAMM,OAAO,GAAG,YAAYF;QACxCG;QACAM,UAAUb,MAAMa,QAAQ;QACxBC,mBAAmBd,MAAMe,kBAAkB;QAC3C,eAAef,MAAMgB,UAAU;QAC/B,cAAchB,MAAMiB,SAAS;QAC7BhB;QACAiB,KAAKlB,MAAMkB,GAAG,IAAIlB,MAAMmB,QAAQ;QAChCC,UAAUpB,MAAMqB,gBAAgB,GAC5BrB,MAAMqB,gBAAgB,CAACrB,SACvBA,MAAMsB,YAAY,GAClBtB,MAAMsB,YAAY,CAACtB,SACnBA,MAAMuB,IAAI,IAAIvB,MAAMoB,QAAQ;IAClC;AACF,EAAE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/Checkbox/Checkbox.styles.ts"],"sourcesContent":["import { makeStyles } from '@fluentui/react-components';\n\nexport const useCheckboxStyles = makeStyles({\n root: {\n display: 'flex',\n },\n});\n"],"names":["makeStyles","useCheckboxStyles","root","display"],"mappings":"AAAA,SAASA,UAAU,QAAQ,6BAA6B;AAExD,OAAO,MAAMC,oBAAoBD,WAAW;IAC1CE,MAAM;QACJC,SAAS;IACX;AACF,GAAG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Checkbox/CheckboxShim.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { classNamesFunction, ICheckboxProps, ICheckboxStyles, ICheckboxStyleProps } from '@fluentui/react';\nimport { Checkbox, mergeClasses } from '@fluentui/react-components';\nimport { useCheckboxProps } from './shimCheckboxProps';\nimport { useCheckboxStyles } from './Checkbox.styles';\n\nconst getClassNames = classNamesFunction<ICheckboxStyleProps, ICheckboxStyles>({\n useStaticStyles: false,\n});\n\nexport const CheckboxShim = React.forwardRef((props, _ref) => {\n 'use no memo';\n\n const { className, styles: stylesV8, onRenderLabel, label, componentRef } = props;\n const shimProps = useCheckboxProps(props);\n const styles = getClassNames(stylesV8);\n const stylesV9 = useCheckboxStyles();\n const checkboxRef = (_ref as React.RefObject<HTMLInputElement>) || React.createRef<HTMLInputElement>();\n\n React.useImperativeHandle(componentRef, () => ({\n checked: checkboxRef.current?.checked ?? false,\n indeterminate: checkboxRef.current?.indeterminate ?? false,\n focus: () => checkboxRef.current?.focus(),\n }));\n\n const defaultLabelRenderer = (\n checkboxProps?: ICheckboxProps,\n ): // eslint-disable-next-line @typescript-eslint/no-deprecated\n JSX.Element | null => {\n if (!checkboxProps) {\n return null;\n }\n const { label: defaultLabel, title } = checkboxProps;\n return defaultLabel ? (\n <span title={title} className={styles.text}>\n {defaultLabel}\n </span>\n ) : null;\n };\n\n if (label || onRenderLabel) {\n shimProps.label = {\n className: mergeClasses('ms-Checkbox-text', styles.label, styles.text),\n children: onRenderLabel ? onRenderLabel(props, defaultLabelRenderer) : label,\n };\n }\n\n return (\n <Checkbox\n {...shimProps}\n ref={checkboxRef}\n className={mergeClasses(stylesV9.root, 'ms-Checkbox', className, styles.root)}\n indicator={{ className: mergeClasses('ms-Checkbox-checkbox', styles.checkbox) }}\n />\n );\n // NOTE: cast is necessary as `ICheckboxProps` extends React.Ref<HTMLDivElement> which is not compatible with our defined React.Ref<HTMLInputElement>\n}) as React.ForwardRefExoticComponent<\n ICheckboxProps &\n // eslint-disable-next-line @typescript-eslint/no-restricted-types -- this is expected in order to be compatible with v8, as every v8 interface contains `React.RefAttributes` to accept ref as string\n React.RefAttributes<HTMLInputElement>\n>;\n\nCheckboxShim.displayName = 'CheckboxShim';\n"],"names":["React","classNamesFunction","Checkbox","mergeClasses","useCheckboxProps","useCheckboxStyles","getClassNames","useStaticStyles","CheckboxShim","forwardRef","props","_ref","className","styles","stylesV8","onRenderLabel","label","componentRef","shimProps","stylesV9","checkboxRef","createRef","useImperativeHandle","checked","current","indeterminate","focus","defaultLabelRenderer","checkboxProps","defaultLabel","title","span","text","children","ref","root","indicator","checkbox","displayName"],"
|
|
1
|
+
{"version":3,"sources":["../src/components/Checkbox/CheckboxShim.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { classNamesFunction, ICheckboxProps, ICheckboxStyles, ICheckboxStyleProps } from '@fluentui/react';\nimport { Checkbox, mergeClasses } from '@fluentui/react-components';\nimport { useCheckboxProps } from './shimCheckboxProps';\nimport { useCheckboxStyles } from './Checkbox.styles';\n\nconst getClassNames = classNamesFunction<ICheckboxStyleProps, ICheckboxStyles>({\n useStaticStyles: false,\n});\n\nexport const CheckboxShim = React.forwardRef((props, _ref) => {\n 'use no memo';\n\n const { className, styles: stylesV8, onRenderLabel, label, componentRef } = props;\n const shimProps = useCheckboxProps(props);\n const styles = getClassNames(stylesV8);\n const stylesV9 = useCheckboxStyles();\n const checkboxRef = (_ref as React.RefObject<HTMLInputElement>) || React.createRef<HTMLInputElement>();\n\n React.useImperativeHandle(componentRef, () => ({\n checked: checkboxRef.current?.checked ?? false,\n indeterminate: checkboxRef.current?.indeterminate ?? false,\n focus: () => checkboxRef.current?.focus(),\n }));\n\n const defaultLabelRenderer = (\n checkboxProps?: ICheckboxProps,\n ): // eslint-disable-next-line @typescript-eslint/no-deprecated\n JSX.Element | null => {\n if (!checkboxProps) {\n return null;\n }\n const { label: defaultLabel, title } = checkboxProps;\n return defaultLabel ? (\n <span title={title} className={styles.text}>\n {defaultLabel}\n </span>\n ) : null;\n };\n\n if (label || onRenderLabel) {\n shimProps.label = {\n className: mergeClasses('ms-Checkbox-text', styles.label, styles.text),\n children: onRenderLabel ? onRenderLabel(props, defaultLabelRenderer) : label,\n };\n }\n\n return (\n <Checkbox\n {...shimProps}\n ref={checkboxRef}\n className={mergeClasses(stylesV9.root, 'ms-Checkbox', className, styles.root)}\n indicator={{ className: mergeClasses('ms-Checkbox-checkbox', styles.checkbox) }}\n />\n );\n // NOTE: cast is necessary as `ICheckboxProps` extends React.Ref<HTMLDivElement> which is not compatible with our defined React.Ref<HTMLInputElement>\n}) as React.ForwardRefExoticComponent<\n ICheckboxProps &\n // eslint-disable-next-line @typescript-eslint/no-restricted-types -- this is expected in order to be compatible with v8, as every v8 interface contains `React.RefAttributes` to accept ref as string\n React.RefAttributes<HTMLInputElement>\n>;\n\nCheckboxShim.displayName = 'CheckboxShim';\n"],"names":["React","classNamesFunction","Checkbox","mergeClasses","useCheckboxProps","useCheckboxStyles","getClassNames","useStaticStyles","CheckboxShim","forwardRef","props","_ref","className","styles","stylesV8","onRenderLabel","label","componentRef","shimProps","stylesV9","checkboxRef","createRef","useImperativeHandle","checked","current","indeterminate","focus","defaultLabelRenderer","checkboxProps","defaultLabel","title","span","text","children","ref","root","indicator","checkbox","displayName"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAE/B,SAASC,kBAAkB,QAA8D,kBAAkB;AAC3G,SAASC,QAAQ,EAAEC,YAAY,QAAQ,6BAA6B;AACpE,SAASC,gBAAgB,QAAQ,sBAAsB;AACvD,SAASC,iBAAiB,QAAQ,oBAAoB;AAEtD,MAAMC,gBAAgBL,mBAAyD;IAC7EM,iBAAiB;AACnB;AAEA,OAAO,MAAMC,6BAAeR,MAAMS,UAAU,CAAC,CAACC,OAAOC;IACnD;IAEA,MAAM,EAAEC,SAAS,EAAEC,QAAQC,QAAQ,EAAEC,aAAa,EAAEC,KAAK,EAAEC,YAAY,EAAE,GAAGP;IAC5E,MAAMQ,YAAYd,iBAAiBM;IACnC,MAAMG,SAASP,cAAcQ;IAC7B,MAAMK,WAAWd;IACjB,MAAMe,cAAc,AAACT,sBAA8CX,MAAMqB,SAAS;IAElFrB,MAAMsB,mBAAmB,CAACL,cAAc;YAC7BG,sBACMA;YADNA,8BACMA;eAF8B;YAC7CG,SAASH,CAAAA,gCAAAA,uBAAAA,YAAYI,OAAO,cAAnBJ,2CAAAA,qBAAqBG,OAAO,cAA5BH,0CAAAA,+BAAgC;YACzCK,eAAeL,CAAAA,sCAAAA,wBAAAA,YAAYI,OAAO,cAAnBJ,4CAAAA,sBAAqBK,aAAa,cAAlCL,gDAAAA,qCAAsC;YACrDM,OAAO;oBAAMN;wBAAAA,uBAAAA,YAAYI,OAAO,cAAnBJ,2CAAAA,qBAAqBM,KAAK;;QACzC;;IAEA,MAAMC,uBAAuB,CAC3BC;QAGA,IAAI,CAACA,eAAe;YAClB,OAAO;QACT;QACA,MAAM,EAAEZ,OAAOa,YAAY,EAAEC,KAAK,EAAE,GAAGF;QACvC,OAAOC,6BACL,oBAACE;YAAKD,OAAOA;YAAOlB,WAAWC,OAAOmB,IAAI;WACvCH,gBAED;IACN;IAEA,IAAIb,SAASD,eAAe;QAC1BG,UAAUF,KAAK,GAAG;YAChBJ,WAAWT,aAAa,oBAAoBU,OAAOG,KAAK,EAAEH,OAAOmB,IAAI;YACrEC,UAAUlB,gBAAgBA,cAAcL,OAAOiB,wBAAwBX;QACzE;IACF;IAEA,qBACE,oBAACd;QACE,GAAGgB,SAAS;QACbgB,KAAKd;QACLR,WAAWT,aAAagB,SAASgB,IAAI,EAAE,eAAevB,WAAWC,OAAOsB,IAAI;QAC5EC,WAAW;YAAExB,WAAWT,aAAa,wBAAwBU,OAAOwB,QAAQ;QAAE;;AAGlF,sJAAsJ;AACxJ,GAIE;AAEF7B,aAAa8B,WAAW,GAAG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Checkbox/index.ts"],"sourcesContent":["export { CheckboxShim } from './CheckboxShim';\n"],"names":["CheckboxShim"],"
|
|
1
|
+
{"version":3,"sources":["../src/components/Checkbox/index.ts"],"sourcesContent":["export { CheckboxShim } from './CheckboxShim';\n"],"names":["CheckboxShim"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Checkbox/shimCheckboxProps.ts"],"sourcesContent":["import * as React from 'react';\n\nimport { ICheckboxProps } from '@fluentui/react';\nimport { CheckboxProps, CheckboxOnChangeData } from '@fluentui/react-components';\nimport { useControllableValue } from '@fluentui/react-hooks';\nimport { getHTMLAttributes } from '../utils';\n\n// https://react.fluentui.dev/?path=/docs/concepts-migration-from-v8-components-checkbox-migration--docs [Link of the fluent v9 migration guide]\n// https://github.com/microsoft/fluentui/blob/master/packages/react/src/components/Checkbox/Checkbox.types.ts [Link of the fluent v8 checkbox types definition]\n// https://github.com/microsoft/fluentui/blob/103b8977f8d5f8dd8c430bab46ff5308a2c76371/packages/react-components/react-checkbox/src/components/Checkbox/Checkbox.types.ts [Link of the fluent v9 checkbox types definition]\n\nconst CHECKBOX_PROPS_V8: Set<string> = new Set([\n 'ariaDescribedBy',\n 'ariaLabel',\n 'ariaLabelledBy',\n 'ariaPositionInSet',\n 'ariaSetSize',\n 'boxSide',\n 'checked',\n 'checkmarkIconProps', // one case used this\n 'className',\n 'componentRef',\n 'defaultChecked',\n 'defaultIndeterminate',\n 'disabled',\n 'indeterminate',\n 'inputProps',\n 'label',\n 'name',\n 'onChange',\n 'onRenderLabel',\n 'required',\n 'styles',\n 'theme',\n 'title',\n]);\n\nexport const useCheckboxProps = (props: ICheckboxProps): CheckboxProps => {\n const {\n ariaDescribedBy,\n ariaLabel,\n ariaLabelledBy,\n ariaPositionInSet,\n ariaSetSize,\n boxSide,\n checked: checkedV8,\n indeterminate,\n defaultChecked,\n defaultIndeterminate,\n disabled,\n inputProps,\n name,\n required,\n title,\n onChange: onChangeV8,\n } = props;\n\n const [checked, setChecked] = useControllableValue(checkedV8, defaultChecked);\n const [mixed, setMixed] = React.useState(indeterminate || defaultIndeterminate);\n\n const onChange = React.useCallback(\n (event: React.ChangeEvent<HTMLElement>, data: CheckboxOnChangeData): void => {\n let val: boolean | undefined = checked !== undefined ? (data.checked as boolean) : undefined;\n // Ensure the checkbox is controlled\n if (checked !== undefined) {\n if (mixed) {\n val = checkedV8 !== undefined ? checkedV8 : defaultChecked !== undefined ? defaultChecked : val;\n }\n }\n\n if (mixed) {\n setMixed(mixed && !indeterminate ? false : mixed);\n }\n\n setChecked(val);\n onChangeV8?.(event, data.checked as boolean);\n },\n [setChecked, checked, onChangeV8, mixed, indeterminate, checkedV8, defaultChecked],\n );\n\n const v9Props: Partial<CheckboxProps> = {\n checked: mixed ? 'mixed' : checked,\n defaultChecked: mixed ? 'mixed' : defaultChecked,\n labelPosition: boxSide === 'end' ? 'before' : 'after',\n disabled,\n required,\n title,\n name,\n onChange,\n };\n\n return {\n ...inputProps, // This inputProps is specific for the input element, and the html attributes are also used here instead of props.\n 'aria-describedby': ariaDescribedBy,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n 'aria-posinset': ariaPositionInSet,\n 'aria-setsize': ariaSetSize,\n ...v9Props,\n ...getHTMLAttributes(props, CHECKBOX_PROPS_V8),\n } as CheckboxProps;\n};\n"],"names":["React","useControllableValue","getHTMLAttributes","CHECKBOX_PROPS_V8","Set","useCheckboxProps","props","ariaDescribedBy","ariaLabel","ariaLabelledBy","ariaPositionInSet","ariaSetSize","boxSide","checked","checkedV8","indeterminate","defaultChecked","defaultIndeterminate","disabled","inputProps","name","required","title","onChange","onChangeV8","setChecked","mixed","setMixed","useState","useCallback","event","data","val","undefined","v9Props","labelPosition"],"
|
|
1
|
+
{"version":3,"sources":["../src/components/Checkbox/shimCheckboxProps.ts"],"sourcesContent":["import * as React from 'react';\n\nimport { ICheckboxProps } from '@fluentui/react';\nimport { CheckboxProps, CheckboxOnChangeData } from '@fluentui/react-components';\nimport { useControllableValue } from '@fluentui/react-hooks';\nimport { getHTMLAttributes } from '../utils';\n\n// https://react.fluentui.dev/?path=/docs/concepts-migration-from-v8-components-checkbox-migration--docs [Link of the fluent v9 migration guide]\n// https://github.com/microsoft/fluentui/blob/master/packages/react/src/components/Checkbox/Checkbox.types.ts [Link of the fluent v8 checkbox types definition]\n// https://github.com/microsoft/fluentui/blob/103b8977f8d5f8dd8c430bab46ff5308a2c76371/packages/react-components/react-checkbox/src/components/Checkbox/Checkbox.types.ts [Link of the fluent v9 checkbox types definition]\n\nconst CHECKBOX_PROPS_V8: Set<string> = new Set([\n 'ariaDescribedBy',\n 'ariaLabel',\n 'ariaLabelledBy',\n 'ariaPositionInSet',\n 'ariaSetSize',\n 'boxSide',\n 'checked',\n 'checkmarkIconProps', // one case used this\n 'className',\n 'componentRef',\n 'defaultChecked',\n 'defaultIndeterminate',\n 'disabled',\n 'indeterminate',\n 'inputProps',\n 'label',\n 'name',\n 'onChange',\n 'onRenderLabel',\n 'required',\n 'styles',\n 'theme',\n 'title',\n]);\n\nexport const useCheckboxProps = (props: ICheckboxProps): CheckboxProps => {\n const {\n ariaDescribedBy,\n ariaLabel,\n ariaLabelledBy,\n ariaPositionInSet,\n ariaSetSize,\n boxSide,\n checked: checkedV8,\n indeterminate,\n defaultChecked,\n defaultIndeterminate,\n disabled,\n inputProps,\n name,\n required,\n title,\n onChange: onChangeV8,\n } = props;\n\n const [checked, setChecked] = useControllableValue(checkedV8, defaultChecked);\n const [mixed, setMixed] = React.useState(indeterminate || defaultIndeterminate);\n\n const onChange = React.useCallback(\n (event: React.ChangeEvent<HTMLElement>, data: CheckboxOnChangeData): void => {\n let val: boolean | undefined = checked !== undefined ? (data.checked as boolean) : undefined;\n // Ensure the checkbox is controlled\n if (checked !== undefined) {\n if (mixed) {\n val = checkedV8 !== undefined ? checkedV8 : defaultChecked !== undefined ? defaultChecked : val;\n }\n }\n\n if (mixed) {\n setMixed(mixed && !indeterminate ? false : mixed);\n }\n\n setChecked(val);\n onChangeV8?.(event, data.checked as boolean);\n },\n [setChecked, checked, onChangeV8, mixed, indeterminate, checkedV8, defaultChecked],\n );\n\n const v9Props: Partial<CheckboxProps> = {\n checked: mixed ? 'mixed' : checked,\n defaultChecked: mixed ? 'mixed' : defaultChecked,\n labelPosition: boxSide === 'end' ? 'before' : 'after',\n disabled,\n required,\n title,\n name,\n onChange,\n };\n\n return {\n ...inputProps, // This inputProps is specific for the input element, and the html attributes are also used here instead of props.\n 'aria-describedby': ariaDescribedBy,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n 'aria-posinset': ariaPositionInSet,\n 'aria-setsize': ariaSetSize,\n ...v9Props,\n ...getHTMLAttributes(props, CHECKBOX_PROPS_V8),\n } as CheckboxProps;\n};\n"],"names":["React","useControllableValue","getHTMLAttributes","CHECKBOX_PROPS_V8","Set","useCheckboxProps","props","ariaDescribedBy","ariaLabel","ariaLabelledBy","ariaPositionInSet","ariaSetSize","boxSide","checked","checkedV8","indeterminate","defaultChecked","defaultIndeterminate","disabled","inputProps","name","required","title","onChange","onChangeV8","setChecked","mixed","setMixed","useState","useCallback","event","data","val","undefined","v9Props","labelPosition"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAI/B,SAASC,oBAAoB,QAAQ,wBAAwB;AAC7D,SAASC,iBAAiB,QAAQ,WAAW;AAE7C,gJAAgJ;AAChJ,+JAA+J;AAC/J,2NAA2N;AAE3N,MAAMC,oBAAiC,IAAIC,IAAI;IAC7C;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACD;AAED,OAAO,MAAMC,mBAAmB,CAACC;IAC/B,MAAM,EACJC,eAAe,EACfC,SAAS,EACTC,cAAc,EACdC,iBAAiB,EACjBC,WAAW,EACXC,OAAO,EACPC,SAASC,SAAS,EAClBC,aAAa,EACbC,cAAc,EACdC,oBAAoB,EACpBC,QAAQ,EACRC,UAAU,EACVC,IAAI,EACJC,QAAQ,EACRC,KAAK,EACLC,UAAUC,UAAU,EACrB,GAAGlB;IAEJ,MAAM,CAACO,SAASY,WAAW,GAAGxB,qBAAqBa,WAAWE;IAC9D,MAAM,CAACU,OAAOC,SAAS,GAAG3B,MAAM4B,QAAQ,CAACb,iBAAiBE;IAE1D,MAAMM,WAAWvB,MAAM6B,WAAW,CAChC,CAACC,OAAuCC;QACtC,IAAIC,MAA2BnB,YAAYoB,YAAaF,KAAKlB,OAAO,GAAeoB;QACnF,oCAAoC;QACpC,IAAIpB,YAAYoB,WAAW;YACzB,IAAIP,OAAO;gBACTM,MAAMlB,cAAcmB,YAAYnB,YAAYE,mBAAmBiB,YAAYjB,iBAAiBgB;YAC9F;QACF;QAEA,IAAIN,OAAO;YACTC,SAASD,SAAS,CAACX,gBAAgB,QAAQW;QAC7C;QAEAD,WAAWO;QACXR,uBAAAA,iCAAAA,WAAaM,OAAOC,KAAKlB,OAAO;IAClC,GACA;QAACY;QAAYZ;QAASW;QAAYE;QAAOX;QAAeD;QAAWE;KAAe;IAGpF,MAAMkB,UAAkC;QACtCrB,SAASa,QAAQ,UAAUb;QAC3BG,gBAAgBU,QAAQ,UAAUV;QAClCmB,eAAevB,YAAY,QAAQ,WAAW;QAC9CM;QACAG;QACAC;QACAF;QACAG;IACF;IAEA,OAAO;QACL,GAAGJ,UAAU;QACb,oBAAoBZ;QACpB,cAAcC;QACd,mBAAmBC;QACnB,iBAAiBC;QACjB,gBAAgBC;QAChB,GAAGuB,OAAO;QACV,GAAGhC,kBAAkBI,OAAOH,kBAAkB;IAChD;AACF,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Menu/MenuShim.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { ContextualMenuItemType } from '@fluentui/react';\nimport type { IContextualMenuItem } from '@fluentui/react';\nimport {\n MenuItem,\n MenuDivider,\n MenuGroup,\n MenuGroupHeader,\n MenuTrigger,\n Menu,\n MenuList,\n MenuPopover,\n MenuItemCheckbox,\n MenuDividerProps,\n} from '@fluentui/react-components';\n\nimport { shimMenuHeaderProps, shimMenuItemCheckboxProps, shimMenuItemProps, shimMenuProps } from './shimMenuProps';\n\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport const MenuItemShim = (props: IContextualMenuItem): JSX.Element => {\n if (props.itemType === ContextualMenuItemType.Divider) {\n const shimProps = shimMenuItemProps(props);\n return <MenuDivider {...(shimProps as MenuDividerProps)} />;\n }\n\n if (props.itemType === ContextualMenuItemType.Section) {\n const shimProps = shimMenuHeaderProps(props);\n return (\n <MenuGroup>\n <MenuGroupHeader>{shimProps.children}</MenuGroupHeader>\n {/* //TODO: sectionProps handling */}\n {props.subMenuProps?.items.map(item => (\n // key is added through item spread\n // eslint-disable-next-line react/jsx-key\n <MenuItemShim {...item} />\n ))}\n </MenuGroup>\n );\n }\n\n if (props.canCheck) {\n const shimProps = shimMenuItemCheckboxProps(props);\n return <MenuItemCheckbox {...shimProps} />;\n }\n\n // Nested Menu to handle submenus\n if (props.subMenuProps?.items && props.subMenuProps.items.length > 0) {\n const shimmedMenuProps = shimMenuProps(props.subMenuProps);\n const shimmedItemProps = shimMenuItemProps(props);\n\n return (\n <Menu {...shimmedMenuProps}>\n <MenuTrigger>\n <MenuItem {...shimmedItemProps} hasSubmenu />\n </MenuTrigger>\n <MenuPopover>\n <MenuList>\n {props.subMenuProps.items.map(item => (\n // key is added through item spread\n // eslint-disable-next-line react/jsx-key\n <MenuItemShim {...item} />\n ))}\n </MenuList>\n </MenuPopover>\n </Menu>\n );\n }\n\n const shimProps = shimMenuItemProps(props);\n return <MenuItem {...shimProps} />;\n};\n"],"names":["React","ContextualMenuItemType","MenuItem","MenuDivider","MenuGroup","MenuGroupHeader","MenuTrigger","Menu","MenuList","MenuPopover","MenuItemCheckbox","shimMenuHeaderProps","shimMenuItemCheckboxProps","shimMenuItemProps","shimMenuProps","MenuItemShim","props","itemType","Divider","shimProps","Section","children","subMenuProps","items","map","item","canCheck","length","shimmedMenuProps","shimmedItemProps","hasSubmenu"],"
|
|
1
|
+
{"version":3,"sources":["../src/components/Menu/MenuShim.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { ContextualMenuItemType } from '@fluentui/react';\nimport type { IContextualMenuItem } from '@fluentui/react';\nimport {\n MenuItem,\n MenuDivider,\n MenuGroup,\n MenuGroupHeader,\n MenuTrigger,\n Menu,\n MenuList,\n MenuPopover,\n MenuItemCheckbox,\n MenuDividerProps,\n} from '@fluentui/react-components';\n\nimport { shimMenuHeaderProps, shimMenuItemCheckboxProps, shimMenuItemProps, shimMenuProps } from './shimMenuProps';\n\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport const MenuItemShim = (props: IContextualMenuItem): JSX.Element => {\n if (props.itemType === ContextualMenuItemType.Divider) {\n const shimProps = shimMenuItemProps(props);\n return <MenuDivider {...(shimProps as MenuDividerProps)} />;\n }\n\n if (props.itemType === ContextualMenuItemType.Section) {\n const shimProps = shimMenuHeaderProps(props);\n return (\n <MenuGroup>\n <MenuGroupHeader>{shimProps.children}</MenuGroupHeader>\n {/* //TODO: sectionProps handling */}\n {props.subMenuProps?.items.map(item => (\n // key is added through item spread\n // eslint-disable-next-line react/jsx-key\n <MenuItemShim {...item} />\n ))}\n </MenuGroup>\n );\n }\n\n if (props.canCheck) {\n const shimProps = shimMenuItemCheckboxProps(props);\n return <MenuItemCheckbox {...shimProps} />;\n }\n\n // Nested Menu to handle submenus\n if (props.subMenuProps?.items && props.subMenuProps.items.length > 0) {\n const shimmedMenuProps = shimMenuProps(props.subMenuProps);\n const shimmedItemProps = shimMenuItemProps(props);\n\n return (\n <Menu {...shimmedMenuProps}>\n <MenuTrigger>\n <MenuItem {...shimmedItemProps} hasSubmenu />\n </MenuTrigger>\n <MenuPopover>\n <MenuList>\n {props.subMenuProps.items.map(item => (\n // key is added through item spread\n // eslint-disable-next-line react/jsx-key\n <MenuItemShim {...item} />\n ))}\n </MenuList>\n </MenuPopover>\n </Menu>\n );\n }\n\n const shimProps = shimMenuItemProps(props);\n return <MenuItem {...shimProps} />;\n};\n"],"names":["React","ContextualMenuItemType","MenuItem","MenuDivider","MenuGroup","MenuGroupHeader","MenuTrigger","Menu","MenuList","MenuPopover","MenuItemCheckbox","shimMenuHeaderProps","shimMenuItemCheckboxProps","shimMenuItemProps","shimMenuProps","MenuItemShim","props","itemType","Divider","shimProps","Section","children","subMenuProps","items","map","item","canCheck","length","shimmedMenuProps","shimmedItemProps","hasSubmenu"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAE/B,SAASC,sBAAsB,QAAQ,kBAAkB;AAEzD,SACEC,QAAQ,EACRC,WAAW,EACXC,SAAS,EACTC,eAAe,EACfC,WAAW,EACXC,IAAI,EACJC,QAAQ,EACRC,WAAW,EACXC,gBAAgB,QAEX,6BAA6B;AAEpC,SAASC,mBAAmB,EAAEC,yBAAyB,EAAEC,iBAAiB,EAAEC,aAAa,QAAQ,kBAAkB;AAEnH,4DAA4D;AAC5D,OAAO,MAAMC,eAAe,CAACC;QA2BvBA;IA1BJ,IAAIA,MAAMC,QAAQ,KAAKhB,uBAAuBiB,OAAO,EAAE;QACrD,MAAMC,YAAYN,kBAAkBG;QACpC,qBAAO,oBAACb,aAAiBgB;IAC3B;IAEA,IAAIH,MAAMC,QAAQ,KAAKhB,uBAAuBmB,OAAO,EAAE;YAMhDJ;QALL,MAAMG,YAAYR,oBAAoBK;QACtC,qBACE,oBAACZ,+BACC,oBAACC,uBAAiBc,UAAUE,QAAQ,IAEnCL,uBAAAA,MAAMM,YAAY,cAAlBN,2CAAAA,qBAAoBO,KAAK,CAACC,GAAG,CAACC,CAAAA,OAC7B,mCAAmC;YACnC,yCAAyC;0BACzC,oBAACV,cAAiBU;IAI1B;IAEA,IAAIT,MAAMU,QAAQ,EAAE;QAClB,MAAMP,YAAYP,0BAA0BI;QAC5C,qBAAO,oBAACN,kBAAqBS;IAC/B;IAEA,iCAAiC;IACjC,IAAIH,EAAAA,sBAAAA,MAAMM,YAAY,cAAlBN,0CAAAA,oBAAoBO,KAAK,KAAIP,MAAMM,YAAY,CAACC,KAAK,CAACI,MAAM,GAAG,GAAG;QACpE,MAAMC,mBAAmBd,cAAcE,MAAMM,YAAY;QACzD,MAAMO,mBAAmBhB,kBAAkBG;QAE3C,qBACE,oBAACT,MAASqB,gCACR,oBAACtB,iCACC,oBAACJ;YAAU,GAAG2B,gBAAgB;YAAEC,YAAAA;2BAElC,oBAACrB,iCACC,oBAACD,gBACEQ,MAAMM,YAAY,CAACC,KAAK,CAACC,GAAG,CAACC,CAAAA,OAC5B,mCAAmC;YACnC,yCAAyC;0BACzC,oBAACV,cAAiBU;IAM9B;IAEA,MAAMN,YAAYN,kBAAkBG;IACpC,qBAAO,oBAACd,UAAaiB;AACvB,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Menu/index.ts"],"sourcesContent":["export { MenuItemShim } from './MenuShim';\nexport { shimMenuHeaderProps, shimMenuItemCheckboxProps, shimMenuItemProps, shimMenuProps } from './shimMenuProps';\n"],"names":["MenuItemShim","shimMenuHeaderProps","shimMenuItemCheckboxProps","shimMenuItemProps","shimMenuProps"],"
|
|
1
|
+
{"version":3,"sources":["../src/components/Menu/index.ts"],"sourcesContent":["export { MenuItemShim } from './MenuShim';\nexport { shimMenuHeaderProps, shimMenuItemCheckboxProps, shimMenuItemProps, shimMenuProps } from './shimMenuProps';\n"],"names":["MenuItemShim","shimMenuHeaderProps","shimMenuItemCheckboxProps","shimMenuItemProps","shimMenuProps"],"mappings":"AAAA,SAASA,YAAY,QAAQ,aAAa;AAC1C,SAASC,mBAAmB,EAAEC,yBAAyB,EAAEC,iBAAiB,EAAEC,aAAa,QAAQ,kBAAkB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Menu/shimMenuProps.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Icon } from '@fluentui/react';\nimport type { IContextualMenuItem, IContextualMenuProps } from '@fluentui/react';\nimport type { MenuItemProps, MenuGroupHeaderProps, MenuItemCheckboxProps, MenuProps } from '@fluentui/react-components';\n\nexport const shimMenuProps = (props: IContextualMenuProps): Partial<MenuProps> => {\n return {\n hasIcons: props?.items.some(i => i.iconProps),\n hasCheckmarks: props?.items.some(i => i.canCheck || i.checked),\n };\n};\n\nexport const shimMenuItemProps = (props: IContextualMenuItem): MenuItemProps => {\n //TODO: Handle menuItem.onRenderIcon\n const icon = props.iconProps ? <Icon {...props.iconProps} /> : undefined;\n\n return {\n ...props,\n 'aria-label': props.ariaLabel,\n children: props.text,\n icon,\n secondaryContent: props.secondaryText,\n } as MenuItemProps;\n};\n\nexport const shimMenuItemCheckboxProps = (props: IContextualMenuItem): MenuItemCheckboxProps => {\n return {\n ...shimMenuItemProps(props),\n name: props.text || 'name',\n value: props.value || 'value',\n };\n};\n\nexport const shimMenuHeaderProps = (props: IContextualMenuItem): MenuGroupHeaderProps => {\n return {\n children: props.sectionProps?.title,\n };\n};\n"],"names":["React","Icon","shimMenuProps","props","hasIcons","items","some","i","iconProps","hasCheckmarks","canCheck","checked","shimMenuItemProps","icon","undefined","ariaLabel","children","text","secondaryContent","secondaryText","shimMenuItemCheckboxProps","name","value","shimMenuHeaderProps","sectionProps","title"],"
|
|
1
|
+
{"version":3,"sources":["../src/components/Menu/shimMenuProps.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Icon } from '@fluentui/react';\nimport type { IContextualMenuItem, IContextualMenuProps } from '@fluentui/react';\nimport type { MenuItemProps, MenuGroupHeaderProps, MenuItemCheckboxProps, MenuProps } from '@fluentui/react-components';\n\nexport const shimMenuProps = (props: IContextualMenuProps): Partial<MenuProps> => {\n return {\n hasIcons: props?.items.some(i => i.iconProps),\n hasCheckmarks: props?.items.some(i => i.canCheck || i.checked),\n };\n};\n\nexport const shimMenuItemProps = (props: IContextualMenuItem): MenuItemProps => {\n //TODO: Handle menuItem.onRenderIcon\n const icon = props.iconProps ? <Icon {...props.iconProps} /> : undefined;\n\n return {\n ...props,\n 'aria-label': props.ariaLabel,\n children: props.text,\n icon,\n secondaryContent: props.secondaryText,\n } as MenuItemProps;\n};\n\nexport const shimMenuItemCheckboxProps = (props: IContextualMenuItem): MenuItemCheckboxProps => {\n return {\n ...shimMenuItemProps(props),\n name: props.text || 'name',\n value: props.value || 'value',\n };\n};\n\nexport const shimMenuHeaderProps = (props: IContextualMenuItem): MenuGroupHeaderProps => {\n return {\n children: props.sectionProps?.title,\n };\n};\n"],"names":["React","Icon","shimMenuProps","props","hasIcons","items","some","i","iconProps","hasCheckmarks","canCheck","checked","shimMenuItemProps","icon","undefined","ariaLabel","children","text","secondaryContent","secondaryText","shimMenuItemCheckboxProps","name","value","shimMenuHeaderProps","sectionProps","title"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAE/B,SAASC,IAAI,QAAQ,kBAAkB;AAIvC,OAAO,MAAMC,gBAAgB,CAACC;IAC5B,OAAO;QACLC,QAAQ,EAAED,kBAAAA,4BAAAA,MAAOE,KAAK,CAACC,IAAI,CAACC,CAAAA,IAAKA,EAAEC,SAAS;QAC5CC,aAAa,EAAEN,kBAAAA,4BAAAA,MAAOE,KAAK,CAACC,IAAI,CAACC,CAAAA,IAAKA,EAAEG,QAAQ,IAAIH,EAAEI,OAAO;IAC/D;AACF,EAAE;AAEF,OAAO,MAAMC,oBAAoB,CAACT;IAChC,oCAAoC;IACpC,MAAMU,OAAOV,MAAMK,SAAS,iBAAG,oBAACP,MAASE,MAAMK,SAAS,IAAOM;IAE/D,OAAO;QACL,GAAGX,KAAK;QACR,cAAcA,MAAMY,SAAS;QAC7BC,UAAUb,MAAMc,IAAI;QACpBJ;QACAK,kBAAkBf,MAAMgB,aAAa;IACvC;AACF,EAAE;AAEF,OAAO,MAAMC,4BAA4B,CAACjB;IACxC,OAAO;QACL,GAAGS,kBAAkBT,MAAM;QAC3BkB,MAAMlB,MAAMc,IAAI,IAAI;QACpBK,OAAOnB,MAAMmB,KAAK,IAAI;IACxB;AACF,EAAE;AAEF,OAAO,MAAMC,sBAAsB,CAACpB;QAEtBA;IADZ,OAAO;QACLa,QAAQ,GAAEb,sBAAAA,MAAMqB,YAAY,cAAlBrB,0CAAAA,oBAAoBsB,KAAK;IACrC;AACF,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Stack/StackItemShim.tsx"],"sourcesContent":["import { mergeClasses } from '@griffel/react';\nimport * as React from 'react';\nimport type { IStackItemProps } from '@fluentui/react';\n\nimport {\n useFlexAlignSelfStyles,\n useFlexGrowStyles,\n useFlexOrderStyles,\n useFlexShrinkStyles,\n useStackItemShimStyles,\n} from './StackItemShim.styles';\n\nconst stackItemClassNames = {\n root: 'ms-StackItem',\n};\n\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport const StackItemShim = (props: IStackItemProps): JSX.Element => {\n const { grow, shrink, disableShrink, align, verticalFill, order, className, children } = props;\n\n const styles = useStackItemShimStyles();\n const alignSelfStyles = useFlexAlignSelfStyles();\n const shrinkFlexStyles = useFlexShrinkStyles();\n const growFlexStyles: Record<string, string> = useFlexGrowStyles();\n const orderFlexStyles: Record<string, string> = useFlexOrderStyles();\n\n const stackItemStyles = [styles.root, align && alignSelfStyles[align], verticalFill && styles.verticalFill];\n\n if (order) {\n stackItemStyles.push(orderFlexStyles[order]);\n }\n\n if (grow) {\n const flexGrow = grow === true ? growFlexStyles[1] : growFlexStyles[grow];\n stackItemStyles.push(flexGrow);\n }\n\n if (shrink && !disableShrink) {\n stackItemStyles.push(shrinkFlexStyles[1]);\n } else if (disableShrink || (!grow && !shrink)) {\n stackItemStyles.push(shrinkFlexStyles[0]);\n }\n\n if (disableShrink) {\n stackItemStyles.push(styles.disableShrink);\n }\n\n const rootStyles = mergeClasses(stackItemClassNames.root, ...stackItemStyles, className);\n\n return <div className={rootStyles}>{children}</div>;\n};\n"],"names":["mergeClasses","React","useFlexAlignSelfStyles","useFlexGrowStyles","useFlexOrderStyles","useFlexShrinkStyles","useStackItemShimStyles","stackItemClassNames","root","StackItemShim","props","grow","shrink","disableShrink","align","verticalFill","order","className","children","styles","alignSelfStyles","shrinkFlexStyles","growFlexStyles","orderFlexStyles","stackItemStyles","push","flexGrow","rootStyles","div"],"
|
|
1
|
+
{"version":3,"sources":["../src/components/Stack/StackItemShim.tsx"],"sourcesContent":["import { mergeClasses } from '@griffel/react';\nimport * as React from 'react';\nimport type { IStackItemProps } from '@fluentui/react';\n\nimport {\n useFlexAlignSelfStyles,\n useFlexGrowStyles,\n useFlexOrderStyles,\n useFlexShrinkStyles,\n useStackItemShimStyles,\n} from './StackItemShim.styles';\n\nconst stackItemClassNames = {\n root: 'ms-StackItem',\n};\n\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport const StackItemShim = (props: IStackItemProps): JSX.Element => {\n const { grow, shrink, disableShrink, align, verticalFill, order, className, children } = props;\n\n const styles = useStackItemShimStyles();\n const alignSelfStyles = useFlexAlignSelfStyles();\n const shrinkFlexStyles = useFlexShrinkStyles();\n const growFlexStyles: Record<string, string> = useFlexGrowStyles();\n const orderFlexStyles: Record<string, string> = useFlexOrderStyles();\n\n const stackItemStyles = [styles.root, align && alignSelfStyles[align], verticalFill && styles.verticalFill];\n\n if (order) {\n stackItemStyles.push(orderFlexStyles[order]);\n }\n\n if (grow) {\n const flexGrow = grow === true ? growFlexStyles[1] : growFlexStyles[grow];\n stackItemStyles.push(flexGrow);\n }\n\n if (shrink && !disableShrink) {\n stackItemStyles.push(shrinkFlexStyles[1]);\n } else if (disableShrink || (!grow && !shrink)) {\n stackItemStyles.push(shrinkFlexStyles[0]);\n }\n\n if (disableShrink) {\n stackItemStyles.push(styles.disableShrink);\n }\n\n const rootStyles = mergeClasses(stackItemClassNames.root, ...stackItemStyles, className);\n\n return <div className={rootStyles}>{children}</div>;\n};\n"],"names":["mergeClasses","React","useFlexAlignSelfStyles","useFlexGrowStyles","useFlexOrderStyles","useFlexShrinkStyles","useStackItemShimStyles","stackItemClassNames","root","StackItemShim","props","grow","shrink","disableShrink","align","verticalFill","order","className","children","styles","alignSelfStyles","shrinkFlexStyles","growFlexStyles","orderFlexStyles","stackItemStyles","push","flexGrow","rootStyles","div"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,YAAYC,WAAW,QAAQ;AAG/B,SACEC,sBAAsB,EACtBC,iBAAiB,EACjBC,kBAAkB,EAClBC,mBAAmB,EACnBC,sBAAsB,QACjB,yBAAyB;AAEhC,MAAMC,sBAAsB;IAC1BC,MAAM;AACR;AAEA,4DAA4D;AAC5D,OAAO,MAAMC,gBAAgB,CAACC;IAC5B,MAAM,EAAEC,IAAI,EAAEC,MAAM,EAAEC,aAAa,EAAEC,KAAK,EAAEC,YAAY,EAAEC,KAAK,EAAEC,SAAS,EAAEC,QAAQ,EAAE,GAAGR;IAEzF,MAAMS,SAASb;IACf,MAAMc,kBAAkBlB;IACxB,MAAMmB,mBAAmBhB;IACzB,MAAMiB,iBAAyCnB;IAC/C,MAAMoB,kBAA0CnB;IAEhD,MAAMoB,kBAAkB;QAACL,OAAOX,IAAI;QAAEM,SAASM,eAAe,CAACN,MAAM;QAAEC,gBAAgBI,OAAOJ,YAAY;KAAC;IAE3G,IAAIC,OAAO;QACTQ,gBAAgBC,IAAI,CAACF,eAAe,CAACP,MAAM;IAC7C;IAEA,IAAIL,MAAM;QACR,MAAMe,WAAWf,SAAS,OAAOW,cAAc,CAAC,EAAE,GAAGA,cAAc,CAACX,KAAK;QACzEa,gBAAgBC,IAAI,CAACC;IACvB;IAEA,IAAId,UAAU,CAACC,eAAe;QAC5BW,gBAAgBC,IAAI,CAACJ,gBAAgB,CAAC,EAAE;IAC1C,OAAO,IAAIR,iBAAkB,CAACF,QAAQ,CAACC,QAAS;QAC9CY,gBAAgBC,IAAI,CAACJ,gBAAgB,CAAC,EAAE;IAC1C;IAEA,IAAIR,eAAe;QACjBW,gBAAgBC,IAAI,CAACN,OAAON,aAAa;IAC3C;IAEA,MAAMc,aAAa3B,aAAaO,oBAAoBC,IAAI,KAAKgB,iBAAiBP;IAE9E,qBAAO,oBAACW;QAAIX,WAAWU;OAAaT;AACtC,EAAE"}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { makeStyles } from '@griffel/react';
|
|
2
|
+
export const useStackItemShimStyles = makeStyles({
|
|
3
|
+
root: {
|
|
4
|
+
height: 'auto',
|
|
5
|
+
width: 'auto'
|
|
6
|
+
},
|
|
7
|
+
disableShrink: {
|
|
8
|
+
flexShrink: 0
|
|
9
|
+
},
|
|
10
|
+
verticalFill: {
|
|
11
|
+
height: '100%'
|
|
12
|
+
}
|
|
13
|
+
});
|
|
14
|
+
export const useFlexAlignSelfStyles = makeStyles({
|
|
15
|
+
auto: {
|
|
16
|
+
alignSelf: 'auto'
|
|
17
|
+
},
|
|
18
|
+
baseline: {
|
|
19
|
+
alignSelf: 'baseline'
|
|
20
|
+
},
|
|
21
|
+
center: {
|
|
22
|
+
alignSelf: 'center'
|
|
23
|
+
},
|
|
24
|
+
start: {
|
|
25
|
+
alignSelf: 'flex-start'
|
|
26
|
+
},
|
|
27
|
+
end: {
|
|
28
|
+
alignSelf: 'flex-end'
|
|
29
|
+
},
|
|
30
|
+
stretch: {
|
|
31
|
+
alignSelf: 'stretch'
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
export const useFlexGrowStyles = makeStyles({
|
|
35
|
+
inherit: {
|
|
36
|
+
flexGrow: 'inherit'
|
|
37
|
+
},
|
|
38
|
+
initial: {
|
|
39
|
+
flexGrow: 'initial'
|
|
40
|
+
},
|
|
41
|
+
revert: {
|
|
42
|
+
flexGrow: 'revert'
|
|
43
|
+
},
|
|
44
|
+
unset: {
|
|
45
|
+
flexGrow: 'unset'
|
|
46
|
+
},
|
|
47
|
+
'1': {
|
|
48
|
+
flexGrow: 1
|
|
49
|
+
},
|
|
50
|
+
'2': {
|
|
51
|
+
flexGrow: 2
|
|
52
|
+
},
|
|
53
|
+
'3': {
|
|
54
|
+
flexGrow: 3
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
export const useFlexShrinkStyles = makeStyles({
|
|
58
|
+
inherit: {
|
|
59
|
+
flexShrink: 'inherit'
|
|
60
|
+
},
|
|
61
|
+
initial: {
|
|
62
|
+
flexShrink: 'initial'
|
|
63
|
+
},
|
|
64
|
+
revert: {
|
|
65
|
+
flexShrink: 'revert'
|
|
66
|
+
},
|
|
67
|
+
unset: {
|
|
68
|
+
flexShrink: 'unset'
|
|
69
|
+
},
|
|
70
|
+
0: {
|
|
71
|
+
flexShrink: 0
|
|
72
|
+
},
|
|
73
|
+
1: {
|
|
74
|
+
flexShrink: 1
|
|
75
|
+
},
|
|
76
|
+
2: {
|
|
77
|
+
flexShrink: 2
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
export const useFlexOrderStyles = makeStyles({
|
|
81
|
+
inherit: {
|
|
82
|
+
order: 'inherit'
|
|
83
|
+
},
|
|
84
|
+
initial: {
|
|
85
|
+
order: 'initial'
|
|
86
|
+
},
|
|
87
|
+
unset: {
|
|
88
|
+
order: 'unset'
|
|
89
|
+
},
|
|
90
|
+
revert: {
|
|
91
|
+
order: 'revert'
|
|
92
|
+
},
|
|
93
|
+
'-3': {
|
|
94
|
+
order: -3
|
|
95
|
+
},
|
|
96
|
+
'-2': {
|
|
97
|
+
order: -2
|
|
98
|
+
},
|
|
99
|
+
'-1': {
|
|
100
|
+
order: -1
|
|
101
|
+
},
|
|
102
|
+
'0': {
|
|
103
|
+
order: 0
|
|
104
|
+
},
|
|
105
|
+
'1': {
|
|
106
|
+
order: 1
|
|
107
|
+
},
|
|
108
|
+
'2': {
|
|
109
|
+
order: 2
|
|
110
|
+
},
|
|
111
|
+
'3': {
|
|
112
|
+
order: 3
|
|
113
|
+
}
|
|
114
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/Stack/StackItemShim.styles.ts"],"sourcesContent":["import { makeStyles } from '@griffel/react';\n\nexport const useStackItemShimStyles = makeStyles({\n root: {\n height: 'auto',\n width: 'auto',\n },\n disableShrink: {\n flexShrink: 0,\n },\n verticalFill: {\n height: '100%',\n },\n});\n\nexport const useFlexAlignSelfStyles = makeStyles({\n auto: {\n alignSelf: 'auto',\n },\n baseline: {\n alignSelf: 'baseline',\n },\n center: {\n alignSelf: 'center',\n },\n start: {\n alignSelf: 'flex-start',\n },\n end: {\n alignSelf: 'flex-end',\n },\n stretch: {\n alignSelf: 'stretch',\n },\n});\n\nexport const useFlexGrowStyles = makeStyles({\n inherit: {\n flexGrow: 'inherit',\n },\n initial: {\n flexGrow: 'initial',\n },\n revert: {\n flexGrow: 'revert',\n },\n unset: {\n flexGrow: 'unset',\n },\n '1': {\n flexGrow: 1,\n },\n '2': {\n flexGrow: 2,\n },\n '3': {\n flexGrow: 3,\n },\n});\n\nexport const useFlexShrinkStyles = makeStyles({\n inherit: {\n flexShrink: 'inherit',\n },\n initial: {\n flexShrink: 'initial',\n },\n revert: {\n flexShrink: 'revert',\n },\n unset: {\n flexShrink: 'unset',\n },\n 0: {\n flexShrink: 0,\n },\n 1: {\n flexShrink: 1,\n },\n 2: {\n flexShrink: 2,\n },\n});\n\nexport const useFlexOrderStyles = makeStyles({\n inherit: {\n order: 'inherit',\n },\n initial: {\n order: 'initial',\n },\n unset: {\n order: 'unset',\n },\n revert: {\n order: 'revert',\n },\n '-3': {\n order: -3,\n },\n '-2': {\n order: -2,\n },\n '-1': {\n order: -1,\n },\n '0': {\n order: 0,\n },\n '1': {\n order: 1,\n },\n '2': {\n order: 2,\n },\n '3': {\n order: 3,\n },\n});\n"],"names":["makeStyles","useStackItemShimStyles","root","height","width","disableShrink","flexShrink","verticalFill","useFlexAlignSelfStyles","auto","alignSelf","baseline","center","start","end","stretch","useFlexGrowStyles","inherit","flexGrow","initial","revert","unset","useFlexShrinkStyles","useFlexOrderStyles","order"],"mappings":"AAAA,SAASA,UAAU,QAAQ,iBAAiB;AAE5C,OAAO,MAAMC,yBAAyBD,WAAW;IAC/CE,MAAM;QACJC,QAAQ;QACRC,OAAO;IACT;IACAC,eAAe;QACbC,YAAY;IACd;IACAC,cAAc;QACZJ,QAAQ;IACV;AACF,GAAG;AAEH,OAAO,MAAMK,yBAAyBR,WAAW;IAC/CS,MAAM;QACJC,WAAW;IACb;IACAC,UAAU;QACRD,WAAW;IACb;IACAE,QAAQ;QACNF,WAAW;IACb;IACAG,OAAO;QACLH,WAAW;IACb;IACAI,KAAK;QACHJ,WAAW;IACb;IACAK,SAAS;QACPL,WAAW;IACb;AACF,GAAG;AAEH,OAAO,MAAMM,oBAAoBhB,WAAW;IAC1CiB,SAAS;QACPC,UAAU;IACZ;IACAC,SAAS;QACPD,UAAU;IACZ;IACAE,QAAQ;QACNF,UAAU;IACZ;IACAG,OAAO;QACLH,UAAU;IACZ;IACA,KAAK;QACHA,UAAU;IACZ;IACA,KAAK;QACHA,UAAU;IACZ;IACA,KAAK;QACHA,UAAU;IACZ;AACF,GAAG;AAEH,OAAO,MAAMI,sBAAsBtB,WAAW;IAC5CiB,SAAS;QACPX,YAAY;IACd;IACAa,SAAS;QACPb,YAAY;IACd;IACAc,QAAQ;QACNd,YAAY;IACd;IACAe,OAAO;QACLf,YAAY;IACd;IACA,GAAG;QACDA,YAAY;IACd;IACA,GAAG;QACDA,YAAY;IACd;IACA,GAAG;QACDA,YAAY;IACd;AACF,GAAG;AAEH,OAAO,MAAMiB,qBAAqBvB,WAAW;IAC3CiB,SAAS;QACPO,OAAO;IACT;IACAL,SAAS;QACPK,OAAO;IACT;IACAH,OAAO;QACLG,OAAO;IACT;IACAJ,QAAQ;QACNI,OAAO;IACT;IACA,MAAM;QACJA,OAAO,CAAC;IACV;IACA,MAAM;QACJA,OAAO,CAAC;IACV;IACA,MAAM;QACJA,OAAO,CAAC;IACV;IACA,KAAK;QACHA,OAAO;IACT;IACA,KAAK;QACHA,OAAO;IACT;IACA,KAAK;QACHA,OAAO;IACT;IACA,KAAK;QACHA,OAAO;IACT;AACF,GAAG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Stack/StackShim.tsx"],"sourcesContent":["import { mergeClasses } from '@griffel/react';\nimport { classNamesFunction } from '@fluentui/react';\nimport type { IStackProps, IStackTokens, IStackItemProps } from '@fluentui/react';\nimport * as React from 'react';\n\nimport { getChildrenGapStyles } from './stackUtils';\nimport type { StackShimStyles } from './stackUtils';\nimport {\n useFlexAlignItemsStyles,\n useFlexGrowStyles,\n useFlexJustifyContentStyles,\n useStackStyles,\n} from './StackShim.styles';\n\nconst stackClassNames = {\n root: 'ms-Stack',\n inner: 'ms-Stack-inner',\n};\n\nconst getClassNames = classNamesFunction<IStackProps, StackShimStyles>();\n\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport const StackShim = (props: IStackProps): JSX.Element => {\n const styles = useStackStyles();\n const alignItemsFlexStyles = useFlexAlignItemsStyles();\n const justifyContentFlexStyles = useFlexJustifyContentStyles();\n const growFlexStyles: Record<string, string> = useFlexGrowStyles();\n\n const {\n as: RootType = 'div',\n verticalFill,\n horizontal,\n reversed,\n grow,\n wrap,\n horizontalAlign,\n verticalAlign,\n disableShrink,\n className,\n } = props;\n\n const tokens: IStackTokens = { ...props.tokens };\n\n let tokensRootStyles = {};\n let tokensInnerStyles = {};\n let childrenGapClassName;\n\n if (tokens) {\n tokensRootStyles = {\n padding: !wrap ? tokens.padding : undefined,\n maxHeight: tokens.maxHeight,\n maxWidth: tokens.maxWidth,\n };\n\n tokensInnerStyles = {\n padding: wrap ? tokens.padding : undefined,\n };\n\n if (tokens.childrenGap) {\n childrenGapClassName = getClassNames(getChildrenGapStyles, {\n horizontal,\n reversed,\n tokens,\n });\n }\n }\n\n const stackStyles = [\n wrap ? styles.wrap : styles.root,\n horizontal && styles.horizontal,\n verticalFill && styles.verticalFill,\n ];\n\n const stackInnerStyles = [\n styles.inner,\n horizontal && styles.horizontal,\n (!tokens || !tokens.childrenGap) && styles.innerWidth,\n ];\n\n let stackChildren = React.Children.toArray(props.children);\n if (\n stackChildren.length === 1 &&\n React.isValidElement(stackChildren[0]) &&\n stackChildren[0].type === React.Fragment\n ) {\n stackChildren = stackChildren[0].props.children;\n }\n\n stackChildren = React.Children.map(\n stackChildren as React.ReactElement[],\n (child: React.ReactElement<IStackItemProps>) => {\n if (!child) {\n return null;\n }\n\n if (child.type && ((child as React.ReactElement).type as React.ComponentType).name === 'StackItemShim') {\n const defaultItemProps: IStackItemProps = {\n shrink: !disableShrink,\n };\n\n return React.cloneElement(child, {\n ...defaultItemProps,\n ...child.props,\n });\n }\n\n return child;\n },\n );\n\n if (reversed) {\n if (horizontal) {\n stackStyles.push(styles.reversedHorizontal);\n stackInnerStyles.push(styles.reversedHorizontal);\n } else {\n stackStyles.push(styles.reversedVertical);\n stackInnerStyles.push(styles.reversedVertical);\n }\n }\n\n if (grow) {\n const flexGrow = grow === true ? growFlexStyles[1] : growFlexStyles[grow];\n stackStyles.push(flexGrow);\n }\n\n if (disableShrink) {\n stackStyles.push(styles.disableShrink);\n }\n\n if (horizontalAlign) {\n if (horizontal) {\n stackStyles.push(justifyContentFlexStyles[horizontalAlign]);\n stackInnerStyles.push(justifyContentFlexStyles[horizontalAlign]);\n } else {\n stackStyles.push(alignItemsFlexStyles[horizontalAlign]);\n stackInnerStyles.push(alignItemsFlexStyles[horizontalAlign]);\n }\n }\n\n if (verticalAlign) {\n if (horizontal) {\n stackStyles.push(alignItemsFlexStyles[verticalAlign]);\n stackInnerStyles.push(alignItemsFlexStyles[verticalAlign]);\n } else {\n stackStyles.push(justifyContentFlexStyles[verticalAlign]);\n stackInnerStyles.push(justifyContentFlexStyles[verticalAlign]);\n }\n }\n\n const rootClass = mergeClasses(\n stackClassNames.root,\n ...stackStyles,\n childrenGapClassName && !wrap && childrenGapClassName.root,\n className,\n );\n\n const innerClass = mergeClasses(\n stackClassNames.inner,\n ...stackInnerStyles,\n childrenGapClassName && wrap && childrenGapClassName.inner,\n );\n\n return wrap ? (\n <RootType className={rootClass} style={tokensRootStyles}>\n <div className={innerClass} style={tokensInnerStyles}>\n {stackChildren}\n </div>\n </RootType>\n ) : (\n <RootType className={rootClass} style={tokensRootStyles}>\n {stackChildren}\n </RootType>\n );\n};\n"],"names":["mergeClasses","classNamesFunction","React","getChildrenGapStyles","useFlexAlignItemsStyles","useFlexGrowStyles","useFlexJustifyContentStyles","useStackStyles","stackClassNames","root","inner","getClassNames","StackShim","props","styles","alignItemsFlexStyles","justifyContentFlexStyles","growFlexStyles","as","RootType","verticalFill","horizontal","reversed","grow","wrap","horizontalAlign","verticalAlign","disableShrink","className","tokens","tokensRootStyles","tokensInnerStyles","childrenGapClassName","padding","undefined","maxHeight","maxWidth","childrenGap","stackStyles","stackInnerStyles","innerWidth","stackChildren","Children","toArray","children","length","isValidElement","type","Fragment","map","child","name","defaultItemProps","shrink","cloneElement","push","reversedHorizontal","reversedVertical","flexGrow","rootClass","innerClass","style","div"],"
|
|
1
|
+
{"version":3,"sources":["../src/components/Stack/StackShim.tsx"],"sourcesContent":["import { mergeClasses } from '@griffel/react';\nimport { classNamesFunction } from '@fluentui/react';\nimport type { IStackProps, IStackTokens, IStackItemProps } from '@fluentui/react';\nimport * as React from 'react';\n\nimport { getChildrenGapStyles } from './stackUtils';\nimport type { StackShimStyles } from './stackUtils';\nimport {\n useFlexAlignItemsStyles,\n useFlexGrowStyles,\n useFlexJustifyContentStyles,\n useStackStyles,\n} from './StackShim.styles';\n\nconst stackClassNames = {\n root: 'ms-Stack',\n inner: 'ms-Stack-inner',\n};\n\nconst getClassNames = classNamesFunction<IStackProps, StackShimStyles>();\n\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport const StackShim = (props: IStackProps): JSX.Element => {\n const styles = useStackStyles();\n const alignItemsFlexStyles = useFlexAlignItemsStyles();\n const justifyContentFlexStyles = useFlexJustifyContentStyles();\n const growFlexStyles: Record<string, string> = useFlexGrowStyles();\n\n const {\n as: RootType = 'div',\n verticalFill,\n horizontal,\n reversed,\n grow,\n wrap,\n horizontalAlign,\n verticalAlign,\n disableShrink,\n className,\n } = props;\n\n const tokens: IStackTokens = { ...props.tokens };\n\n let tokensRootStyles = {};\n let tokensInnerStyles = {};\n let childrenGapClassName;\n\n if (tokens) {\n tokensRootStyles = {\n padding: !wrap ? tokens.padding : undefined,\n maxHeight: tokens.maxHeight,\n maxWidth: tokens.maxWidth,\n };\n\n tokensInnerStyles = {\n padding: wrap ? tokens.padding : undefined,\n };\n\n if (tokens.childrenGap) {\n childrenGapClassName = getClassNames(getChildrenGapStyles, {\n horizontal,\n reversed,\n tokens,\n });\n }\n }\n\n const stackStyles = [\n wrap ? styles.wrap : styles.root,\n horizontal && styles.horizontal,\n verticalFill && styles.verticalFill,\n ];\n\n const stackInnerStyles = [\n styles.inner,\n horizontal && styles.horizontal,\n (!tokens || !tokens.childrenGap) && styles.innerWidth,\n ];\n\n let stackChildren = React.Children.toArray(props.children);\n if (\n stackChildren.length === 1 &&\n React.isValidElement(stackChildren[0]) &&\n stackChildren[0].type === React.Fragment\n ) {\n stackChildren = stackChildren[0].props.children;\n }\n\n stackChildren = React.Children.map(\n stackChildren as React.ReactElement[],\n (child: React.ReactElement<IStackItemProps>) => {\n if (!child) {\n return null;\n }\n\n if (child.type && ((child as React.ReactElement).type as React.ComponentType).name === 'StackItemShim') {\n const defaultItemProps: IStackItemProps = {\n shrink: !disableShrink,\n };\n\n return React.cloneElement(child, {\n ...defaultItemProps,\n ...child.props,\n });\n }\n\n return child;\n },\n );\n\n if (reversed) {\n if (horizontal) {\n stackStyles.push(styles.reversedHorizontal);\n stackInnerStyles.push(styles.reversedHorizontal);\n } else {\n stackStyles.push(styles.reversedVertical);\n stackInnerStyles.push(styles.reversedVertical);\n }\n }\n\n if (grow) {\n const flexGrow = grow === true ? growFlexStyles[1] : growFlexStyles[grow];\n stackStyles.push(flexGrow);\n }\n\n if (disableShrink) {\n stackStyles.push(styles.disableShrink);\n }\n\n if (horizontalAlign) {\n if (horizontal) {\n stackStyles.push(justifyContentFlexStyles[horizontalAlign]);\n stackInnerStyles.push(justifyContentFlexStyles[horizontalAlign]);\n } else {\n stackStyles.push(alignItemsFlexStyles[horizontalAlign]);\n stackInnerStyles.push(alignItemsFlexStyles[horizontalAlign]);\n }\n }\n\n if (verticalAlign) {\n if (horizontal) {\n stackStyles.push(alignItemsFlexStyles[verticalAlign]);\n stackInnerStyles.push(alignItemsFlexStyles[verticalAlign]);\n } else {\n stackStyles.push(justifyContentFlexStyles[verticalAlign]);\n stackInnerStyles.push(justifyContentFlexStyles[verticalAlign]);\n }\n }\n\n const rootClass = mergeClasses(\n stackClassNames.root,\n ...stackStyles,\n childrenGapClassName && !wrap && childrenGapClassName.root,\n className,\n );\n\n const innerClass = mergeClasses(\n stackClassNames.inner,\n ...stackInnerStyles,\n childrenGapClassName && wrap && childrenGapClassName.inner,\n );\n\n return wrap ? (\n <RootType className={rootClass} style={tokensRootStyles}>\n <div className={innerClass} style={tokensInnerStyles}>\n {stackChildren}\n </div>\n </RootType>\n ) : (\n <RootType className={rootClass} style={tokensRootStyles}>\n {stackChildren}\n </RootType>\n );\n};\n"],"names":["mergeClasses","classNamesFunction","React","getChildrenGapStyles","useFlexAlignItemsStyles","useFlexGrowStyles","useFlexJustifyContentStyles","useStackStyles","stackClassNames","root","inner","getClassNames","StackShim","props","styles","alignItemsFlexStyles","justifyContentFlexStyles","growFlexStyles","as","RootType","verticalFill","horizontal","reversed","grow","wrap","horizontalAlign","verticalAlign","disableShrink","className","tokens","tokensRootStyles","tokensInnerStyles","childrenGapClassName","padding","undefined","maxHeight","maxWidth","childrenGap","stackStyles","stackInnerStyles","innerWidth","stackChildren","Children","toArray","children","length","isValidElement","type","Fragment","map","child","name","defaultItemProps","shrink","cloneElement","push","reversedHorizontal","reversedVertical","flexGrow","rootClass","innerClass","style","div"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,kBAAkB,QAAQ,kBAAkB;AAErD,YAAYC,WAAW,QAAQ;AAE/B,SAASC,oBAAoB,QAAQ,eAAe;AAEpD,SACEC,uBAAuB,EACvBC,iBAAiB,EACjBC,2BAA2B,EAC3BC,cAAc,QACT,qBAAqB;AAE5B,MAAMC,kBAAkB;IACtBC,MAAM;IACNC,OAAO;AACT;AAEA,MAAMC,gBAAgBV;AAEtB,4DAA4D;AAC5D,OAAO,MAAMW,YAAY,CAACC;IACxB,MAAMC,SAASP;IACf,MAAMQ,uBAAuBX;IAC7B,MAAMY,2BAA2BV;IACjC,MAAMW,iBAAyCZ;IAE/C,MAAM,EACJa,IAAIC,WAAW,KAAK,EACpBC,YAAY,EACZC,UAAU,EACVC,QAAQ,EACRC,IAAI,EACJC,IAAI,EACJC,eAAe,EACfC,aAAa,EACbC,aAAa,EACbC,SAAS,EACV,GAAGf;IAEJ,MAAMgB,SAAuB;QAAE,GAAGhB,MAAMgB,MAAM;IAAC;IAE/C,IAAIC,mBAAmB,CAAC;IACxB,IAAIC,oBAAoB,CAAC;IACzB,IAAIC;IAEJ,IAAIH,QAAQ;QACVC,mBAAmB;YACjBG,SAAS,CAACT,OAAOK,OAAOI,OAAO,GAAGC;YAClCC,WAAWN,OAAOM,SAAS;YAC3BC,UAAUP,OAAOO,QAAQ;QAC3B;QAEAL,oBAAoB;YAClBE,SAAST,OAAOK,OAAOI,OAAO,GAAGC;QACnC;QAEA,IAAIL,OAAOQ,WAAW,EAAE;YACtBL,uBAAuBrB,cAAcR,sBAAsB;gBACzDkB;gBACAC;gBACAO;YACF;QACF;IACF;IAEA,MAAMS,cAAc;QAClBd,OAAOV,OAAOU,IAAI,GAAGV,OAAOL,IAAI;QAChCY,cAAcP,OAAOO,UAAU;QAC/BD,gBAAgBN,OAAOM,YAAY;KACpC;IAED,MAAMmB,mBAAmB;QACvBzB,OAAOJ,KAAK;QACZW,cAAcP,OAAOO,UAAU;QAC9B,CAAA,CAACQ,UAAU,CAACA,OAAOQ,WAAW,AAAD,KAAMvB,OAAO0B,UAAU;KACtD;IAED,IAAIC,gBAAgBvC,MAAMwC,QAAQ,CAACC,OAAO,CAAC9B,MAAM+B,QAAQ;IACzD,IACEH,cAAcI,MAAM,KAAK,mBACzB3C,MAAM4C,cAAc,CAACL,aAAa,CAAC,EAAE,KACrCA,aAAa,CAAC,EAAE,CAACM,IAAI,KAAK7C,MAAM8C,QAAQ,EACxC;QACAP,gBAAgBA,aAAa,CAAC,EAAE,CAAC5B,KAAK,CAAC+B,QAAQ;IACjD;IAEAH,gBAAgBvC,MAAMwC,QAAQ,CAACO,GAAG,CAChCR,eACA,CAACS;QACC,IAAI,CAACA,OAAO;YACV,OAAO;QACT;QAEA,IAAIA,MAAMH,IAAI,IAAI,AAAC,AAACG,MAA6BH,IAAI,CAAyBI,IAAI,KAAK,iBAAiB;YACtG,MAAMC,mBAAoC;gBACxCC,QAAQ,CAAC1B;YACX;YAEA,qBAAOzB,MAAMoD,YAAY,CAACJ,OAAO;gBAC/B,GAAGE,gBAAgB;gBACnB,GAAGF,MAAMrC,KAAK;YAChB;QACF;QAEA,OAAOqC;IACT;IAGF,IAAI5B,UAAU;QACZ,IAAID,YAAY;YACdiB,YAAYiB,IAAI,CAACzC,OAAO0C,kBAAkB;YAC1CjB,iBAAiBgB,IAAI,CAACzC,OAAO0C,kBAAkB;QACjD,OAAO;YACLlB,YAAYiB,IAAI,CAACzC,OAAO2C,gBAAgB;YACxClB,iBAAiBgB,IAAI,CAACzC,OAAO2C,gBAAgB;QAC/C;IACF;IAEA,IAAIlC,MAAM;QACR,MAAMmC,WAAWnC,SAAS,OAAON,cAAc,CAAC,EAAE,GAAGA,cAAc,CAACM,KAAK;QACzEe,YAAYiB,IAAI,CAACG;IACnB;IAEA,IAAI/B,eAAe;QACjBW,YAAYiB,IAAI,CAACzC,OAAOa,aAAa;IACvC;IAEA,IAAIF,iBAAiB;QACnB,IAAIJ,YAAY;YACdiB,YAAYiB,IAAI,CAACvC,wBAAwB,CAACS,gBAAgB;YAC1Dc,iBAAiBgB,IAAI,CAACvC,wBAAwB,CAACS,gBAAgB;QACjE,OAAO;YACLa,YAAYiB,IAAI,CAACxC,oBAAoB,CAACU,gBAAgB;YACtDc,iBAAiBgB,IAAI,CAACxC,oBAAoB,CAACU,gBAAgB;QAC7D;IACF;IAEA,IAAIC,eAAe;QACjB,IAAIL,YAAY;YACdiB,YAAYiB,IAAI,CAACxC,oBAAoB,CAACW,cAAc;YACpDa,iBAAiBgB,IAAI,CAACxC,oBAAoB,CAACW,cAAc;QAC3D,OAAO;YACLY,YAAYiB,IAAI,CAACvC,wBAAwB,CAACU,cAAc;YACxDa,iBAAiBgB,IAAI,CAACvC,wBAAwB,CAACU,cAAc;QAC/D;IACF;IAEA,MAAMiC,YAAY3D,aAChBQ,gBAAgBC,IAAI,KACjB6B,aACHN,wBAAwB,CAACR,QAAQQ,qBAAqBvB,IAAI,EAC1DmB;IAGF,MAAMgC,aAAa5D,aACjBQ,gBAAgBE,KAAK,KAClB6B,kBACHP,wBAAwBR,QAAQQ,qBAAqBtB,KAAK;IAG5D,OAAOc,qBACL,oBAACL;QAASS,WAAW+B;QAAWE,OAAO/B;qBACrC,oBAACgC;QAAIlC,WAAWgC;QAAYC,OAAO9B;OAChCU,gCAIL,oBAACtB;QAASS,WAAW+B;QAAWE,OAAO/B;OACpCW;AAGP,EAAE"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { makeStyles } from '@griffel/react';
|
|
2
|
+
export const useStackStyles = makeStyles({
|
|
3
|
+
root: {
|
|
4
|
+
display: 'flex',
|
|
5
|
+
flexDirection: 'column',
|
|
6
|
+
flexWrap: 'nowrap',
|
|
7
|
+
width: 'auto',
|
|
8
|
+
height: 'auto',
|
|
9
|
+
boxSizing: 'border-box',
|
|
10
|
+
'> *': {
|
|
11
|
+
textOverflow: 'ellipsis'
|
|
12
|
+
},
|
|
13
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
14
|
+
// @ts-ignore
|
|
15
|
+
'> *:not(.ms-StackItem)': {
|
|
16
|
+
flexShrink: 1
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
horizontal: {
|
|
20
|
+
flexDirection: 'row'
|
|
21
|
+
},
|
|
22
|
+
verticalFill: {
|
|
23
|
+
height: '100%'
|
|
24
|
+
},
|
|
25
|
+
reversedVertical: {
|
|
26
|
+
flexDirection: 'column-reverse'
|
|
27
|
+
},
|
|
28
|
+
reversedHorizontal: {
|
|
29
|
+
flexDirection: 'row-reverse'
|
|
30
|
+
},
|
|
31
|
+
disableShrink: {
|
|
32
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
33
|
+
// @ts-ignore
|
|
34
|
+
'> *:not(.ms-StackItem)': {
|
|
35
|
+
flexShrink: 0
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
wrap: {
|
|
39
|
+
display: 'flex',
|
|
40
|
+
flexWrap: 'wrap',
|
|
41
|
+
height: '100%'
|
|
42
|
+
},
|
|
43
|
+
inner: {
|
|
44
|
+
display: 'flex',
|
|
45
|
+
flexDirection: 'column',
|
|
46
|
+
flexWrap: 'wrap',
|
|
47
|
+
boxSizing: 'border-box',
|
|
48
|
+
maxWidth: '100vw',
|
|
49
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
50
|
+
// @ts-ignore
|
|
51
|
+
'> *:not(.ms-StackItem)': {
|
|
52
|
+
flexShrink: 1
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
innerWidth: {
|
|
56
|
+
width: '100%'
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
export const useFlexGrowStyles = makeStyles({
|
|
60
|
+
inherit: {
|
|
61
|
+
flexGrow: 'inherit'
|
|
62
|
+
},
|
|
63
|
+
initial: {
|
|
64
|
+
flexGrow: 'initial'
|
|
65
|
+
},
|
|
66
|
+
revert: {
|
|
67
|
+
flexGrow: 'revert'
|
|
68
|
+
},
|
|
69
|
+
unset: {
|
|
70
|
+
flexGrow: 'unset'
|
|
71
|
+
},
|
|
72
|
+
'1': {
|
|
73
|
+
flexGrow: 1
|
|
74
|
+
},
|
|
75
|
+
'2': {
|
|
76
|
+
flexGrow: 2
|
|
77
|
+
},
|
|
78
|
+
'3': {
|
|
79
|
+
flexGrow: 3
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
export const useFlexAlignItemsStyles = makeStyles({
|
|
83
|
+
baseline: {
|
|
84
|
+
alignItems: 'baseline'
|
|
85
|
+
},
|
|
86
|
+
center: {
|
|
87
|
+
alignItems: 'center'
|
|
88
|
+
},
|
|
89
|
+
start: {
|
|
90
|
+
alignItems: 'flex-start'
|
|
91
|
+
},
|
|
92
|
+
end: {
|
|
93
|
+
alignItems: 'flex-end'
|
|
94
|
+
},
|
|
95
|
+
stretch: {
|
|
96
|
+
alignItems: 'stretch'
|
|
97
|
+
},
|
|
98
|
+
'space-between': {
|
|
99
|
+
alignItems: 'space-between'
|
|
100
|
+
},
|
|
101
|
+
'space-around': {
|
|
102
|
+
alignItems: 'space-around'
|
|
103
|
+
},
|
|
104
|
+
'space-evenly': {
|
|
105
|
+
alignItems: 'space-evenly'
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
export const useFlexJustifyContentStyles = makeStyles({
|
|
109
|
+
baseline: {
|
|
110
|
+
justifyContent: 'baseline'
|
|
111
|
+
},
|
|
112
|
+
center: {
|
|
113
|
+
justifyContent: 'center'
|
|
114
|
+
},
|
|
115
|
+
start: {
|
|
116
|
+
justifyContent: 'flex-start'
|
|
117
|
+
},
|
|
118
|
+
end: {
|
|
119
|
+
justifyContent: 'flex-end'
|
|
120
|
+
},
|
|
121
|
+
stretch: {
|
|
122
|
+
justifyContent: 'stretch'
|
|
123
|
+
},
|
|
124
|
+
'space-between': {
|
|
125
|
+
justifyContent: 'space-between'
|
|
126
|
+
},
|
|
127
|
+
'space-around': {
|
|
128
|
+
justifyContent: 'space-around'
|
|
129
|
+
},
|
|
130
|
+
'space-evenly': {
|
|
131
|
+
justifyContent: 'space-evenly'
|
|
132
|
+
}
|
|
133
|
+
});
|