@xylabs/react-button 3.4.0 → 3.4.2

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 (97) hide show
  1. package/dist/browser/components/ButtonEx.d.cts +3 -2
  2. package/dist/browser/components/ButtonEx.d.cts.map +1 -1
  3. package/dist/browser/components/ButtonEx.d.mts +3 -2
  4. package/dist/browser/components/ButtonEx.d.mts.map +1 -1
  5. package/dist/browser/components/ButtonEx.d.ts +3 -2
  6. package/dist/browser/components/ButtonEx.d.ts.map +1 -1
  7. package/dist/browser/components/ButtonExBase.d.cts +3 -2
  8. package/dist/browser/components/ButtonExBase.d.cts.map +1 -1
  9. package/dist/browser/components/ButtonExBase.d.mts +3 -2
  10. package/dist/browser/components/ButtonExBase.d.mts.map +1 -1
  11. package/dist/browser/components/ButtonExBase.d.ts +3 -2
  12. package/dist/browser/components/ButtonExBase.d.ts.map +1 -1
  13. package/dist/browser/components/ButtonExTo.d.cts +3 -2
  14. package/dist/browser/components/ButtonExTo.d.cts.map +1 -1
  15. package/dist/browser/components/ButtonExTo.d.mts +3 -2
  16. package/dist/browser/components/ButtonExTo.d.mts.map +1 -1
  17. package/dist/browser/components/ButtonExTo.d.ts +3 -2
  18. package/dist/browser/components/ButtonExTo.d.ts.map +1 -1
  19. package/dist/browser/components/index.d.cts +2 -2
  20. package/dist/browser/components/index.d.mts +2 -2
  21. package/dist/browser/components/index.d.ts +2 -2
  22. package/dist/browser/index.cjs +43 -20
  23. package/dist/browser/index.cjs.map +1 -1
  24. package/dist/browser/index.d.cts +1 -1
  25. package/dist/browser/index.d.mts +1 -1
  26. package/dist/browser/index.d.ts +1 -1
  27. package/dist/browser/index.mjs +65 -0
  28. package/dist/browser/index.mjs.map +1 -0
  29. package/dist/neutral/components/ButtonEx.d.cts +3 -2
  30. package/dist/neutral/components/ButtonEx.d.cts.map +1 -1
  31. package/dist/neutral/components/ButtonEx.d.mts +3 -2
  32. package/dist/neutral/components/ButtonEx.d.mts.map +1 -1
  33. package/dist/neutral/components/ButtonEx.d.ts +3 -2
  34. package/dist/neutral/components/ButtonEx.d.ts.map +1 -1
  35. package/dist/neutral/components/ButtonExBase.d.cts +3 -2
  36. package/dist/neutral/components/ButtonExBase.d.cts.map +1 -1
  37. package/dist/neutral/components/ButtonExBase.d.mts +3 -2
  38. package/dist/neutral/components/ButtonExBase.d.mts.map +1 -1
  39. package/dist/neutral/components/ButtonExBase.d.ts +3 -2
  40. package/dist/neutral/components/ButtonExBase.d.ts.map +1 -1
  41. package/dist/neutral/components/ButtonExTo.d.cts +3 -2
  42. package/dist/neutral/components/ButtonExTo.d.cts.map +1 -1
  43. package/dist/neutral/components/ButtonExTo.d.mts +3 -2
  44. package/dist/neutral/components/ButtonExTo.d.mts.map +1 -1
  45. package/dist/neutral/components/ButtonExTo.d.ts +3 -2
  46. package/dist/neutral/components/ButtonExTo.d.ts.map +1 -1
  47. package/dist/neutral/components/index.d.cts +2 -2
  48. package/dist/neutral/components/index.d.mts +2 -2
  49. package/dist/neutral/components/index.d.ts +2 -2
  50. package/dist/neutral/index.cjs +43 -20
  51. package/dist/neutral/index.cjs.map +1 -1
  52. package/dist/neutral/index.d.cts +1 -1
  53. package/dist/neutral/index.d.mts +1 -1
  54. package/dist/neutral/index.d.ts +1 -1
  55. package/dist/neutral/index.mjs +65 -0
  56. package/dist/neutral/index.mjs.map +1 -0
  57. package/dist/node/components/ButtonEx.d.cts +3 -2
  58. package/dist/node/components/ButtonEx.d.cts.map +1 -1
  59. package/dist/node/components/ButtonEx.d.mts +3 -2
  60. package/dist/node/components/ButtonEx.d.mts.map +1 -1
  61. package/dist/node/components/ButtonEx.d.ts +3 -2
  62. package/dist/node/components/ButtonEx.d.ts.map +1 -1
  63. package/dist/node/components/ButtonExBase.d.cts +3 -2
  64. package/dist/node/components/ButtonExBase.d.cts.map +1 -1
  65. package/dist/node/components/ButtonExBase.d.mts +3 -2
  66. package/dist/node/components/ButtonExBase.d.mts.map +1 -1
  67. package/dist/node/components/ButtonExBase.d.ts +3 -2
  68. package/dist/node/components/ButtonExBase.d.ts.map +1 -1
  69. package/dist/node/components/ButtonExTo.d.cts +3 -2
  70. package/dist/node/components/ButtonExTo.d.cts.map +1 -1
  71. package/dist/node/components/ButtonExTo.d.mts +3 -2
  72. package/dist/node/components/ButtonExTo.d.mts.map +1 -1
  73. package/dist/node/components/ButtonExTo.d.ts +3 -2
  74. package/dist/node/components/ButtonExTo.d.ts.map +1 -1
  75. package/dist/node/components/index.d.cts +2 -2
  76. package/dist/node/components/index.d.mts +2 -2
  77. package/dist/node/components/index.d.ts +2 -2
  78. package/dist/node/index.cjs +43 -20
  79. package/dist/node/index.cjs.map +1 -1
  80. package/dist/node/index.d.cts +1 -1
  81. package/dist/node/index.d.mts +1 -1
  82. package/dist/node/index.d.ts +1 -1
  83. package/dist/node/index.mjs +65 -0
  84. package/dist/node/index.mjs.map +1 -0
  85. package/package.json +12 -12
  86. package/src/components/ButtonEx.stories.tsx +5 -3
  87. package/src/components/ButtonEx.tsx +4 -4
  88. package/src/components/ButtonExBase.tsx +8 -8
  89. package/src/components/ButtonExTo.tsx +3 -3
  90. package/src/components/index.ts +2 -2
  91. package/src/index.ts +1 -1
  92. package/dist/browser/index.js +0 -50
  93. package/dist/browser/index.js.map +0 -1
  94. package/dist/neutral/index.js +0 -50
  95. package/dist/neutral/index.js.map +0 -1
  96. package/dist/node/index.js +0 -50
  97. package/dist/node/index.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/components/ButtonEx.tsx","../../src/components/ButtonExBase.tsx","../../src/components/ButtonExTo.tsx"],"sourcesContent":["import React, { forwardRef } from 'react'\n\nimport { ButtonExBase } from './ButtonExBase.tsx'\nimport { ButtonExProps } from './ButtonExProps.tsx'\nimport { ButtonToEx } from './ButtonExTo.tsx'\n\nconst ButtonEx = forwardRef<HTMLButtonElement, ButtonExProps>(({ to, ...props }, ref) => {\n return to ? <ButtonToEx to={to} ref={ref} {...props} /> : <ButtonExBase {...props} />\n})\n\nButtonEx.displayName = 'ButtonExXYLabs'\n\nexport { ButtonEx }\n","import { Button, useTheme } from '@mui/material'\nimport { BusyCircularProgress, BusyLinearProgress, mergeBoxlikeStyles } from '@xylabs/react-shared'\nimport React, { forwardRef, MouseEvent } from 'react'\n\nimport { ButtonExProps } from './ButtonExProps.tsx'\n\nconst ButtonExBase = forwardRef<HTMLButtonElement, ButtonExProps>((props, ref) => {\n const theme = useTheme()\n const { busy, busyVariant = 'linear', busyOpacity, onClick, children, ...rootProps } = mergeBoxlikeStyles<ButtonExProps>(theme, props)\n\n const localOnClick = (event: MouseEvent<HTMLButtonElement>) => {\n if (!busy) {\n onClick?.(event)\n }\n }\n\n return (\n <Button ref={ref} onClick={localOnClick} {...rootProps}>\n {busy && busyVariant === 'linear'\n ? <BusyLinearProgress rounded opacity={busyOpacity ?? 0} />\n : null}\n {busy && busyVariant === 'circular'\n ? <BusyCircularProgress rounded size={24} opacity={busyOpacity ?? 0.5} />\n : null}\n {children}\n </Button>\n )\n})\n\nButtonExBase.displayName = 'ButtonExBaseXYLabs'\n\nexport { ButtonExBase }\n","import React, { forwardRef, MouseEvent } from 'react'\nimport { useNavigate } from 'react-router-dom'\n\nimport { ButtonExBase } from './ButtonExBase.tsx'\nimport { ButtonExProps } from './ButtonExProps.tsx'\n\nconst ButtonToEx = forwardRef<HTMLButtonElement, ButtonExProps>(({ to, toOptions, onClick, ...props }, ref) => {\n const navigate = useNavigate()\n const localOnClick = (event: MouseEvent<HTMLButtonElement>) => {\n onClick?.(event)\n if (to) {\n navigate(to, toOptions)\n }\n }\n\n return <ButtonExBase ref={ref} onClick={localOnClick} {...props} />\n})\n\nButtonToEx.displayName = 'ButtonToExXYLabs'\n\nexport { ButtonToEx }\n"],"mappings":";;;;AAAA,OAAOA,UAASC,cAAAA,mBAAkB;;;ACAlC,SAASC,QAAQC,gBAAgB;AACjC,SAASC,sBAAsBC,oBAAoBC,0BAA0B;AAC7E,OAAOC,SAASC,kBAA8B;AAI9C,IAAMC,eAAeC,2BAA6C,CAACC,OAAOC,QAAAA;AACxE,QAAMC,QAAQC,SAAAA;AACd,QAAM,EAAEC,MAAMC,cAAc,UAAUC,aAAaC,SAASC,UAAU,GAAGC,UAAAA,IAAcC,mBAAkCR,OAAOF,KAAAA;AAEhI,QAAMW,eAAe,wBAACC,UAAAA;AACpB,QAAI,CAACR,MAAM;AACTG,yCAAUK;IACZ;EACF,GAJqB;AAMrB,SACE,sBAAA,cAACC,QAAAA;IAAOZ;IAAUM,SAASI;IAAe,GAAGF;KAC1CL,QAAQC,gBAAgB,WACrB,sBAAA,cAACS,oBAAAA;IAAmBC,SAAAA;IAAQC,SAASV,eAAe;OACpD,MACHF,QAAQC,gBAAgB,aACrB,sBAAA,cAACY,sBAAAA;IAAqBF,SAAAA;IAAQG,MAAM;IAAIF,SAASV,eAAe;OAChE,MACHE,QAAAA;AAGP,CAAA;AAEAV,aAAaqB,cAAc;;;AC7B3B,OAAOC,UAASC,cAAAA,mBAA8B;AAC9C,SAASC,mBAAmB;AAK5B,IAAMC,aAAaC,gBAAAA,YAA6C,CAAC,EAAEC,IAAIC,WAAWC,SAAS,GAAGC,MAAAA,GAASC,QAAAA;AACrG,QAAMC,WAAWC,YAAAA;AACjB,QAAMC,eAAe,wBAACC,UAAAA;AACpBN,uCAAUM;AACV,QAAIR,IAAI;AACNK,eAASL,IAAIC,SAAAA;IACf;EACF,GALqB;AAOrB,SAAO,gBAAAQ,OAAA,cAACC,cAAAA;IAAaN;IAAUF,SAASK;IAAe,GAAGJ;;AAC5D,CAAA;AAEAL,WAAWa,cAAc;;;AFZzB,IAAMC,WAAWC,gBAAAA,YAA6C,CAAC,EAAEC,IAAI,GAAGC,MAAAA,GAASC,QAAAA;AAC/E,SAAOF,KAAK,gBAAAG,OAAA,cAACC,YAAAA;IAAWJ;IAAQE;IAAW,GAAGD;OAAY,gBAAAE,OAAA,cAACE,cAAiBJ,KAAAA;AAC9E,CAAA;AAEAH,SAASQ,cAAc;","names":["React","forwardRef","Button","useTheme","BusyCircularProgress","BusyLinearProgress","mergeBoxlikeStyles","React","forwardRef","ButtonExBase","forwardRef","props","ref","theme","useTheme","busy","busyVariant","busyOpacity","onClick","children","rootProps","mergeBoxlikeStyles","localOnClick","event","Button","BusyLinearProgress","rounded","opacity","BusyCircularProgress","size","displayName","React","forwardRef","useNavigate","ButtonToEx","forwardRef","to","toOptions","onClick","props","ref","navigate","useNavigate","localOnClick","event","React","ButtonExBase","displayName","ButtonEx","forwardRef","to","props","ref","React","ButtonToEx","ButtonExBase","displayName"]}
