@xyo-network/react-share 2.62.3 → 2.63.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.
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ShareButton = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const jsx_runtime_1 = require("react/jsx-runtime");
6
+ const Facebook_1 = tslib_1.__importDefault(require("@mui/icons-material/Facebook"));
7
+ const Share_1 = tslib_1.__importDefault(require("@mui/icons-material/Share"));
8
+ const Twitter_1 = tslib_1.__importDefault(require("@mui/icons-material/Twitter"));
9
+ const material_1 = require("@mui/material");
10
+ const react_button_1 = require("@xylabs/react-button");
11
+ const react_flexbox_1 = require("@xylabs/react-flexbox");
12
+ const react_link_1 = require("@xylabs/react-link");
13
+ const react_1 = require("react");
14
+ const ShareButton = (_a) => {
15
+ var { prepared = true, shareLink } = _a, props = tslib_1.__rest(_a, ["prepared", "shareLink"]);
16
+ const [expanded, setExpanded] = (0, react_1.useState)(false);
17
+ const anchorRef = (0, react_1.useRef)(null);
18
+ const link = shareLink !== null && shareLink !== void 0 ? shareLink : window.location.href;
19
+ return ((0, jsx_runtime_1.jsxs)(react_flexbox_1.FlexRow, Object.assign({ gap: 1, ref: anchorRef }, { children: [(0, jsx_runtime_1.jsx)(react_button_1.ButtonEx, Object.assign({ variant: "text", minWidth: 32, size: "small", disabled: !prepared, onClick: () => {
20
+ setExpanded(true);
21
+ } }, props, { children: (0, jsx_runtime_1.jsx)(Share_1.default, { htmlColor: "gray", fontSize: "small" }) })), (0, jsx_runtime_1.jsx)(material_1.Popover, Object.assign({ open: prepared ? expanded : false, anchorEl: anchorRef.current, onClose: () => setExpanded(false), transitionDuration: 500 }, { children: (0, jsx_runtime_1.jsxs)(react_flexbox_1.FlexRow, Object.assign({ gap: 0.5, padding: 0.5 }, { children: [(0, jsx_runtime_1.jsx)(react_link_1.LinkEx, Object.assign({ lineHeight: 0, style: { color: '#1da1f2' }, onClick: () => {
22
+ window.open(`https://twitter.com/intent/tweet?url=${encodeURIComponent(link)}`);
23
+ setExpanded(false);
24
+ } }, { children: (0, jsx_runtime_1.jsx)(Twitter_1.default, { fontSize: "small" }) })), (0, jsx_runtime_1.jsx)(react_link_1.LinkEx, Object.assign({ lineHeight: 0, style: { color: '#4267b2' }, onClick: () => {
25
+ window.open(`https://www.facebook.com/sharer/sharer.php?u=${encodeURIComponent(link)}`);
26
+ setExpanded(false);
27
+ } }, { children: (0, jsx_runtime_1.jsx)(Facebook_1.default, { fontSize: "small" }) }))] })) }))] })));
28
+ };
29
+ exports.ShareButton = ShareButton;
30
+ //# sourceMappingURL=ShareButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ShareButton.js","sourceRoot":"","sources":["../../src/ShareButton.tsx"],"names":[],"mappings":";;;;;AAAA,oFAAuD;AACvD,8EAAiD;AACjD,kFAAqD;AACrD,4CAAuC;AACvC,uDAA8D;AAC9D,yDAA+C;AAC/C,mDAA2C;AAC3C,iCAAwC;AAOjC,MAAM,WAAW,GAA+B,CAAC,EAAwC,EAAE,EAAE;QAA5C,EAAE,QAAQ,GAAG,IAAI,EAAE,SAAS,OAAY,EAAP,KAAK,sBAAtC,yBAAwC,CAAF;IAC5F,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAA;IAC/C,MAAM,SAAS,GAAG,IAAA,cAAM,EAAC,IAAI,CAAC,CAAA;IAC9B,MAAM,IAAI,GAAG,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAA;IAE9C,OAAO,CACL,wBAAC,uBAAO,kBAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,iBAC7B,uBAAC,uBAAQ,kBACP,OAAO,EAAC,MAAM,EACd,QAAQ,EAAE,EAAE,EACZ,IAAI,EAAC,OAAO,EACZ,QAAQ,EAAE,CAAC,QAAQ,EACnB,OAAO,EAAE,GAAG,EAAE;oBACZ,WAAW,CAAC,IAAI,CAAC,CAAA;gBACnB,CAAC,IACG,KAAK,cAET,uBAAC,eAAS,IAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,GAAG,IACtC,EACX,uBAAC,kBAAO,kBAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,kBAAkB,EAAE,GAAG,gBACjI,wBAAC,uBAAO,kBAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,iBAC7B,uBAAC,mBAAM,kBACL,UAAU,EAAE,CAAC,EACb,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAC3B,OAAO,EAAE,GAAG,EAAE;gCACZ,MAAM,CAAC,IAAI,CAAC,wCAAwC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;gCAC/E,WAAW,CAAC,KAAK,CAAC,CAAA;4BACpB,CAAC,gBAED,uBAAC,iBAAW,IAAC,QAAQ,EAAC,OAAO,GAAG,IACzB,EACT,uBAAC,mBAAM,kBACL,UAAU,EAAE,CAAC,EACb,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAC3B,OAAO,EAAE,GAAG,EAAE;gCACZ,MAAM,CAAC,IAAI,CAAC,gDAAgD,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;gCACvF,WAAW,CAAC,KAAK,CAAC,CAAA;4BACpB,CAAC,gBAED,uBAAC,kBAAY,IAAC,QAAQ,EAAC,OAAO,GAAG,IAC1B,KACD,IACF,KACF,CACX,CAAA;AACH,CAAC,CAAA;AA7CY,QAAA,WAAW,eA6CvB"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./ShareButton"), exports);
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,wDAA6B"}
package/dist/docs.json CHANGED
@@ -25,7 +25,7 @@
25
25
  "fileName": "packages/sdk/packages/share/src/ShareButton.tsx",
