phx-react 1.3.1747 → 1.3.1748

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.
@@ -2,6 +2,8 @@ import React from 'react';
2
2
  interface ToggleButtonProps {
3
3
  onChange(active: boolean): void;
4
4
  active: boolean;
5
+ disabled?: boolean;
6
+ helpText?: string | React.ReactNode;
5
7
  }
6
- export default function PHXToggle({ onChange, active }: ToggleButtonProps): React.JSX.Element;
8
+ export default function PHXToggle({ onChange, active, disabled, helpText }: ToggleButtonProps): React.JSX.Element;
7
9
  export {};
@@ -3,9 +3,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = PHXToggle;
4
4
  const tslib_1 = require("tslib");
5
5
  const react_1 = tslib_1.__importDefault(require("react"));
6
- function PHXToggle({ onChange, active }) {
7
- return (react_1.default.createElement("label", { className: 'ml-2 inline-flex cursor-pointer items-center' },
8
- react_1.default.createElement("input", { "aria-label": 'Toggle option', checked: active, className: 'peer absolute hidden', onClick: () => onChange(!active), type: 'checkbox' }),
9
- react_1.default.createElement("div", { className: "\n peer relative h-5 w-8 rounded-[0.4rem] bg-gray-300\n after:absolute after:left-[4px] after:top-1/2 after:h-[12px]\n after:w-[12px] after:translate-y-[-50%] after:rounded-[3px]\n after:bg-white after:transition-transform\n after:content-[''] peer-checked:bg-black peer-checked:after:translate-x-3\n dark:border-gray-600 dark:bg-gray-500\n " })));
6
+ const ToolTip_1 = tslib_1.__importDefault(require("../ToolTip/ToolTip"));
7
+ function PHXToggle({ onChange, active, disabled = false, helpText }) {
8
+ const toggle = (react_1.default.createElement("label", { className: `ml-2 inline-flex items-center ${disabled ? 'cursor-not-allowed opacity-60' : 'cursor-pointer'}` },
9
+ react_1.default.createElement("input", { "aria-label": 'Toggle option', checked: active, className: 'peer absolute hidden', disabled: disabled, onChange: () => {
10
+ if (!disabled)
11
+ onChange(!active);
12
+ }, type: 'checkbox' }),
13
+ react_1.default.createElement("div", { className: "\n peer relative h-5 w-8 rounded-[0.4rem] bg-slate-300 transition-colors\n after:absolute after:left-[4px] after:top-1/2 after:h-[12px]\n after:w-[12px] after:translate-y-[-50%] after:rounded-[3px]\n after:bg-white after:transition-transform\n after:content-[''] peer-checked:bg-black peer-checked:after:translate-x-3\n peer-disabled:bg-slate-200 peer-disabled:after:bg-slate-50\n peer-disabled:peer-checked:bg-slate-300\n dark:border-gray-600 dark:bg-gray-500\n " })));
14
+ if (helpText) {
15
+ return (react_1.default.createElement(ToolTip_1.default, { content: helpText, placement: 'top' }, toggle));
16
+ }
17
+ return toggle;
10
18
  }
11
19
  //# sourceMappingURL=Toggle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Toggle.js","sourceRoot":"","sources":["../../../../src/components/PHXToggle/Toggle.tsx"],"names":[],"mappings":";;AAMA,4BAsBC;;AA5BD,0DAAyB;AAMzB,SAAwB,SAAS,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAqB;IACvE,OAAO,CACL,yCAAO,SAAS,EAAC,8CAA8C;QAC7D,uDACa,eAAe,EAC1B,OAAO,EAAE,MAAM,EACf,SAAS,EAAC,sBAAsB,EAChC,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,EAChC,IAAI,EAAC,UAAU,GACf;QACF,uCACE,SAAS,EAAC,6aAOL,GACL,CACI,CACT,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"Toggle.js","sourceRoot":"","sources":["../../../../src/components/PHXToggle/Toggle.tsx"],"names":[],"mappings":";;AASA,4BAqCC;;AA9CD,0DAAyB;AACzB,yEAA2C;AAQ3C,SAAwB,SAAS,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAG,KAAK,EAAE,QAAQ,EAAqB;IACnG,MAAM,MAAM,GAAG,CACb,yCAAO,SAAS,EAAE,iCAAiC,QAAQ,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,gBAAgB,EAAE;QAChH,uDACa,eAAe,EAC1B,OAAO,EAAE,MAAM,EACf,SAAS,EAAC,sBAAsB,EAChC,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,GAAG,EAAE;gBACb,IAAI,CAAC,QAAQ;oBAAE,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAA;YAClC,CAAC,EACD,IAAI,EAAC,UAAU,GACf;QACF,uCACE,SAAS,EAAC,ikBASL,GACL,CACI,CACT,CAAA;IAED,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,CACL,8BAAC,iBAAU,IAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAC,KAAK,IAC3C,MAAM,CACI,CACd,CAAA;IACH,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC"}
@@ -2,6 +2,8 @@ import React from 'react';
2
2
  interface ToggleButtonProps {
3
3
  onChange(active: boolean): void;
4
4
  active: boolean;
5
+ disabled?: boolean;
6
+ helpText?: string | React.ReactNode;
5
7
  }
6
- export default function PHXToggle({ onChange, active }: ToggleButtonProps): React.JSX.Element;
8
+ export default function PHXToggle({ onChange, active, disabled, helpText }: ToggleButtonProps): React.JSX.Element;
7
9
  export {};
@@ -1,7 +1,15 @@
1
1
  import React from 'react';
2
- export default function PHXToggle({ onChange, active }) {
3
- return (React.createElement("label", { className: 'ml-2 inline-flex cursor-pointer items-center' },
4
- React.createElement("input", { "aria-label": 'Toggle option', checked: active, className: 'peer absolute hidden', onClick: () => onChange(!active), type: 'checkbox' }),
5
- React.createElement("div", { className: "\n peer relative h-5 w-8 rounded-[0.4rem] bg-gray-300\n after:absolute after:left-[4px] after:top-1/2 after:h-[12px]\n after:w-[12px] after:translate-y-[-50%] after:rounded-[3px]\n after:bg-white after:transition-transform\n after:content-[''] peer-checked:bg-black peer-checked:after:translate-x-3\n dark:border-gray-600 dark:bg-gray-500\n " })));
2
+ import PHXTooltip from '../ToolTip/ToolTip';
3
+ export default function PHXToggle({ onChange, active, disabled = false, helpText }) {
4
+ const toggle = (React.createElement("label", { className: `ml-2 inline-flex items-center ${disabled ? 'cursor-not-allowed opacity-60' : 'cursor-pointer'}` },
5
+ React.createElement("input", { "aria-label": 'Toggle option', checked: active, className: 'peer absolute hidden', disabled: disabled, onChange: () => {
6
+ if (!disabled)
7
+ onChange(!active);
8
+ }, type: 'checkbox' }),
9
+ React.createElement("div", { className: "\n peer relative h-5 w-8 rounded-[0.4rem] bg-slate-300 transition-colors\n after:absolute after:left-[4px] after:top-1/2 after:h-[12px]\n after:w-[12px] after:translate-y-[-50%] after:rounded-[3px]\n after:bg-white after:transition-transform\n after:content-[''] peer-checked:bg-black peer-checked:after:translate-x-3\n peer-disabled:bg-slate-200 peer-disabled:after:bg-slate-50\n peer-disabled:peer-checked:bg-slate-300\n dark:border-gray-600 dark:bg-gray-500\n " })));
10
+ if (helpText) {
11
+ return (React.createElement(PHXTooltip, { content: helpText, placement: 'top' }, toggle));
12
+ }
13
+ return toggle;
6
14
  }
7
15
  //# sourceMappingURL=Toggle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Toggle.js","sourceRoot":"","sources":["../../../../src/components/PHXToggle/Toggle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAMzB,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAqB;IACvE,OAAO,CACL,+BAAO,SAAS,EAAC,8CAA8C;QAC7D,6CACa,eAAe,EAC1B,OAAO,EAAE,MAAM,EACf,SAAS,EAAC,sBAAsB,EAChC,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,EAChC,IAAI,EAAC,UAAU,GACf;QACF,6BACE,SAAS,EAAC,6aAOL,GACL,CACI,CACT,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"Toggle.js","sourceRoot":"","sources":["../../../../src/components/PHXToggle/Toggle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,UAAU,MAAM,oBAAoB,CAAA;AAQ3C,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAG,KAAK,EAAE,QAAQ,EAAqB;IACnG,MAAM,MAAM,GAAG,CACb,+BAAO,SAAS,EAAE,iCAAiC,QAAQ,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,gBAAgB,EAAE;QAChH,6CACa,eAAe,EAC1B,OAAO,EAAE,MAAM,EACf,SAAS,EAAC,sBAAsB,EAChC,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,GAAG,EAAE;gBACb,IAAI,CAAC,QAAQ;oBAAE,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAA;YAClC,CAAC,EACD,IAAI,EAAC,UAAU,GACf;QACF,6BACE,SAAS,EAAC,ikBASL,GACL,CACI,CACT,CAAA;IAED,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,CACL,oBAAC,UAAU,IAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAC,KAAK,IAC3C,MAAM,CACI,CACd,CAAA;IACH,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "phx-react",
3
- "version": "1.3.1747",
3
+ "version": "1.3.1748",
4
4
  "description": "PHX REACT",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",