package/package.json CHANGED
@@ -13,18 +13,18 @@
13
13
  "packages/*"
14
14
  ],
15
15
  "dependencies": {
16
- "@xylabs/react-shared": "^3.4.0",
17
- "react-router-dom": "^6.24.1"
16
+ "@xylabs/react-shared": "^3.4.2",
17
+ "react-router-dom": "^6.26.0"
18
18
  },
19
19
  "description": "Common React library for all XY Labs projects that use React",
20
20
  "devDependencies": {
21
- "@storybook/react": "^8.2.1",
21
+ "@storybook/react": "^8.2.7",
22
22
  "@types/react": "^18.3.3",
23
- "@xylabs/react-flexbox": "^3.4.0",
24
- "@xylabs/ts-scripts-yarn3": "^3.11.12",
25
- "@xylabs/tsconfig-react": "^3.11.12",
23
+ "@xylabs/react-flexbox": "^3.4.2",
24
+ "@xylabs/ts-scripts-yarn3": "^3.15.16",
25
+ "@xylabs/tsconfig-react": "^3.15.16",
26
26
  "react": "^18.3.1",
27
- "typescript": "^5.5.3"
27
+ "typescript": "^5.5.4"
28
28
  },
29
29
  "peerDependencies": {
30
30
  "@mui/material": "^5",
@@ -36,7 +36,7 @@
36
36
  "node": {
37
37
  "import": {
38
38
  "types": "./dist/node/index.d.mts",
39
- "default": "./dist/node/index.js"
39
+ "default": "./dist/node/index.mjs"
40
40
  },
41
41
  "require": {
42
42
  "types": "./dist/node/index.d.cts",
@@ -46,20 +46,20 @@
46
46
  "browser": {
47
47
  "import": {
48
48
  "types": "./dist/browser/index.d.mts",
49
- "default": "./dist/browser/index.js"
49
+ "default": "./dist/browser/index.mjs"
50
50
  },
51
51
  "require": {
52
52
  "types": "./dist/browser/index.d.cts",
53
53
  "default": "./dist/browser/index.cjs"
54
54
  }
55
55
  },
56
- "default": "./dist/browser/index.js"
56
+ "default": "./dist/browser/index.mjs"
57
57
  },
58
58
  "./package.json": "./package.json"
59
59
  },
60
60
  "types": "dist/browser/index.d.ts",
61
61
  "main": "./dist/browser/index.cjs",
62
- "module": "./dist/browser/index.js",
62
+ "module": "./dist/browser/index.mjs",
63
63
  "homepage": "https://xylabs.com",
64
64
  "keywords": [
65
65
  "utility",
@@ -75,6 +75,6 @@
75
75
  "url": "https://github.com/xylabs/sdk-react.git"
76
76
  },
77
77
  "sideEffects": false,
78
- "version": "3.4.0",
78
+ "version": "3.4.2",
79
79
  "type": "module"
80
80
  }