26
26
  "line": 11,
27
27
  "character": 2,
28
- "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/6e04b89cd41a/packages/sdk/packages/share/src/ShareButton.tsx#L11"
28
+ "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/979e91e13a6b/packages/sdk/packages/share/src/ShareButton.tsx#L11"
29
29
  }
30
30
  ],
31
31
  "type": {
@@ -46,7 +46,7 @@
46
46
  "fileName": "packages/sdk/packages/share/src/ShareButton.tsx",
47
47
  "line": 12,
48
48
  "character": 2,
49
- "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/6e04b89cd41a/packages/sdk/packages/share/src/ShareButton.tsx#L12"
49
+ "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/979e91e13a6b/packages/sdk/packages/share/src/ShareButton.tsx#L12"
50
50
  }
51
51
  ],
52
52
  "type": {
@@ -69,7 +69,7 @@
69
69
  "fileName": "packages/sdk/packages/share/src/ShareButton.tsx",
70
70
  "line": 10,
71
71
  "character": 17,
72
- "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/6e04b89cd41a/packages/sdk/packages/share/src/ShareButton.tsx#L10"
72
+ "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/979e91e13a6b/packages/sdk/packages/share/src/ShareButton.tsx#L10"
73
73
  }
74
74
  ],
75
75
  "extendedTypes": [
@@ -95,7 +95,7 @@
95
95
  "fileName": "packages/sdk/packages/share/src/ShareButton.tsx",
96
96
  "line": 15,
97
97
  "character": 13,
98
- "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/6e04b89cd41a/packages/sdk/packages/share/src/ShareButton.tsx#L15"
98
+ "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/blob/979e91e13a6b/packages/sdk/packages/share/src/ShareButton.tsx#L15"
99
99
  }
100
100
  ],