@@ -1,6 +1,8 @@
1
1
  import { Meta, StoryFn } from '@storybook/react'
2
- import { ButtonEx } from '@xylabs/react-button'
3
2
  import { FlexCol, FlexRow } from '@xylabs/react-flexbox'
3
+ import React from 'react'
4
+
5
+ import { ButtonEx } from './ButtonEx.tsx'
4
6
 
5
7
  const StorybookEntry = {
6
8
  argTypes: {},
@@ -13,7 +15,7 @@ const StorybookEntry = {
13
15
  title: 'button/ButtonEx',
14
16
  } as Meta<typeof ButtonEx>
15
17
 
16
- const DefaultTemplate: StoryFn<typeof ButtonEx> = (args) => (
18
+ const DefaultTemplate: StoryFn<typeof ButtonEx> = args => (
17
19
  <FlexRow justifyContent="flex-start">
18
20
  <FlexCol marginX={1}>
19
21
  <ButtonEx {...args}>Default</ButtonEx>
@@ -41,5 +43,5 @@ const BusyLinear = DefaultTemplate.bind({})
41
43
  BusyLinear.args = { busy: true, busyVariant: 'linear' }
42
44
 
43
45
  export { BusyCircular, BusyLinear, Default }
44
- // eslint-disable-next-line import/no-default-export
46
+
45
47
  export default StorybookEntry
@@ -1,8 +1,8 @@
1
- import { forwardRef } from 'react'
1
+ import React, { forwardRef } from 'react'
2
2
 
3
- import { ButtonExBase } from './ButtonExBase.jsx'
4
- import { ButtonExProps } from './ButtonExProps.jsx'
5
- import { ButtonToEx } from './ButtonExTo.jsx'
3
+ import { ButtonExBase } from './ButtonExBase.tsx'
4
+ import { ButtonExProps } from './ButtonExProps.tsx'
5
+ import { ButtonToEx } from './ButtonExTo.tsx'
6
6
 
7
7
  const ButtonEx = forwardRef<HTMLButtonElement, ButtonExProps>(({ to, ...props }, ref) => {
8
8
  return to ? <ButtonToEx to={to} ref={ref} {...props} /> : <ButtonExBase {...props} />
@@ -1,8 +1,8 @@
1
1
  import { Button, useTheme } from '@mui/material'
2
2
  import { BusyCircularProgress, BusyLinearProgress, mergeBoxlikeStyles } from '@xylabs/react-shared'
3
- import { forwardRef, MouseEvent } from 'react'
3
+ import React, { forwardRef, MouseEvent } from 'react'
4
4
 
5
- import { ButtonExProps } from './ButtonExProps.jsx'
5
+ import { ButtonExProps } from './ButtonExProps.tsx'
6
6
 
7
7
  const ButtonExBase = forwardRef<HTMLButtonElement, ButtonExProps>((props, ref) => {
8
8
  const theme = useTheme()
@@ -16,12 +16,12 @@ const ButtonExBase = forwardRef<HTMLButtonElement, ButtonExProps>((props, ref) =
16
16
 
17
17
  return (
18
18
  <Button ref={ref} onClick={localOnClick} {...rootProps}>
19
- {busy && busyVariant === 'linear' ?
20
- <BusyLinearProgress rounded opacity={busyOpacity ?? 0} />
21
- : null}
22
- {busy && busyVariant === 'circular' ?
23
- <BusyCircularProgress rounded size={24} opacity={busyOpacity ?? 0.5} />
24
- : null}
19
+ {busy && busyVariant === 'linear'
20
+ ? <BusyLinearProgress rounded opacity={busyOpacity ?? 0} />
21
+ : null}
22
+ {busy && busyVariant === 'circular'
23
+ ? <BusyCircularProgress rounded size={24} opacity={busyOpacity ?? 0.5} />
24
+ : null}
25
25
  {children}
26
26
  </Button>
27
27
  )
@@ -1,8 +1,8 @@
1
- import { forwardRef, MouseEvent } from 'react'
1
+ import React, { forwardRef, MouseEvent } from 'react'
2
2
  import { useNavigate } from 'react-router-dom'
3
3
 
4
- import { ButtonExBase } from './ButtonExBase.jsx'
5
- import { ButtonExProps } from './ButtonExProps.jsx'
4
+ import { ButtonExBase } from './ButtonExBase.tsx'
5
+ import { ButtonExProps } from './ButtonExProps.tsx'
6
6
 
7
7
  const ButtonToEx = forwardRef<HTMLButtonElement, ButtonExProps>(({ to, toOptions, onClick, ...props }, ref) => {
8
8
  const navigate = useNavigate()
@@ -1,2 +1,2 @@
1
- export * from './ButtonEx.jsx'
2
- export * from './ButtonExProps.jsx'
1
+ export * from './ButtonEx.tsx'
2
+ export * from './ButtonExProps.tsx'
package/src/index.ts CHANGED
@@ -1 +1 @@
1
- export * from './components/index.js'
1
+ export * from './components/index.ts'
@@ -1,50 +0,0 @@
1
- // src/components/ButtonEx.tsx
2
- import { forwardRef as forwardRef3 } from "react";
3
-
4
- // src/components/ButtonExBase.tsx
5
- import { Button, useTheme } from "@mui/material";
6
- import { BusyCircularProgress, BusyLinearProgress, mergeBoxlikeStyles } from "@xylabs/react-shared";
7
- import { forwardRef } from "react";
8
- import { jsx, jsxs } from "react/jsx-runtime";
9
- var ButtonExBase = forwardRef((props, ref) => {
10
- const theme = useTheme();
11
- const { busy, busyVariant = "linear", busyOpacity, onClick, children, ...rootProps } = mergeBoxlikeStyles(theme, props);
12
- const localOnClick = (event) => {
13
- if (!busy) {
14
- onClick?.(event);
15
- }
16
- };
17
- return /* @__PURE__ */ jsxs(Button, { ref, onClick: localOnClick, ...rootProps, children: [
18
- busy && busyVariant === "linear" ? /* @__PURE__ */ jsx(BusyLinearProgress, { rounded: true, opacity: busyOpacity ?? 0 }) : null,
19
- busy && busyVariant === "circular" ? /* @__PURE__ */ jsx(BusyCircularProgress, { rounded: true, size: 24, opacity: busyOpacity ?? 0.5 }) : null,
20
- children
21
- ] });
22
- });
23
- ButtonExBase.displayName = "ButtonExBaseXYLabs";
24
-
25
- // src/components/ButtonExTo.tsx
26
- import { forwardRef as forwardRef2 } from "react";
27
- import { useNavigate } from "react-router-dom";
28
- import { jsx as jsx2 } from "react/jsx-runtime";
29
- var ButtonToEx = forwardRef2(({ to, toOptions, onClick, ...props }, ref) => {
30
- const navigate = useNavigate();
31
- const localOnClick = (event) => {
32
- onClick?.(event);
33
- if (to) {
34
- navigate(to, toOptions);
35
- }
36
- };
37
- return /* @__PURE__ */ jsx2(ButtonExBase, { ref, onClick: localOnClick, ...props });
38
- });
39
- ButtonToEx.displayName = "ButtonToExXYLabs";
40
-
41
- // src/components/ButtonEx.tsx
42
- import { jsx as jsx3 } from "react/jsx-runtime";
43
- var ButtonEx = forwardRef3(({ to, ...props }, ref) => {
44
- return to ? /* @__PURE__ */ jsx3(ButtonToEx, { to, ref, ...props }) : /* @__PURE__ */ jsx3(ButtonExBase, { ...props });
45
- });
46
- ButtonEx.displayName = "ButtonExXYLabs";
47
- export {
48
- ButtonEx
49
- };
50
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/ButtonEx.tsx","../../src/components/ButtonExBase.tsx","../../src/components/ButtonExTo.tsx"],"sourcesContent":["import { forwardRef } from 'react'\n\nimport { ButtonExBase } from './ButtonExBase.jsx'\nimport { ButtonExProps } from './ButtonExProps.jsx'\nimport { ButtonToEx } from './ButtonExTo.jsx'\n\nconst ButtonEx = forwardRef<HTMLButtonElement, ButtonExProps>(({ to, ...props }, ref) => {\n return to ? <ButtonToEx to={to} ref={ref} {...props} /> : <ButtonExBase {...props} />\n})\n\nButtonEx.displayName = 'ButtonExXYLabs'\n\nexport { ButtonEx }\n","import { Button, useTheme } from '@mui/material'\nimport { BusyCircularProgress, BusyLinearProgress, mergeBoxlikeStyles } from '@xylabs/react-shared'\nimport { forwardRef, MouseEvent } from 'react'\n\nimport { ButtonExProps } from './ButtonExProps.jsx'\n\nconst ButtonExBase = forwardRef<HTMLButtonElement, ButtonExProps>((props, ref) => {\n const theme = useTheme()\n const { busy, busyVariant = 'linear', busyOpacity, onClick, children, ...rootProps } = mergeBoxlikeStyles<ButtonExProps>(theme, props)\n\n const localOnClick = (event: MouseEvent<HTMLButtonElement>) => {\n if (!busy) {\n onClick?.(event)\n }\n }\n\n return (\n <Button ref={ref} onClick={localOnClick} {...rootProps}>\n {busy && busyVariant === 'linear' ?\n <BusyLinearProgress rounded opacity={busyOpacity ?? 0} />\n : null}\n {busy && busyVariant === 'circular' ?\n <BusyCircularProgress rounded size={24} opacity={busyOpacity ?? 0.5} />\n : null}\n {children}\n </Button>\n )\n})\n\nButtonExBase.displayName = 'ButtonExBaseXYLabs'\n\nexport { ButtonExBase }\n","import { forwardRef, MouseEvent } from 'react'\nimport { useNavigate } from 'react-router-dom'\n\nimport { ButtonExBase } from './ButtonExBase.jsx'\nimport { ButtonExProps } from './ButtonExProps.jsx'\n\nconst ButtonToEx = forwardRef<HTMLButtonElement, ButtonExProps>(({ to, toOptions, onClick, ...props }, ref) => {\n const navigate = useNavigate()\n const localOnClick = (event: MouseEvent<HTMLButtonElement>) => {\n onClick?.(event)\n if (to) {\n navigate(to, toOptions)\n }\n }\n\n return <ButtonExBase ref={ref} onClick={localOnClick} {...props} />\n})\n\nButtonToEx.displayName = 'ButtonToExXYLabs'\n\nexport { ButtonToEx }\n"],"mappings":";AAAA,SAAS,cAAAA,mBAAkB;;;ACA3B,SAAS,QAAQ,gBAAgB;AACjC,SAAS,sBAAsB,oBAAoB,0BAA0B;AAC7E,SAAS,kBAA8B;AAenC,SAEI,KAFJ;AAXJ,IAAM,eAAe,WAA6C,CAAC,OAAO,QAAQ;AAChF,QAAM,QAAQ,SAAS;AACvB,QAAM,EAAE,MAAM,cAAc,UAAU,aAAa,SAAS,UAAU,GAAG,UAAU,IAAI,mBAAkC,OAAO,KAAK;AAErI,QAAM,eAAe,CAAC,UAAyC;AAC7D,QAAI,CAAC,MAAM;AACT,gBAAU,KAAK;AAAA,IACjB;AAAA,EACF;AAEA,SACE,qBAAC,UAAO,KAAU,SAAS,cAAe,GAAG,WAC1C;AAAA,YAAQ,gBAAgB,WACvB,oBAAC,sBAAmB,SAAO,MAAC,SAAS,eAAe,GAAG,IACvD;AAAA,IACD,QAAQ,gBAAgB,aACvB,oBAAC,wBAAqB,SAAO,MAAC,MAAM,IAAI,SAAS,eAAe,KAAK,IACrE;AAAA,IACD;AAAA,KACH;AAEJ,CAAC;AAED,aAAa,cAAc;;;AC7B3B,SAAS,cAAAC,mBAA8B;AACvC,SAAS,mBAAmB;AAcnB,gBAAAC,YAAA;AATT,IAAM,aAAaC,YAA6C,CAAC,EAAE,IAAI,WAAW,SAAS,GAAG,MAAM,GAAG,QAAQ;AAC7G,QAAM,WAAW,YAAY;AAC7B,QAAM,eAAe,CAAC,UAAyC;AAC7D,cAAU,KAAK;AACf,QAAI,IAAI;AACN,eAAS,IAAI,SAAS;AAAA,IACxB;AAAA,EACF;AAEA,SAAO,gBAAAD,KAAC,gBAAa,KAAU,SAAS,cAAe,GAAG,OAAO;AACnE,CAAC;AAED,WAAW,cAAc;;;AFXX,gBAAAE,YAAA;AADd,IAAM,WAAWC,YAA6C,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,QAAQ;AACvF,SAAO,KAAK,gBAAAD,KAAC,cAAW,IAAQ,KAAW,GAAG,OAAO,IAAK,gBAAAA,KAAC,gBAAc,GAAG,OAAO;AACrF,CAAC;AAED,SAAS,cAAc;","names":["forwardRef","forwardRef","jsx","forwardRef","jsx","forwardRef"]}
@@ -1,50 +0,0 @@
1
- // src/components/ButtonEx.tsx
2
- import { forwardRef as forwardRef3 } from "react";
3
-
4
- // src/components/ButtonExBase.tsx
5
- import { Button, useTheme } from "@mui/material";
6
- import { BusyCircularProgress, BusyLinearProgress, mergeBoxlikeStyles } from "@xylabs/react-shared";
7
- import { forwardRef } from "react";
8
- import { jsx, jsxs } from "react/jsx-runtime";
9
- var ButtonExBase = forwardRef((props, ref) => {
10
- const theme = useTheme();
11
- const { busy, busyVariant = "linear", busyOpacity, onClick, children, ...rootProps } = mergeBoxlikeStyles(theme, props);
12
- const localOnClick = (event) => {
13
- if (!busy) {
14
- onClick?.(event);
15
- }
16
- };
17
- return /* @__PURE__ */ jsxs(Button, { ref, onClick: localOnClick, ...rootProps, children: [
18
- busy && busyVariant === "linear" ? /* @__PURE__ */ jsx(BusyLinearProgress, { rounded: true, opacity: busyOpacity ?? 0 }) : null,
19
- busy && busyVariant === "circular" ? /* @__PURE__ */ jsx(BusyCircularProgress, { rounded: true, size: 24, opacity: busyOpacity ?? 0.5 }) : null,
20
- children
21
- ] });
22
- });
23
- ButtonExBase.displayName = "ButtonExBaseXYLabs";
24
-
25
- // src/components/ButtonExTo.tsx
26
- import { forwardRef as forwardRef2 } from "react";
27
- import { useNavigate } from "react-router-dom";
28
- import { jsx as jsx2 } from "react/jsx-runtime";
29
- var ButtonToEx = forwardRef2(({ to, toOptions, onClick, ...props }, ref) => {
30
- const navigate = useNavigate();
31
- const localOnClick = (event) => {
32
- onClick?.(event);
33
- if (to) {
34
- navigate(to, toOptions);
35
- }
36
- };
37
- return /* @__PURE__ */ jsx2(ButtonExBase, { ref, onClick: localOnClick, ...props });
38
- });
39
- ButtonToEx.displayName = "ButtonToExXYLabs";
40
-
41
- // src/components/ButtonEx.tsx
42
- import { jsx as jsx3 } from "react/jsx-runtime";
43
- var ButtonEx = forwardRef3(({ to, ...props }, ref) => {
44
- return to ? /* @__PURE__ */ jsx3(ButtonToEx, { to, ref, ...props }) : /* @__PURE__ */ jsx3(ButtonExBase, { ...props });
45
- });
46
- ButtonEx.displayName = "ButtonExXYLabs";
47
- export {
48
- ButtonEx
49
- };
50
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/ButtonEx.tsx","../../src/components/ButtonExBase.tsx","../../src/components/ButtonExTo.tsx"],"sourcesContent":["import { forwardRef } from 'react'\n\nimport { ButtonExBase } from './ButtonExBase.jsx'\nimport { ButtonExProps } from './ButtonExProps.jsx'\nimport { ButtonToEx } from './ButtonExTo.jsx'\n\nconst ButtonEx = forwardRef<HTMLButtonElement, ButtonExProps>(({ to, ...props }, ref) => {\n return to ? <ButtonToEx to={to} ref={ref} {...props} /> : <ButtonExBase {...props} />\n})\n\nButtonEx.displayName = 'ButtonExXYLabs'\n\nexport { ButtonEx }\n","import { Button, useTheme } from '@mui/material'\nimport { BusyCircularProgress, BusyLinearProgress, mergeBoxlikeStyles } from '@xylabs/react-shared'\nimport { forwardRef, MouseEvent } from 'react'\n\nimport { ButtonExProps } from './ButtonExProps.jsx'\n\nconst ButtonExBase = forwardRef<HTMLButtonElement, ButtonExProps>((props, ref) => {\n const theme = useTheme()\n const { busy, busyVariant = 'linear', busyOpacity, onClick, children, ...rootProps } = mergeBoxlikeStyles<ButtonExProps>(theme, props)\n\n const localOnClick = (event: MouseEvent<HTMLButtonElement>) => {\n if (!busy) {\n onClick?.(event)\n }\n }\n\n return (\n <Button ref={ref} onClick={localOnClick} {...rootProps}>\n {busy && busyVariant === 'linear' ?\n <BusyLinearProgress rounded opacity={busyOpacity ?? 0} />\n : null}\n {busy && busyVariant === 'circular' ?\n <BusyCircularProgress rounded size={24} opacity={busyOpacity ?? 0.5} />\n : null}\n {children}\n </Button>\n )\n})\n\nButtonExBase.displayName = 'ButtonExBaseXYLabs'\n\nexport { ButtonExBase }\n","import { forwardRef, MouseEvent } from 'react'\nimport { useNavigate } from 'react-router-dom'\n\nimport { ButtonExBase } from './ButtonExBase.jsx'\nimport { ButtonExProps } from './ButtonExProps.jsx'\n\nconst ButtonToEx = forwardRef<HTMLButtonElement, ButtonExProps>(({ to, toOptions, onClick, ...props }, ref) => {\n const navigate = useNavigate()\n const localOnClick = (event: MouseEvent<HTMLButtonElement>) => {\n onClick?.(event)\n if (to) {\n navigate(to, toOptions)\n }\n }\n\n return <ButtonExBase ref={ref} onClick={localOnClick} {...props} />\n})\n\nButtonToEx.displayName = 'ButtonToExXYLabs'\n\nexport { ButtonToEx }\n"],"mappings":";AAAA,SAAS,cAAAA,mBAAkB;;;ACA3B,SAAS,QAAQ,gBAAgB;AACjC,SAAS,sBAAsB,oBAAoB,0BAA0B;AAC7E,SAAS,kBAA8B;AAenC,SAEI,KAFJ;AAXJ,IAAM,eAAe,WAA6C,CAAC,OAAO,QAAQ;AAChF,QAAM,QAAQ,SAAS;AACvB,QAAM,EAAE,MAAM,cAAc,UAAU,aAAa,SAAS,UAAU,GAAG,UAAU,IAAI,mBAAkC,OAAO,KAAK;AAErI,QAAM,eAAe,CAAC,UAAyC;AAC7D,QAAI,CAAC,MAAM;AACT,gBAAU,KAAK;AAAA,IACjB;AAAA,EACF;AAEA,SACE,qBAAC,UAAO,KAAU,SAAS,cAAe,GAAG,WAC1C;AAAA,YAAQ,gBAAgB,WACvB,oBAAC,sBAAmB,SAAO,MAAC,SAAS,eAAe,GAAG,IACvD;AAAA,IACD,QAAQ,gBAAgB,aACvB,oBAAC,wBAAqB,SAAO,MAAC,MAAM,IAAI,SAAS,eAAe,KAAK,IACrE;AAAA,IACD;AAAA,KACH;AAEJ,CAAC;AAED,aAAa,cAAc;;;AC7B3B,SAAS,cAAAC,mBAA8B;AACvC,SAAS,mBAAmB;AAcnB,gBAAAC,YAAA;AATT,IAAM,aAAaC,YAA6C,CAAC,EAAE,IAAI,WAAW,SAAS,GAAG,MAAM,GAAG,QAAQ;AAC7G,QAAM,WAAW,YAAY;AAC7B,QAAM,eAAe,CAAC,UAAyC;AAC7D,cAAU,KAAK;AACf,QAAI,IAAI;AACN,eAAS,IAAI,SAAS;AAAA,IACxB;AAAA,EACF;AAEA,SAAO,gBAAAD,KAAC,gBAAa,KAAU,SAAS,cAAe,GAAG,OAAO;AACnE,CAAC;AAED,WAAW,cAAc;;;AFXX,gBAAAE,YAAA;AADd,IAAM,WAAWC,YAA6C,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,QAAQ;AACvF,SAAO,KAAK,gBAAAD,KAAC,cAAW,IAAQ,KAAW,GAAG,OAAO,IAAK,gBAAAA,KAAC,gBAAc,GAAG,OAAO;AACrF,CAAC;AAED,SAAS,cAAc;","names":["forwardRef","forwardRef","jsx","forwardRef","jsx","forwardRef"]}
@@ -1,50 +0,0 @@
1
- // src/components/ButtonEx.tsx
2
- import { forwardRef as forwardRef3 } from "react";
3
-
4
- // src/components/ButtonExBase.tsx
5
- import { Button, useTheme } from "@mui/material";
6
- import { BusyCircularProgress, BusyLinearProgress, mergeBoxlikeStyles } from "@xylabs/react-shared";
7
- import { forwardRef } from "react";
8
- import { jsx, jsxs } from "react/jsx-runtime";
9
- var ButtonExBase = forwardRef((props, ref) => {
10
- const theme = useTheme();
11
- const { busy, busyVariant = "linear", busyOpacity, onClick, children, ...rootProps } = mergeBoxlikeStyles(theme, props);
12
- const localOnClick = (event) => {
13
- if (!busy) {
14
- onClick == null ? void 0 : onClick(event);
15
- }
16
- };
17
- return /* @__PURE__ */ jsxs(Button, { ref, onClick: localOnClick, ...rootProps, children: [
18
- busy && busyVariant === "linear" ? /* @__PURE__ */ jsx(BusyLinearProgress, { rounded: true, opacity: busyOpacity ?? 0 }) : null,
19
- busy && busyVariant === "circular" ? /* @__PURE__ */ jsx(BusyCircularProgress, { rounded: true, size: 24, opacity: busyOpacity ?? 0.5 }) : null,
20
- children
21
- ] });
22
- });
23
- ButtonExBase.displayName = "ButtonExBaseXYLabs";
24
-
25
- // src/components/ButtonExTo.tsx
26
- import { forwardRef as forwardRef2 } from "react";
27
- import { useNavigate } from "react-router-dom";
28
- import { jsx as jsx2 } from "react/jsx-runtime";
29
- var ButtonToEx = forwardRef2(({ to, toOptions, onClick, ...props }, ref) => {
30
- const navigate = useNavigate();
31
- const localOnClick = (event) => {
32
- onClick == null ? void 0 : onClick(event);
33
- if (to) {
34
- navigate(to, toOptions);
35
- }
36
- };
37
- return /* @__PURE__ */ jsx2(ButtonExBase, { ref, onClick: localOnClick, ...props });
38
- });
39
- ButtonToEx.displayName = "ButtonToExXYLabs";
40
-
41
- // src/components/ButtonEx.tsx
42
- import { jsx as jsx3 } from "react/jsx-runtime";
43
- var ButtonEx = forwardRef3(({ to, ...props }, ref) => {
44
- return to ? /* @__PURE__ */ jsx3(ButtonToEx, { to, ref, ...props }) : /* @__PURE__ */ jsx3(ButtonExBase, { ...props });
45
- });
46
- ButtonEx.displayName = "ButtonExXYLabs";
47
- export {
48
- ButtonEx
49
- };
50
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/ButtonEx.tsx","../../src/components/ButtonExBase.tsx","../../src/components/ButtonExTo.tsx"],"sourcesContent":["import { forwardRef } from 'react'\n\nimport { ButtonExBase } from './ButtonExBase.jsx'\nimport { ButtonExProps } from './ButtonExProps.jsx'\nimport { ButtonToEx } from './ButtonExTo.jsx'\n\nconst ButtonEx = forwardRef<HTMLButtonElement, ButtonExProps>(({ to, ...props }, ref) => {\n return to ? <ButtonToEx to={to} ref={ref} {...props} /> : <ButtonExBase {...props} />\n})\n\nButtonEx.displayName = 'ButtonExXYLabs'\n\nexport { ButtonEx }\n","import { Button, useTheme } from '@mui/material'\nimport { BusyCircularProgress, BusyLinearProgress, mergeBoxlikeStyles } from '@xylabs/react-shared'\nimport { forwardRef, MouseEvent } from 'react'\n\nimport { ButtonExProps } from './ButtonExProps.jsx'\n\nconst ButtonExBase = forwardRef<HTMLButtonElement, ButtonExProps>((props, ref) => {\n const theme = useTheme()\n const { busy, busyVariant = 'linear', busyOpacity, onClick, children, ...rootProps } = mergeBoxlikeStyles<ButtonExProps>(theme, props)\n\n const localOnClick = (event: MouseEvent<HTMLButtonElement>) => {\n if (!busy) {\n onClick?.(event)\n }\n }\n\n return (\n <Button ref={ref} onClick={localOnClick} {...rootProps}>\n {busy && busyVariant === 'linear' ?\n <BusyLinearProgress rounded opacity={busyOpacity ?? 0} />\n : null}\n {busy && busyVariant === 'circular' ?\n <BusyCircularProgress rounded size={24} opacity={busyOpacity ?? 0.5} />\n : null}\n {children}\n </Button>\n )\n})\n\nButtonExBase.displayName = 'ButtonExBaseXYLabs'\n\nexport { ButtonExBase }\n","import { forwardRef, MouseEvent } from 'react'\nimport { useNavigate } from 'react-router-dom'\n\nimport { ButtonExBase } from './ButtonExBase.jsx'\nimport { ButtonExProps } from './ButtonExProps.jsx'\n\nconst ButtonToEx = forwardRef<HTMLButtonElement, ButtonExProps>(({ to, toOptions, onClick, ...props }, ref) => {\n const navigate = useNavigate()\n const localOnClick = (event: MouseEvent<HTMLButtonElement>) => {\n onClick?.(event)\n if (to) {\n navigate(to, toOptions)\n }\n }\n\n return <ButtonExBase ref={ref} onClick={localOnClick} {...props} />\n})\n\nButtonToEx.displayName = 'ButtonToExXYLabs'\n\nexport { ButtonToEx }\n"],"mappings":";AAAA,SAAS,cAAAA,mBAAkB;;;ACA3B,SAAS,QAAQ,gBAAgB;AACjC,SAAS,sBAAsB,oBAAoB,0BAA0B;AAC7E,SAAS,kBAA8B;AAenC,SAEI,KAFJ;AAXJ,IAAM,eAAe,WAA6C,CAAC,OAAO,QAAQ;AAChF,QAAM,QAAQ,SAAS;AACvB,QAAM,EAAE,MAAM,cAAc,UAAU,aAAa,SAAS,UAAU,GAAG,UAAU,IAAI,mBAAkC,OAAO,KAAK;AAErI,QAAM,eAAe,CAAC,UAAyC;AAC7D,QAAI,CAAC,MAAM;AACT,yCAAU;AAAA,IACZ;AAAA,EACF;AAEA,SACE,qBAAC,UAAO,KAAU,SAAS,cAAe,GAAG,WAC1C;AAAA,YAAQ,gBAAgB,WACvB,oBAAC,sBAAmB,SAAO,MAAC,SAAS,eAAe,GAAG,IACvD;AAAA,IACD,QAAQ,gBAAgB,aACvB,oBAAC,wBAAqB,SAAO,MAAC,MAAM,IAAI,SAAS,eAAe,KAAK,IACrE;AAAA,IACD;AAAA,KACH;AAEJ,CAAC;AAED,aAAa,cAAc;;;AC7B3B,SAAS,cAAAC,mBAA8B;AACvC,SAAS,mBAAmB;AAcnB,gBAAAC,YAAA;AATT,IAAM,aAAaC,YAA6C,CAAC,EAAE,IAAI,WAAW,SAAS,GAAG,MAAM,GAAG,QAAQ;AAC7G,QAAM,WAAW,YAAY;AAC7B,QAAM,eAAe,CAAC,UAAyC;AAC7D,uCAAU;AACV,QAAI,IAAI;AACN,eAAS,IAAI,SAAS;AAAA,IACxB;AAAA,EACF;AAEA,SAAO,gBAAAD,KAAC,gBAAa,KAAU,SAAS,cAAe,GAAG,OAAO;AACnE,CAAC;AAED,WAAW,cAAc;;;AFXX,gBAAAE,YAAA;AADd,IAAM,WAAWC,YAA6C,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,QAAQ;AACvF,SAAO,KAAK,gBAAAD,KAAC,cAAW,IAAQ,KAAW,GAAG,OAAO,IAAK,gBAAAA,KAAC,gBAAc,GAAG,OAAO;AACrF,CAAC;AAED,SAAS,cAAc;","names":["forwardRef","forwardRef","jsx","forwardRef","jsx","forwardRef"]}