101
101
  "signatures": [
@@ -0,0 +1,24 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import FacebookIcon from '@mui/icons-material/Facebook';
3
+ import ShareIcon from '@mui/icons-material/Share';
4
+ import TwitterIcon from '@mui/icons-material/Twitter';
5
+ import { Popover } from '@mui/material';
6
+ import { ButtonEx } from '@xylabs/react-button';
7
+ import { FlexRow } from '@xylabs/react-flexbox';
8
+ import { LinkEx } from '@xylabs/react-link';
9
+ import { useRef, useState } from 'react';
10
+ export const ShareButton = ({ prepared = true, shareLink, ...props }) => {
11
+ const [expanded, setExpanded] = useState(false);
12
+ const anchorRef = useRef(null);
13
+ const link = shareLink ?? window.location.href;
14
+ return (_jsxs(FlexRow, { gap: 1, ref: anchorRef, children: [_jsx(ButtonEx, { variant: "text", minWidth: 32, size: "small", disabled: !prepared, onClick: () => {
15
+ setExpanded(true);
16
+ }, ...props, children: _jsx(ShareIcon, { htmlColor: "gray", fontSize: "small" }) }), _jsx(Popover, { open: prepared ? expanded : false, anchorEl: anchorRef.current, onClose: () => setExpanded(false), transitionDuration: 500, children: _jsxs(FlexRow, { gap: 0.5, padding: 0.5, children: [_jsx(LinkEx, { lineHeight: 0, style: { color: '#1da1f2' }, onClick: () => {
17
+ window.open(`https://twitter.com/intent/tweet?url=${encodeURIComponent(link)}`);
18
+ setExpanded(false);
19
+ }, children: _jsx(TwitterIcon, { fontSize: "small" }) }), _jsx(LinkEx, { lineHeight: 0, style: { color: '#4267b2' }, onClick: () => {
20
+ window.open(`https://www.facebook.com/sharer/sharer.php?u=${encodeURIComponent(link)}`);
21
+ setExpanded(false);
22
+ }, children: _jsx(FacebookIcon, { fontSize: "small" }) })] }) })] }));
23
+ };
24
+ //# sourceMappingURL=ShareButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ShareButton.js","sourceRoot":"","sources":["../../src/ShareButton.tsx"],"names":[],"mappings":";AAAA,OAAO,YAAY,MAAM,8BAA8B,CAAA;AACvD,OAAO,SAAS,MAAM,2BAA2B,CAAA;AACjD,OAAO,WAAW,MAAM,6BAA6B,CAAA;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAiB,MAAM,sBAAsB,CAAA;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAOxC,MAAM,CAAC,MAAM,WAAW,GAA+B,CAAC,EAAE,QAAQ,GAAG,IAAI,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IAClG,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC/C,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;IAC9B,MAAM,IAAI,GAAG,SAAS,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAA;IAE9C,OAAO,CACL,MAAC,OAAO,IAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,aAC7B,KAAC,QAAQ,IACP,OAAO,EAAC,MAAM,EACd,QAAQ,EAAE,EAAE,EACZ,IAAI,EAAC,OAAO,EACZ,QAAQ,EAAE,CAAC,QAAQ,EACnB,OAAO,EAAE,GAAG,EAAE;oBACZ,WAAW,CAAC,IAAI,CAAC,CAAA;gBACnB,CAAC,KACG,KAAK,YAET,KAAC,SAAS,IAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,OAAO,GAAG,GACtC,EACX,KAAC,OAAO,IAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,kBAAkB,EAAE,GAAG,YACjI,MAAC,OAAO,IAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,aAC7B,KAAC,MAAM,IACL,UAAU,EAAE,CAAC,EACb,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAC3B,OAAO,EAAE,GAAG,EAAE;gCACZ,MAAM,CAAC,IAAI,CAAC,wCAAwC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;gCAC/E,WAAW,CAAC,KAAK,CAAC,CAAA;4BACpB,CAAC,YAED,KAAC,WAAW,IAAC,QAAQ,EAAC,OAAO,GAAG,GACzB,EACT,KAAC,MAAM,IACL,UAAU,EAAE,CAAC,EACb,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAC3B,OAAO,EAAE,GAAG,EAAE;gCACZ,MAAM,CAAC,IAAI,CAAC,gDAAgD,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;gCACvF,WAAW,CAAC,KAAK,CAAC,CAAA;4BACpB,CAAC,YAED,KAAC,YAAY,IAAC,QAAQ,EAAC,OAAO,GAAG,GAC1B,IACD,GACF,IACF,CACX,CAAA;AACH,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export * from './ShareButton';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ShareButton.d.ts","sourceRoot":"","sources":["../../src/ShareButton.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAY,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAK9D,MAAM,WAAW,gBAAiB,SAAQ,aAAa;IACrD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA6ClD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA"}
package/package.json CHANGED
@@ -10,9 +10,9 @@
10
10
  "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/issues"
11
11
  },
12
12
  "dependencies": {
13
- "@xylabs/react-button": "~2.18.4",
14
- "@xylabs/react-flexbox": "~2.18.4",
15
- "@xylabs/react-link": "~2.18.4"
13
+ "@xylabs/react-button": "~2.19.1",
14
+ "@xylabs/react-flexbox": "~2.19.1",
15
+ "@xylabs/react-link": "~2.19.1"
16
16
  },
17
17
  "peerDependencies": {
18
18
  "@mui/icons-material": "^5",
@@ -26,39 +26,31 @@
26
26
  },
27
27
  "devDependencies": {
28
28
  "@storybook/react": "^7.4.3",
29
- "@xylabs/ts-scripts-yarn3": "^3.0.28",
29
+ "@xylabs/ts-scripts-yarn3": "^2.19.12",
30
30
  "typescript": "^5.2.2"
31
31
  },
32
32
  "description": "Common React library for all XYO projects that use React",
33
+ "browser": "dist/esm/index.js",
33
34
  "docs": "dist/docs.json",
34
35
  "exports": {
35
36
  ".": {
36
37
  "node": {
37
- "import": {
38
- "types": "./dist/index.d.mts",
39
- "default": "./dist/index.mjs"
40
- },
41
- "require": {
42
- "types": "./dist/index.d.ts",
43
- "default": "./dist/index.js"
44
- }
38
+ "import": "./dist/esm/index.js",
39
+ "require": "./dist/cjs/index.js"
45
40
  },
46
41
  "browser": {
47
- "import": {
48
- "types": "./dist/index.d.mts",
49
- "default": "./dist/index.mjs"
50
- },
51
- "require": {
52
- "types": "./dist/index.d.ts",
53
- "default": "./dist/index.js"
54
- }
42
+ "import": "./dist/esm/index.js",
43
+ "require": "./dist/cjs/index.js"
55
44
  },
56
- "default": "./dist/index.mjs"
45
+ "default": "./dist/esm/index.js"
46
+ },
47
+ "./dist/docs.json": {
48
+ "default": "./dist/docs.json"
57
49
  },
58
50
  "./package.json": "./package.json"
59
51
  },
60
- "main": "dist/index.js",
61
- "module": "dist/index.mjs",
52
+ "main": "dist/cjs/index.js",
53
+ "module": "dist/esm/index.js",
62
54
  "homepage": "https://xyo.network",
63
55
  "keywords": [
64
56
  "xyo",
@@ -79,6 +71,6 @@
79
71
  "license": "yarn license-checker --exclude \"MIT, ISC, Apache-2.0, BSD, BSD-2-Clause, CC-BY-4.0, Unlicense, CC-BY-3.0, CC0-1.0\""
80
72
  },
81
73
  "sideEffects": false,
82
- "types": "dist/index.d.ts",
83
- "version": "2.62.3"
74
+ "types": "dist/types/index.d.ts",
75
+ "version": "2.63.1"
84
76
  }
@@ -1,8 +0,0 @@
1
- /// <reference types="react" />
2
- import { ButtonExProps } from '@xylabs/react-button';
3
- export interface ShareButtonProps extends ButtonExProps {
4
- prepared?: boolean;
5
- shareLink?: string;
6
- }
7
- export declare const ShareButton: React.FC<ShareButtonProps>;
8
- //# sourceMappingURL=ShareButton.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ShareButton.d.ts","sourceRoot":"","sources":["../src/ShareButton.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAY,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAK9D,MAAM,WAAW,gBAAiB,SAAQ,aAAa;IACrD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA6ClD,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ShareButton.d.ts","sourceRoot":"","sources":["../src/ShareButton.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAY,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAK9D,MAAM,WAAW,gBAAiB,SAAQ,aAAa;IACrD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA6ClD,CAAA"}
@@ -1,7 +0,0 @@
1
- declare const _default: import("@storybook/types").ComponentAnnotations<import("@storybook/react/dist/types-0a347bb9").R, import("./ShareButton").ShareButtonProps>;
2
- export default _default;
3
- declare const Default: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0a347bb9").R, import("./ShareButton").ShareButtonProps>;
4
- declare const WithUnPrepared: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0a347bb9").R, import("./ShareButton").ShareButtonProps>;
5
- declare const WithCustomShareLink: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0a347bb9").R, import("./ShareButton").ShareButtonProps>;
6
- export { Default, WithCustomShareLink, WithUnPrepared };
7
- //# sourceMappingURL=ShareButton.stories.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ShareButton.stories.d.ts","sourceRoot":"","sources":["../src/ShareButton.stories.tsx"],"names":[],"mappings":";AAKA,wBAE6B;AAM7B,QAAA,MAAM,OAAO,yIAAoB,CAAA;AAGjC,QAAA,MAAM,cAAc,yIAAoB,CAAA;AAGxC,QAAA,MAAM,mBAAmB,yIAAoB,CAAA;AAG7C,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,CAAA"}
@@ -1,7 +0,0 @@
1
- declare const _default: import("@storybook/types").ComponentAnnotations<import("@storybook/react/dist/types-0a347bb9").R, import("./ShareButton").ShareButtonProps>;
2
- export default _default;
3
- declare const Default: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0a347bb9").R, import("./ShareButton").ShareButtonProps>;
4
- declare const WithUnPrepared: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0a347bb9").R, import("./ShareButton").ShareButtonProps>;
5
- declare const WithCustomShareLink: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0a347bb9").R, import("./ShareButton").ShareButtonProps>;
6
- export { Default, WithCustomShareLink, WithUnPrepared };
7
- //# sourceMappingURL=ShareButton.stories.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ShareButton.stories.d.ts","sourceRoot":"","sources":["../src/ShareButton.stories.tsx"],"names":[],"mappings":";AAKA,wBAE6B;AAM7B,QAAA,MAAM,OAAO,yIAAoB,CAAA;AAGjC,QAAA,MAAM,cAAc,yIAAoB,CAAA;AAGxC,QAAA,MAAM,mBAAmB,yIAAoB,CAAA;AAG7C,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,CAAA"}
package/dist/index.d.mts DELETED
@@ -1,2 +0,0 @@
1
- export * from './ShareButton';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA"}
package/dist/index.js DELETED
@@ -1,98 +0,0 @@
1
- "use strict";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
-
30
- // src/index.ts
31
- var src_exports = {};
32
- __export(src_exports, {
33
- ShareButton: () => ShareButton
34
- });
35
- module.exports = __toCommonJS(src_exports);
36
-
37
- // src/ShareButton.tsx
38
- var import_Facebook = __toESM(require("@mui/icons-material/Facebook"));
39
- var import_Share = __toESM(require("@mui/icons-material/Share"));
40
- var import_Twitter = __toESM(require("@mui/icons-material/Twitter"));
41
- var import_material = require("@mui/material");
42
- var import_react_button = require("@xylabs/react-button");
43
- var import_react_flexbox = require("@xylabs/react-flexbox");
44
- var import_react_link = require("@xylabs/react-link");
45
- var import_react = require("react");
46
- var import_jsx_runtime = require("react/jsx-runtime");
47
- var ShareButton = ({ prepared = true, shareLink, ...props }) => {
48
- const [expanded, setExpanded] = (0, import_react.useState)(false);
49
- const anchorRef = (0, import_react.useRef)(null);
50
- const link = shareLink ?? window.location.href;
51
- return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_react_flexbox.FlexRow, { gap: 1, ref: anchorRef, children: [
52
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
53
- import_react_button.ButtonEx,
54
- {
55
- variant: "text",
56
- minWidth: 32,
57
- size: "small",
58
- disabled: !prepared,
59
- onClick: () => {
60
- setExpanded(true);
61
- },
62
- ...props,
63
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Share.default, { htmlColor: "gray", fontSize: "small" })
64
- }
65
- ),
66
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.Popover, { open: prepared ? expanded : false, anchorEl: anchorRef.current, onClose: () => setExpanded(false), transitionDuration: 500, children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_react_flexbox.FlexRow, { gap: 0.5, padding: 0.5, children: [
67
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
68
- import_react_link.LinkEx,
69
- {
70
- lineHeight: 0,
71
- style: { color: "#1da1f2" },
72
- onClick: () => {
73
- window.open(`https://twitter.com/intent/tweet?url=${encodeURIComponent(link)}`);
74
- setExpanded(false);
75
- },
76
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Twitter.default, { fontSize: "small" })
77
- }
78
- ),
79
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
80
- import_react_link.LinkEx,
81
- {
82
- lineHeight: 0,
83
- style: { color: "#4267b2" },
84
- onClick: () => {
85
- window.open(`https://www.facebook.com/sharer/sharer.php?u=${encodeURIComponent(link)}`);
86
- setExpanded(false);
87
- },
88
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Facebook.default, { fontSize: "small" })
89
- }
90
- )
91
- ] }) })
92
- ] });
93
- };
94
- // Annotate the CommonJS export names for ESM import in node:
95
- 0 && (module.exports = {
96
- ShareButton
97
- });
98
- //# sourceMappingURL=index.js.map
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/index.ts","../src/ShareButton.tsx"],"sourcesContent":["export * from './ShareButton'\n","import FacebookIcon from '@mui/icons-material/Facebook'\nimport ShareIcon from '@mui/icons-material/Share'\nimport TwitterIcon from '@mui/icons-material/Twitter'\nimport { Popover } from '@mui/material'\nimport { ButtonEx, ButtonExProps } from '@xylabs/react-button'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport { LinkEx } from '@xylabs/react-link'\nimport { useRef, useState } from 'react'\n\nexport interface ShareButtonProps extends ButtonExProps {\n prepared?: boolean\n shareLink?: string\n}\n\nexport const ShareButton: React.FC<ShareButtonProps> = ({ prepared = true, shareLink, ...props }) => {\n const [expanded, setExpanded] = useState(false)\n const anchorRef = useRef(null)\n const link = shareLink ?? window.location.href\n\n return (\n <FlexRow gap={1} ref={anchorRef}>\n <ButtonEx\n variant=\"text\"\n minWidth={32}\n size=\"small\"\n disabled={!prepared}\n onClick={() => {\n setExpanded(true)\n }}\n {...props}\n >\n <ShareIcon htmlColor=\"gray\" fontSize=\"small\" />\n </ButtonEx>\n <Popover open={prepared ? expanded : false} anchorEl={anchorRef.current} onClose={() => setExpanded(false)} transitionDuration={500}>\n <FlexRow gap={0.5} padding={0.5}>\n <LinkEx\n lineHeight={0}\n style={{ color: '#1da1f2' }}\n onClick={() => {\n window.open(`https://twitter.com/intent/tweet?url=${encodeURIComponent(link)}`)\n setExpanded(false)\n }}\n >\n <TwitterIcon fontSize=\"small\" />\n </LinkEx>\n <LinkEx\n lineHeight={0}\n style={{ color: '#4267b2' }}\n onClick={() => {\n window.open(`https://www.facebook.com/sharer/sharer.php?u=${encodeURIComponent(link)}`)\n setExpanded(false)\n }}\n >\n <FacebookIcon fontSize=\"small\" />\n </LinkEx>\n </FlexRow>\n </Popover>\n </FlexRow>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,sBAAyB;AACzB,mBAAsB;AACtB,qBAAwB;AACxB,sBAAwB;AACxB,0BAAwC;AACxC,2BAAwB;AACxB,wBAAuB;AACvB,mBAAiC;AAwBzB;AAjBD,IAAM,cAA0C,CAAC,EAAE,WAAW,MAAM,WAAW,GAAG,MAAM,MAAM;AACnG,QAAM,CAAC,UAAU,WAAW,QAAI,uBAAS,KAAK;AAC9C,QAAM,gBAAY,qBAAO,IAAI;AAC7B,QAAM,OAAO,aAAa,OAAO,SAAS;AAE1C,SACE,6CAAC,gCAAQ,KAAK,GAAG,KAAK,WACpB;AAAA;AAAA,MAAC;AAAA;AAAA,QACC,SAAQ;AAAA,QACR,UAAU;AAAA,QACV,MAAK;AAAA,QACL,UAAU,CAAC;AAAA,QACX,SAAS,MAAM;AACb,sBAAY,IAAI;AAAA,QAClB;AAAA,QACC,GAAG;AAAA,QAEJ,sDAAC,aAAAA,SAAA,EAAU,WAAU,QAAO,UAAS,SAAQ;AAAA;AAAA,IAC/C;AAAA,IACA,4CAAC,2BAAQ,MAAM,WAAW,WAAW,OAAO,UAAU,UAAU,SAAS,SAAS,MAAM,YAAY,KAAK,GAAG,oBAAoB,KAC9H,uDAAC,gCAAQ,KAAK,KAAK,SAAS,KAC1B;AAAA;AAAA,QAAC;AAAA;AAAA,UACC,YAAY;AAAA,UACZ,OAAO,EAAE,OAAO,UAAU;AAAA,UAC1B,SAAS,MAAM;AACb,mBAAO,KAAK,wCAAwC,mBAAmB,IAAI,CAAC,EAAE;AAC9E,wBAAY,KAAK;AAAA,UACnB;AAAA,UAEA,sDAAC,eAAAC,SAAA,EAAY,UAAS,SAAQ;AAAA;AAAA,MAChC;AAAA,MACA;AAAA,QAAC;AAAA;AAAA,UACC,YAAY;AAAA,UACZ,OAAO,EAAE,OAAO,UAAU;AAAA,UAC1B,SAAS,MAAM;AACb,mBAAO,KAAK,gDAAgD,mBAAmB,IAAI,CAAC,EAAE;AACtF,wBAAY,KAAK;AAAA,UACnB;AAAA,UAEA,sDAAC,gBAAAC,SAAA,EAAa,UAAS,SAAQ;AAAA;AAAA,MACjC;AAAA,OACF,GACF;AAAA,KACF;AAEJ;","names":["ShareIcon","TwitterIcon","FacebookIcon"]}
package/dist/index.mjs DELETED
@@ -1,61 +0,0 @@
1
- // src/ShareButton.tsx
2
- import FacebookIcon from "@mui/icons-material/Facebook";
3
- import ShareIcon from "@mui/icons-material/Share";
4
- import TwitterIcon from "@mui/icons-material/Twitter";
5
- import { Popover } from "@mui/material";
6
- import { ButtonEx } from "@xylabs/react-button";
7
- import { FlexRow } from "@xylabs/react-flexbox";
8
- import { LinkEx } from "@xylabs/react-link";
9
- import { useRef, useState } from "react";
10
- import { jsx, jsxs } from "react/jsx-runtime";
11
- var ShareButton = ({ prepared = true, shareLink, ...props }) => {
12
- const [expanded, setExpanded] = useState(false);
13
- const anchorRef = useRef(null);
14
- const link = shareLink ?? window.location.href;
15
- return /* @__PURE__ */ jsxs(FlexRow, { gap: 1, ref: anchorRef, children: [
16
- /* @__PURE__ */ jsx(
17
- ButtonEx,
18
- {
19
- variant: "text",
20
- minWidth: 32,
21
- size: "small",
22
- disabled: !prepared,
23
- onClick: () => {
24
- setExpanded(true);
25
- },
26
- ...props,
27
- children: /* @__PURE__ */ jsx(ShareIcon, { htmlColor: "gray", fontSize: "small" })
28
- }
29
- ),
30
- /* @__PURE__ */ jsx(Popover, { open: prepared ? expanded : false, anchorEl: anchorRef.current, onClose: () => setExpanded(false), transitionDuration: 500, children: /* @__PURE__ */ jsxs(FlexRow, { gap: 0.5, padding: 0.5, children: [
31
- /* @__PURE__ */ jsx(
32
- LinkEx,
33
- {
34
- lineHeight: 0,
35
- style: { color: "#1da1f2" },
36
- onClick: () => {
37
- window.open(`https://twitter.com/intent/tweet?url=${encodeURIComponent(link)}`);
38
- setExpanded(false);
39
- },
40
- children: /* @__PURE__ */ jsx(TwitterIcon, { fontSize: "small" })
41
- }
42
- ),
43
- /* @__PURE__ */ jsx(
44
- LinkEx,
45
- {
46
- lineHeight: 0,
47
- style: { color: "#4267b2" },
48
- onClick: () => {
49
- window.open(`https://www.facebook.com/sharer/sharer.php?u=${encodeURIComponent(link)}`);
50
- setExpanded(false);
51
- },
52
- children: /* @__PURE__ */ jsx(FacebookIcon, { fontSize: "small" })
53
- }
54
- )
55
- ] }) })
56
- ] });
57
- };
58
- export {
59
- ShareButton
60
- };
61
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/ShareButton.tsx"],"sourcesContent":["import FacebookIcon from '@mui/icons-material/Facebook'\nimport ShareIcon from '@mui/icons-material/Share'\nimport TwitterIcon from '@mui/icons-material/Twitter'\nimport { Popover } from '@mui/material'\nimport { ButtonEx, ButtonExProps } from '@xylabs/react-button'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport { LinkEx } from '@xylabs/react-link'\nimport { useRef, useState } from 'react'\n\nexport interface ShareButtonProps extends ButtonExProps {\n prepared?: boolean\n shareLink?: string\n}\n\nexport const ShareButton: React.FC<ShareButtonProps> = ({ prepared = true, shareLink, ...props }) => {\n const [expanded, setExpanded] = useState(false)\n const anchorRef = useRef(null)\n const link = shareLink ?? window.location.href\n\n return (\n <FlexRow gap={1} ref={anchorRef}>\n <ButtonEx\n variant=\"text\"\n minWidth={32}\n size=\"small\"\n disabled={!prepared}\n onClick={() => {\n setExpanded(true)\n }}\n {...props}\n >\n <ShareIcon htmlColor=\"gray\" fontSize=\"small\" />\n </ButtonEx>\n <Popover open={prepared ? expanded : false} anchorEl={anchorRef.current} onClose={() => setExpanded(false)} transitionDuration={500}>\n <FlexRow gap={0.5} padding={0.5}>\n <LinkEx\n lineHeight={0}\n style={{ color: '#1da1f2' }}\n onClick={() => {\n window.open(`https://twitter.com/intent/tweet?url=${encodeURIComponent(link)}`)\n setExpanded(false)\n }}\n >\n <TwitterIcon fontSize=\"small\" />\n </LinkEx>\n <LinkEx\n lineHeight={0}\n style={{ color: '#4267b2' }}\n onClick={() => {\n window.open(`https://www.facebook.com/sharer/sharer.php?u=${encodeURIComponent(link)}`)\n setExpanded(false)\n }}\n >\n <FacebookIcon fontSize=\"small\" />\n </LinkEx>\n </FlexRow>\n </Popover>\n </FlexRow>\n )\n}\n"],"mappings":";AAAA,OAAO,kBAAkB;AACzB,OAAO,eAAe;AACtB,OAAO,iBAAiB;AACxB,SAAS,eAAe;AACxB,SAAS,gBAA+B;AACxC,SAAS,eAAe;AACxB,SAAS,cAAc;AACvB,SAAS,QAAQ,gBAAgB;AAwBzB,cAGA,YAHA;AAjBD,IAAM,cAA0C,CAAC,EAAE,WAAW,MAAM,WAAW,GAAG,MAAM,MAAM;AACnG,QAAM,CAAC,UAAU,WAAW,IAAI,SAAS,KAAK;AAC9C,QAAM,YAAY,OAAO,IAAI;AAC7B,QAAM,OAAO,aAAa,OAAO,SAAS;AAE1C,SACE,qBAAC,WAAQ,KAAK,GAAG,KAAK,WACpB;AAAA;AAAA,MAAC;AAAA;AAAA,QACC,SAAQ;AAAA,QACR,UAAU;AAAA,QACV,MAAK;AAAA,QACL,UAAU,CAAC;AAAA,QACX,SAAS,MAAM;AACb,sBAAY,IAAI;AAAA,QAClB;AAAA,QACC,GAAG;AAAA,QAEJ,8BAAC,aAAU,WAAU,QAAO,UAAS,SAAQ;AAAA;AAAA,IAC/C;AAAA,IACA,oBAAC,WAAQ,MAAM,WAAW,WAAW,OAAO,UAAU,UAAU,SAAS,SAAS,MAAM,YAAY,KAAK,GAAG,oBAAoB,KAC9H,+BAAC,WAAQ,KAAK,KAAK,SAAS,KAC1B;AAAA;AAAA,QAAC;AAAA;AAAA,UACC,YAAY;AAAA,UACZ,OAAO,EAAE,OAAO,UAAU;AAAA,UAC1B,SAAS,MAAM;AACb,mBAAO,KAAK,wCAAwC,mBAAmB,IAAI,CAAC,EAAE;AAC9E,wBAAY,KAAK;AAAA,UACnB;AAAA,UAEA,8BAAC,eAAY,UAAS,SAAQ;AAAA;AAAA,MAChC;AAAA,MACA;AAAA,QAAC;AAAA;AAAA,UACC,YAAY;AAAA,UACZ,OAAO,EAAE,OAAO,UAAU;AAAA,UAC1B,SAAS,MAAM;AACb,mBAAO,KAAK,gDAAgD,mBAAmB,IAAI,CAAC,EAAE;AACtF,wBAAY,KAAK;AAAA,UACnB;AAAA,UAEA,8BAAC,gBAAa,UAAS,SAAQ;AAAA;AAAA,MACjC;AAAA,OACF,GACF;AAAA,KACF;AAEJ;","names":[]}
File without changes