├── .gitignore ├── .npmignore ├── .storybook ├── main.ts └── preview.ts ├── LICENSE ├── README.md ├── __tests__ └── react-typed.test.tsx ├── dist ├── cjs │ ├── index.js │ ├── index.js.map │ └── package.json └── mjs │ ├── index.d.ts │ ├── index.js │ ├── index.js.map │ └── package.json ├── docs ├── 312.46ad6ceb.iframe.bundle.js ├── 341.527ff0f9.iframe.bundle.js ├── 426.352a72ea.iframe.bundle.js ├── 426.352a72ea.iframe.bundle.js.map ├── 506.04443fb5.iframe.bundle.js ├── 506.04443fb5.iframe.bundle.js.map ├── 607.5d984ebb.iframe.bundle.js ├── 729.22f389b0.iframe.bundle.js ├── 764.155d19ca.iframe.bundle.js ├── 764.155d19ca.iframe.bundle.js.map ├── 797.64014990.iframe.bundle.js ├── 846.5a26ae56.iframe.bundle.js ├── 846.5a26ae56.iframe.bundle.js.map ├── favicon.svg ├── iframe.html ├── index.html ├── index.json ├── main.3e33949f.iframe.bundle.js ├── project.json ├── runtime~main.46dcd3a7.iframe.bundle.js ├── sb-addons │ ├── essentials-actions-2 │ │ ├── manager-bundle.js │ │ └── manager-bundle.js.LEGAL.txt │ ├── essentials-backgrounds-3 │ │ ├── manager-bundle.js │ │ └── manager-bundle.js.LEGAL.txt │ ├── essentials-controls-1 │ │ ├── manager-bundle.js │ │ └── manager-bundle.js.LEGAL.txt │ ├── essentials-measure-6 │ │ ├── manager-bundle.js │ │ └── manager-bundle.js.LEGAL.txt │ ├── essentials-outline-7 │ │ ├── manager-bundle.js │ │ └── manager-bundle.js.LEGAL.txt │ ├── essentials-toolbars-5 │ │ ├── manager-bundle.js │ │ └── manager-bundle.js.LEGAL.txt │ ├── essentials-viewport-4 │ │ ├── manager-bundle.js │ │ └── manager-bundle.js.LEGAL.txt │ ├── interactions-9 │ │ ├── manager-bundle.js │ │ └── manager-bundle.js.LEGAL.txt │ ├── links-0 │ │ ├── manager-bundle.js │ │ └── manager-bundle.js.LEGAL.txt │ └── onboarding-8 │ │ ├── manager-bundle.js │ │ └── manager-bundle.js.LEGAL.txt ├── sb-common-assets │ ├── fonts.css │ ├── nunito-sans-bold-italic.woff2 │ ├── nunito-sans-bold.woff2 │ ├── nunito-sans-italic.woff2 │ └── nunito-sans-regular.woff2 ├── sb-manager │ ├── WithTooltip-V3YHNWJZ-LVYLGZW2.js │ ├── chunk-2IXBUOFS.js │ ├── chunk-F4FCO4CF.js │ ├── chunk-INSKDKQB.js │ ├── chunk-NGTUFCUO.js │ ├── chunk-ZEU7PDD3.js │ ├── formatter-SWP5E3XI-7BGIK6BL.js │ ├── globals-module-info.js │ ├── globals.js │ ├── index.js │ ├── runtime.js │ └── syntaxhighlighter-V7JZZA35-DXZCI2WR.js ├── sb-preview │ ├── globals.js │ └── runtime.js ├── stories-ReactTyped-stories.cb7b582a.iframe.bundle.js └── stories.json ├── package-lock.json ├── package.json ├── src └── index.tsx ├── stories └── ReactTyped.stories.tsx ├── tsconfig-base.json ├── tsconfig-cjs.json └── tsconfig.json /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | 8 | # Runtime data 9 | pids 10 | *.pid 11 | *.seed 12 | *.pid.lock 13 | 14 | # Directory for instrumented libs generated by jscoverage/JSCover 15 | lib-cov 16 | 17 | # Coverage directory used by tools like istanbul 18 | coverage 19 | 20 | # nyc test coverage 21 | .nyc_output 22 | 23 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 24 | .grunt 25 | 26 | # Bower dependency directory (https://bower.io/) 27 | bower_components 28 | 29 | # node-waf configuration 30 | .lock-wscript 31 | 32 | # Compiled binary addons (http://nodejs.org/api/addons.html) 33 | build/Release 34 | 35 | # Dependency directories 36 | node_modules/ 37 | jspm_packages/ 38 | 39 | # Typescript v1 declaration files 40 | typings/ 41 | 42 | # Optional npm cache directory 43 | .npm 44 | 45 | # Optional eslint cache 46 | .eslintcache 47 | 48 | # Optional REPL history 49 | .node_repl_history 50 | 51 | # Output of 'npm pack' 52 | *.tgz 53 | 54 | # Yarn Integrity file 55 | .yarn-integrity 56 | 57 | # dotenv environment variables file 58 | .env 59 | 60 | .idea -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | test/ 3 | src 4 | example -------------------------------------------------------------------------------- /.storybook/main.ts: -------------------------------------------------------------------------------- 1 | import type { StorybookConfig } from "@storybook/react-webpack5"; 2 | 3 | const config: StorybookConfig = { 4 | stories: ["../**/*.mdx", "../**/*.stories.@(js|jsx|mjs|ts|tsx)"], 5 | addons: [ 6 | "@storybook/addon-links", 7 | "@storybook/addon-essentials", 8 | "@storybook/addon-onboarding", 9 | "@storybook/addon-interactions", 10 | ], 11 | framework: { 12 | name: "@storybook/react-webpack5", 13 | options: { 14 | builder: { 15 | useSWC: true, 16 | }, 17 | }, 18 | }, 19 | docs: { 20 | autodocs: "tag", 21 | }, 22 | }; 23 | export default config; 24 | -------------------------------------------------------------------------------- /.storybook/preview.ts: -------------------------------------------------------------------------------- 1 | import type { Preview } from "@storybook/react"; 2 | 3 | const preview: Preview = { 4 | parameters: { 5 | actions: { argTypesRegex: "^on[A-Z].*" }, 6 | controls: { 7 | matchers: { 8 | color: /(background|color)$/i, 9 | date: /Date$/i, 10 | }, 11 | }, 12 | }, 13 | }; 14 | 15 | export default preview; 16 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Mike 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # react-typed 2 | 3 | ### A react wrapper for [typed.js](https://github.com/mattboldt/typed.js) 4 | 5 | ### react-typed v2 changelog 6 | 7 | - Rewrite in typescript 8 | - Support for react 18 9 | - option to start animation only when the element is visible 10 | - new property parseRef for supporting custom components that handles ref differently (see last example) 11 | - update docs with latest storybook version 12 | 13 | --- 14 | 15 | [Installation](#installation) 16 | 17 | [Docs & Examples](http://ssbeefeater.github.io/react-typed) 18 | 19 | --- 20 | 21 | #### Installation 22 | 23 | Install with [yarn](https://yarnpkg.com) or [npm](https://www.npmjs.com/) 24 | 25 | ```sh 26 | yarn add react-typed 27 | #or 28 | npm install react-typed --save 29 | ``` 30 | 31 | --- 32 | 33 | #### Examples 34 | 35 | ```javascript 36 | import { ReactTyped } from "react-typed"; 37 | 38 | const MyComponent = () => ( 39 |
40 | 41 |
42 | 43 | 54 | 55 | 56 |
57 | ); 58 | ``` 59 | 60 | 61 | ###### Using typed start, stop, toggle, destroy, reset functions 62 | 63 | ```javascript 64 | import { ReactTyped,Typed } from "react-typed"; 65 | 66 | const MyComponent { 67 | const [typed,setTyped] = React.useState() 68 | 69 | return ( 70 |
71 | 72 | 73 | 74 | 75 | 76 | 81 |
82 | ) 83 | } 84 | ``` 85 | 86 | ###### Start only if is visible in the dom 87 | 88 | ```javascript 89 | import { ReactTyped } from "react-typed"; 90 | 91 | const MyComponent = () => ( 92 | startWhenVisible is true, will start when is visible in the dom", 96 | ]} 97 | typeSpeed={40} 98 | /> 99 | ); 100 | ``` 101 | 102 | #### Using parseRef for custom components 103 | 104 | ```javascript 105 | import { ReactTyped } from "react-typed"; 106 | import { Input } from "antd"; 107 | 108 | const MyComponent = () => ( 109 | ref.current.input} attr="placeholder" strings={["Add a name here"]} typeSpeed={40} > 110 | 111 | 112 | ); 113 | ``` 114 | -------------------------------------------------------------------------------- /__tests__/react-typed.test.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import { render, screen } from "@testing-library/react"; 3 | import { ReactTyped } from "../src"; 4 | 5 | describe("", () => { 6 | it("Renders correct", async () => { 7 | const textToType = "Here you can find anything"; 8 | render(); 9 | await new Promise((resolve) => setTimeout(resolve, 100)); 10 | expect(screen.getByText(textToType)).toBeTruthy(); 11 | }); 12 | it("Renders correct with children", async () => { 13 | const textToType = "Search for products"; 14 | render( 15 | 16 | 17 | 18 | ); 19 | await new Promise((resolve) => setTimeout(resolve, 100)); 20 | 21 | expect( 22 | screen.getByTestId("typed-input").getAttribute("placeholder") 23 | ).toEqual(textToType); 24 | }); 25 | it("Expect to update if props were change", () => { 26 | const typedInstance = jest.fn(); 27 | 28 | const { rerender } = render( 29 | 30 | ); 31 | 32 | rerender( 33 | 34 | ); 35 | expect(typedInstance).toBeCalledTimes(2); 36 | }); 37 | it("Expect to return the typed object using typedRef prop", () => { 38 | const props = { 39 | loop: true, 40 | stopped: true, 41 | strings: ["test1", "test2"], 42 | fadeOut: false, 43 | }; 44 | let typedInstance; 45 | render( 46 | { 49 | typedInstance = typed; 50 | }} 51 | /> 52 | ); 53 | expect(typedInstance).not.toBeFalsy(); 54 | }); 55 | }); 56 | -------------------------------------------------------------------------------- /dist/cjs/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { 3 | if (k2 === undefined) k2 = k; 4 | var desc = Object.getOwnPropertyDescriptor(m, k); 5 | if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { 6 | desc = { enumerable: true, get: function() { return m[k]; } }; 7 | } 8 | Object.defineProperty(o, k2, desc); 9 | }) : (function(o, m, k, k2) { 10 | if (k2 === undefined) k2 = k; 11 | o[k2] = m[k]; 12 | })); 13 | var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { 14 | Object.defineProperty(o, "default", { enumerable: true, value: v }); 15 | }) : function(o, v) { 16 | o["default"] = v; 17 | }); 18 | var __importStar = (this && this.__importStar) || function (mod) { 19 | if (mod && mod.__esModule) return mod; 20 | var result = {}; 21 | if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); 22 | __setModuleDefault(result, mod); 23 | return result; 24 | }; 25 | var __rest = (this && this.__rest) || function (s, e) { 26 | var t = {}; 27 | for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) 28 | t[p] = s[p]; 29 | if (s != null && typeof Object.getOwnPropertySymbols === "function") 30 | for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { 31 | if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) 32 | t[p[i]] = s[p[i]]; 33 | } 34 | return t; 35 | }; 36 | var __importDefault = (this && this.__importDefault) || function (mod) { 37 | return (mod && mod.__esModule) ? mod : { "default": mod }; 38 | }; 39 | Object.defineProperty(exports, "__esModule", { value: true }); 40 | exports.Typed = exports.ReactTyped = void 0; 41 | const react_1 = __importStar(require("react")); 42 | const typed_js_1 = __importDefault(require("typed.js")); 43 | exports.Typed = typed_js_1.default; 44 | exports.ReactTyped = (0, react_1.memo)((_a) => { 45 | var { style, className, typedRef, parseRef: transformRef, stopped, children, startWhenVisible } = _a, typedOptions = __rest(_a, ["style", "className", "typedRef", "parseRef", "stopped", "children", "startWhenVisible"]); 46 | const rootElement = (0, react_1.useRef)(null); 47 | const shouldUpdateArgs = (0, react_1.useMemo)(() => { 48 | var _a; 49 | return [ 50 | ...Object.values(typedOptions).filter((v) => typeof v === "boolean" || 51 | typeof v === "number" || 52 | typeof v === "string"), 53 | (_a = typedOptions.strings) === null || _a === void 0 ? void 0 : _a.join(","), 54 | ]; 55 | }, [typedOptions]); 56 | (0, react_1.useEffect)(() => { 57 | const element = (transformRef && transformRef(rootElement)) || rootElement.current; 58 | const typed = new typed_js_1.default(element, Object.assign({}, typedOptions)); 59 | if (stopped || startWhenVisible) { 60 | typed === null || typed === void 0 ? void 0 : typed.stop(); 61 | } 62 | if (startWhenVisible) { 63 | const observer = new IntersectionObserver(([entry]) => { 64 | if (entry.isIntersecting) { 65 | typed === null || typed === void 0 ? void 0 : typed.start(); 66 | observer.disconnect(); 67 | } 68 | }); 69 | observer.observe(element); 70 | } 71 | if (typedRef && typed) { 72 | typedRef(typed); 73 | } 74 | return () => { 75 | typed.destroy(); 76 | }; 77 | }, shouldUpdateArgs); 78 | const child = !children ? (react_1.default.createElement("span", { style: style, ref: rootElement })) : (react_1.default.cloneElement(children, { 79 | ref: rootElement, 80 | })); 81 | return (react_1.default.createElement("span", { style: style, className: className, "data-testid": "react-typed" }, child)); 82 | }); 83 | //# sourceMappingURL=index.js.map -------------------------------------------------------------------------------- /dist/cjs/index.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAgE;AAChE,wDAA6B;AAoPpB,gBApPF,kBAAK,CAoPE;AAlED,QAAA,UAAU,GAA8B,IAAA,YAAI,EACvD,CAAC,EASA,EAAE,EAAE;QATJ,EACC,KAAK,EACL,SAAS,EACT,QAAQ,EACR,QAAQ,EAAE,YAAY,EACtB,OAAO,EACP,QAAQ,EACR,gBAAgB,OAEjB,EADI,YAAY,cARhB,yFASA,CADgB;IAEf,MAAM,WAAW,GAAG,IAAA,cAAM,EAAM,IAAI,CAAC,CAAC;IACtC,MAAM,gBAAgB,GAAG,IAAA,eAAO,EAC9B,GAAG,EAAE;;QAAC,OAAA;YACJ,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,CACnC,CAAC,CAAC,EAAE,EAAE,CACJ,OAAO,CAAC,KAAK,SAAS;gBACtB,OAAO,CAAC,KAAK,QAAQ;gBACrB,OAAO,CAAC,KAAK,QAAQ,CACxB;YACD,MAAA,YAAY,CAAC,OAAO,0CAAE,IAAI,CAAC,GAAG,CAAC;SAChC,CAAA;KAAA,EACD,CAAC,YAAY,CAAC,CACf,CAAC;IACF,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,MAAM,OAAO,GACX,CAAC,YAAY,IAAI,YAAY,CAAC,WAAW,CAAC,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC;QACrE,MAAM,KAAK,GAAG,IAAI,kBAAK,CAAC,OAAO,oBAAO,YAAY,EAAG,CAAC;QAEtD,IAAI,OAAO,IAAI,gBAAgB,EAAE,CAAC;YAChC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,EAAE,CAAC;QAChB,CAAC;QAED,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,QAAQ,GAAG,IAAI,oBAAoB,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE;gBACpD,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;oBACzB,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,EAAE,CAAC;oBACf,QAAQ,CAAC,UAAU,EAAE,CAAC;gBACxB,CAAC;YACH,CAAC,CAAC,CAAC;YACH,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;QAED,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;YACtB,QAAQ,CAAC,KAAK,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,GAAG,EAAE;YACV,KAAK,CAAC,OAAO,EAAE,CAAC;QAClB,CAAC,CAAC;IACJ,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAErB,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CACxB,wCAAM,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,WAAW,GAAI,CACzC,CAAC,CAAC,CAAC,CACF,eAAK,CAAC,YAAY,CAAC,QAAQ,EAAE;QAC3B,GAAG,EAAE,WAAW;KACjB,CAAC,CACH,CAAC;IACF,OAAO,CACL,wCAAM,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,iBAAc,aAAa,IAChE,KAAK,CACD,CACR,CAAC;AACJ,CAAC,CACF,CAAC"} -------------------------------------------------------------------------------- /dist/cjs/package.json: -------------------------------------------------------------------------------- 1 | {"type": "commonjs"} 2 | -------------------------------------------------------------------------------- /dist/mjs/index.d.ts: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import Typed from "typed.js"; 3 | export interface ReactTypedProps { 4 | /** 5 | * strings to be typed 6 | * @default [ 7 | 'These are the default values...', 8 | 'You know what you should do?', 9 | 'Use your own!', 10 | 'Have a great day!', 11 | ] 12 | * */ 13 | strings?: string[]; 14 | /** 15 | * ID or instance of HTML element of element containing string children 16 | * @default null 17 | */ 18 | stringsElement?: string | Element; 19 | /** 20 | * type speed in milliseconds 21 | * @default 0 22 | */ 23 | typeSpeed?: number; 24 | /** 25 | * time before typing starts in milliseconds 26 | * @default 0 27 | */ 28 | startDelay?: number; 29 | /** 30 | * backspacing speed in milliseconds 31 | * @default 0 32 | */ 33 | backSpeed?: number; 34 | /** 35 | * only backspace what doesn't match the previous string 36 | * @default true 37 | */ 38 | smartBackspace?: boolean; 39 | /** 40 | * shuffle the strings 41 | * @default true 42 | */ 43 | shuffle?: boolean; 44 | /** 45 | * time before backspacing in milliseconds 46 | * @default 700 47 | */ 48 | backDelay?: number; 49 | /** 50 | * Fade out instead of backspace 51 | * @default false 52 | */ 53 | fadeOut?: boolean; 54 | /** 55 | * css class for fade animation 56 | * @default typed-fade-out 57 | */ 58 | fadeOutClass?: string; 59 | /** 60 | * Fade out delay in milliseconds 61 | * @default 500 62 | */ 63 | fadeOutDelay?: number; 64 | /** 65 | * loop strings 66 | * @default false 67 | */ 68 | loop?: boolean; 69 | /** 70 | * amount of loops 71 | * @default Infinity 72 | */ 73 | loopCount?: number; 74 | /** 75 | * show cursor 76 | * @default true 77 | */ 78 | showCursor?: boolean; 79 | /** 80 | * character for cursor 81 | * @default | 82 | */ 83 | cursorChar?: string; 84 | /** 85 | * insert CSS for cursor and fadeOut into HTML 86 | * @default true 87 | */ 88 | autoInsertCss?: boolean; 89 | /** 90 | * attribute for typing Ex: input placeholder, value, or just HTML text 91 | * @default null 92 | */ 93 | attr?: string; 94 | /** 95 | * bind to focus and blur if el is text input 96 | * @default false 97 | */ 98 | bindInputFocusEvents?: boolean; 99 | /** 100 | * 'html' or 'null' for plaintext 101 | * @default html 102 | */ 103 | contentType?: string; 104 | /** 105 | * Before it begins typing the first string 106 | */ 107 | onBegin?(self: Typed): void; 108 | /** 109 | * All typing is complete 110 | */ 111 | onComplete?(self: Typed): void; 112 | /** 113 | * Before each string is typed 114 | */ 115 | preStringTyped?(arrayPos: number, self: Typed): void; 116 | /** 117 | * After each string is typed 118 | */ 119 | onStringTyped?(arrayPos: number, self: Typed): void; 120 | /** 121 | * During looping, after last string is typed 122 | */ 123 | onLastStringBackspaced?(self: Typed): void; 124 | /** 125 | * Typing has been stopped 126 | */ 127 | onTypingPaused?(arrayPos: number, self: Typed): void; 128 | /** 129 | * Typing has been started after being stopped 130 | */ 131 | onTypingResumed?(arrayPos: number, self: Typed): void; 132 | /** 133 | * After reset 134 | */ 135 | onReset?(self: Typed): void; 136 | /** 137 | * After stop 138 | */ 139 | onStop?(arrayPos: number, self: Typed): void; 140 | /** 141 | * After start 142 | */ 143 | onStart?(arrayPos: number, self: Typed): void; 144 | /** 145 | * After destroy 146 | */ 147 | onDestroy?(self: Typed): void; 148 | /** 149 | * Styles for the outer element 150 | * */ 151 | style?: React.CSSProperties; 152 | /** 153 | * class name for the outer element 154 | * */ 155 | className?: string; 156 | /** 157 | * callback that returns the typed instance 158 | * */ 159 | typedRef?: (typed: Typed) => void; 160 | /** 161 | * if true will be initialized in stopped state 162 | * @default false 163 | * */ 164 | stopped?: boolean; 165 | /** 166 | * In some custom component dom element is not in the ref.current property. 167 | * ie an Input by antd the element is in input property ( ref.current.input ) 168 | * you can use this function to get the element from the ref 169 | * @default (ref)=>ref.current 170 | * */ 171 | parseRef?: (ref: React.RefObject) => HTMLElement; 172 | /** 173 | * if true will start only when the element is visible 174 | * @default false 175 | * */ 176 | startWhenVisible?: boolean; 177 | children?: React.ReactElement; 178 | } 179 | export declare const ReactTyped: React.FC; 180 | export { Typed }; 181 | -------------------------------------------------------------------------------- /dist/mjs/index.js: -------------------------------------------------------------------------------- 1 | import React, { memo, useMemo, useRef, useEffect } from "react"; 2 | import Typed from "typed.js"; 3 | export const ReactTyped = memo(({ style, className, typedRef, parseRef: transformRef, stopped, children, startWhenVisible, ...typedOptions }) => { 4 | const rootElement = useRef(null); 5 | const shouldUpdateArgs = useMemo(() => [ 6 | ...Object.values(typedOptions).filter((v) => typeof v === "boolean" || 7 | typeof v === "number" || 8 | typeof v === "string"), 9 | typedOptions.strings?.join(","), 10 | ], [typedOptions]); 11 | useEffect(() => { 12 | const element = (transformRef && transformRef(rootElement)) || rootElement.current; 13 | const typed = new Typed(element, { ...typedOptions }); 14 | if (stopped || startWhenVisible) { 15 | typed?.stop(); 16 | } 17 | if (startWhenVisible) { 18 | const observer = new IntersectionObserver(([entry]) => { 19 | if (entry.isIntersecting) { 20 | typed?.start(); 21 | observer.disconnect(); 22 | } 23 | }); 24 | observer.observe(element); 25 | } 26 | if (typedRef && typed) { 27 | typedRef(typed); 28 | } 29 | return () => { 30 | typed.destroy(); 31 | }; 32 | }, shouldUpdateArgs); 33 | const child = !children ? (React.createElement("span", { style: style, ref: rootElement })) : (React.cloneElement(children, { 34 | ref: rootElement, 35 | })); 36 | return (React.createElement("span", { style: style, className: className, "data-testid": "react-typed" }, child)); 37 | }); 38 | export { Typed }; 39 | //# sourceMappingURL=index.js.map -------------------------------------------------------------------------------- /dist/mjs/index.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAChE,OAAO,KAAK,MAAM,UAAU,CAAC;AAkL7B,MAAM,CAAC,MAAM,UAAU,GAA8B,IAAI,CACvD,CAAC,EACC,KAAK,EACL,SAAS,EACT,QAAQ,EACR,QAAQ,EAAE,YAAY,EACtB,OAAO,EACP,QAAQ,EACR,gBAAgB,EAChB,GAAG,YAAY,EAChB,EAAE,EAAE;IACH,MAAM,WAAW,GAAG,MAAM,CAAM,IAAI,CAAC,CAAC;IACtC,MAAM,gBAAgB,GAAG,OAAO,CAC9B,GAAG,EAAE,CAAC;QACJ,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,CACnC,CAAC,CAAC,EAAE,EAAE,CACJ,OAAO,CAAC,KAAK,SAAS;YACtB,OAAO,CAAC,KAAK,QAAQ;YACrB,OAAO,CAAC,KAAK,QAAQ,CACxB;QACD,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC;KAChC,EACD,CAAC,YAAY,CAAC,CACf,CAAC;IACF,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,OAAO,GACX,CAAC,YAAY,IAAI,YAAY,CAAC,WAAW,CAAC,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC;QACrE,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,GAAG,YAAY,EAAE,CAAC,CAAC;QAEtD,IAAI,OAAO,IAAI,gBAAgB,EAAE,CAAC;YAChC,KAAK,EAAE,IAAI,EAAE,CAAC;QAChB,CAAC;QAED,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,QAAQ,GAAG,IAAI,oBAAoB,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE;gBACpD,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;oBACzB,KAAK,EAAE,KAAK,EAAE,CAAC;oBACf,QAAQ,CAAC,UAAU,EAAE,CAAC;gBACxB,CAAC;YACH,CAAC,CAAC,CAAC;YACH,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;QAED,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;YACtB,QAAQ,CAAC,KAAK,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,GAAG,EAAE;YACV,KAAK,CAAC,OAAO,EAAE,CAAC;QAClB,CAAC,CAAC;IACJ,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAErB,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CACxB,8BAAM,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,WAAW,GAAI,CACzC,CAAC,CAAC,CAAC,CACF,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE;QAC3B,GAAG,EAAE,WAAW;KACjB,CAAC,CACH,CAAC;IACF,OAAO,CACL,8BAAM,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,iBAAc,aAAa,IAChE,KAAK,CACD,CACR,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,OAAO,EAAE,KAAK,EAAE,CAAC"} -------------------------------------------------------------------------------- /dist/mjs/package.json: -------------------------------------------------------------------------------- 1 | {"type": "module"} 2 | -------------------------------------------------------------------------------- /docs/312.46ad6ceb.iframe.bundle.js: -------------------------------------------------------------------------------- 1 | (self.webpackChunkreact_typed=self.webpackChunkreact_typed||[]).push([[312],{"./node_modules/memoizerific sync recursive":module=>{function webpackEmptyContext(req){var e=Error("Cannot find module '"+req+"'");throw e.code="MODULE_NOT_FOUND",e}webpackEmptyContext.keys=()=>[],webpackEmptyContext.resolve=webpackEmptyContext,webpackEmptyContext.id="./node_modules/memoizerific sync recursive",module.exports=webpackEmptyContext}}]); -------------------------------------------------------------------------------- /docs/341.527ff0f9.iframe.bundle.js: -------------------------------------------------------------------------------- 1 | "use strict";(self.webpackChunkreact_typed=self.webpackChunkreact_typed||[]).push([[341],{"./node_modules/@mdx-js/react/index.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{MDXContext:()=>MDXContext,MDXProvider:()=>MDXProvider,useMDXComponents:()=>useMDXComponents,withMDXComponents:()=>withMDXComponents});var react=__webpack_require__("./node_modules/react/index.js");let MDXContext=react.createContext({});function withMDXComponents(Component){return boundMDXComponent;function boundMDXComponent(props){let allComponents=useMDXComponents(props.components);return react.createElement(Component,{...props,allComponents})}}function useMDXComponents(components){let contextComponents=react.useContext(MDXContext);return react.useMemo(()=>"function"==typeof components?components(contextComponents):{...contextComponents,...components},[contextComponents,components])}let emptyObject={};function MDXProvider({components,children,disableParentContext}){let allComponents;return allComponents=disableParentContext?"function"==typeof components?components({}):components||emptyObject:useMDXComponents(components),react.createElement(MDXContext.Provider,{value:allComponents},children)}}}]); -------------------------------------------------------------------------------- /docs/607.5d984ebb.iframe.bundle.js: -------------------------------------------------------------------------------- 1 | "use strict";(self.webpackChunkreact_typed=self.webpackChunkreact_typed||[]).push([[607],{"./node_modules/@storybook/components/dist/WithTooltip-V3YHNWJZ.mjs":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{WithToolTipState:()=>_chunk_NE5YGCQB_mjs__WEBPACK_IMPORTED_MODULE_0__.WA,WithTooltip:()=>_chunk_NE5YGCQB_mjs__WEBPACK_IMPORTED_MODULE_0__.WA,WithTooltipPure:()=>_chunk_NE5YGCQB_mjs__WEBPACK_IMPORTED_MODULE_0__.DG});var _chunk_NE5YGCQB_mjs__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__("./node_modules/@storybook/components/dist/chunk-NE5YGCQB.mjs")}}]); -------------------------------------------------------------------------------- /docs/729.22f389b0.iframe.bundle.js: -------------------------------------------------------------------------------- 1 | (self.webpackChunkreact_typed=self.webpackChunkreact_typed||[]).push([[729],{"./node_modules/@storybook/blocks/dist/Color-6VNJS4EI.mjs":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{ColorControl:()=>ColorControl,default:()=>Color_default});var ColorSpace2,chunk_GWAJ4KRU=__webpack_require__("./node_modules/@storybook/blocks/dist/chunk-GWAJ4KRU.mjs"),react=__webpack_require__("./node_modules/react/index.js");function u(){return(u=Object.assign||function(e){for(var r=1;r=0||(o[t]=e[t]);return o}function i(e){var t=(0,react.useRef)(e),n=(0,react.useRef)(function(e){t.current&&t.current(e)});return t.current=e,n.current}var s=function(e,r,t){return void 0===r&&(r=0),void 0===t&&(t=1),e>t?t:e0:e.buttons>0)&&m.current?g(d(m.current,e,b.current)):t(!1)},r=function(){return t(!1)};function t(t){var n=_.current,o=v(m.current),a=t?o.addEventListener:o.removeEventListener;a(n?"touchmove":"mousemove",e),a(n?"touchend":"mouseup",r)}return[function(e){var r=e.nativeEvent,n=m.current;if(n&&(h(r),(!_.current||f(r))&&n)){if(f(r)){_.current=!0;var o=r.changedTouches||[];o.length&&(b.current=o[0].identifier)}n.focus(),g(d(n,r,b.current)),t(!0)}},function(e){var r=e.which||e.keyCode;r<37||r>40||(e.preventDefault(),p({left:39===r?.05:37===r?-.05:0,top:40===r?.05:38===r?-.05:0}))},t]},[p,g]),C=x[0],E=x[1],H=x[2];return(0,react.useEffect)(function(){return H},[H]),react.createElement("div",u({},s,{onTouchStart:C,onMouseDown:C,className:"react-colorful__interactive",ref:m,onKeyDown:E,tabIndex:0,role:"slider"}))}),g=function(e){return e.filter(Boolean).join(" ")},p=function(r){var t=r.color,n=r.left,o=r.top,l=g(["react-colorful__pointer",r.className]);return react.createElement("div",{className:l,style:{top:100*(void 0===o?.5:o)+"%",left:100*n+"%"}},react.createElement("div",{className:"react-colorful__pointer-fill",style:{backgroundColor:t}}))},b=function(e,r,t){return void 0===r&&(r=0),void 0===t&&(t=Math.pow(10,r)),Math.round(t*e)/t},_={grad:.9,turn:360,rad:360/(2*Math.PI)},C=function(e){return"#"===e[0]&&(e=e.substring(1)),e.length<6?{r:parseInt(e[0]+e[0],16),g:parseInt(e[1]+e[1],16),b:parseInt(e[2]+e[2],16),a:4===e.length?b(parseInt(e[3]+e[3],16)/255,2):1}:{r:parseInt(e.substring(0,2),16),g:parseInt(e.substring(2,4),16),b:parseInt(e.substring(4,6),16),a:8===e.length?b(parseInt(e.substring(6,8),16)/255,2):1}},E=function(e,r){return void 0===r&&(r="deg"),Number(e)*(_[r]||1)},N=function(e){var r=e.s,t=e.l;return{h:e.h,s:(r*=(t<50?t:100-t)/100)>0?2*r/(t+r)*100:0,v:t+r,a:e.a}},y=function(e){var r=e.s,t=e.v,n=e.a,o=(200-r)*t/100;return{h:b(e.h),s:b(o>0&&o<200?r*t/100/(o<=100?o:200-o)*100:0),l:b(o/2),a:b(n,2)}},q=function(e){var r=y(e);return"hsl("+r.h+", "+r.s+"%, "+r.l+"%)"},k=function(e){var r=y(e);return"hsla("+r.h+", "+r.s+"%, "+r.l+"%, "+r.a+")"},I=function(e){var r=e.h,t=e.s,n=e.v,o=e.a;r=r/360*6,t/=100,n/=100;var a=Math.floor(r),l=n*(1-t),u=n*(1-(r-a)*t),c=n*(1-(1-r+a)*t),i=a%6;return{r:b(255*[n,u,l,l,c,n][i]),g:b(255*[c,n,n,u,l,l][i]),b:b(255*[l,l,c,n,n,u][i]),a:b(o,2)}},D=function(e){var r=e.toString(16);return r.length<2?"0"+r:r},K=function(e){var r=e.r,t=e.g,n=e.b,o=e.a,a=o<1?D(b(255*o)):"";return"#"+D(r)+D(t)+D(n)+a},L=function(e){var r=e.r,t=e.g,n=e.b,o=e.a,a=Math.max(r,t,n),l=a-Math.min(r,t,n),u=l?a===r?(t-n)/l:a===t?2+(n-r)/l:4+(r-t)/l:0;return{h:b(60*(u<0?u+6:u)),s:b(a?l/a*100:0),v:b(a/255*100),a:o}},A=function(e){return{h:b(e.h),s:b(e.s),v:b(e.v),a:b(e.a,2)}},S=react.memo(function(r){var t=r.hue,n=r.onChange,o=g(["react-colorful__hue",r.className]);return react.createElement("div",{className:o},react.createElement(m,{onMove:function(e){n({h:360*e.left})},onKey:function(e){n({h:s(t+360*e.left,0,360)})},"aria-label":"Hue","aria-valuenow":b(t),"aria-valuemax":"360","aria-valuemin":"0"},react.createElement(p,{className:"react-colorful__hue-pointer",left:t/360,color:q({h:t,s:100,v:100,a:1})})))}),T=react.memo(function(r){var t=r.hsva,n=r.onChange,o={backgroundColor:q({h:t.h,s:100,v:100,a:1})};return react.createElement("div",{className:"react-colorful__saturation",style:o},react.createElement(m,{onMove:function(e){n({s:100*e.left,v:100-100*e.top})},onKey:function(e){n({s:s(t.s+100*e.left,0,100),v:s(t.v-100*e.top,0,100)})},"aria-label":"Color","aria-valuetext":"Saturation "+b(t.s)+"%, Brightness "+b(t.v)+"%"},react.createElement(p,{className:"react-colorful__saturation-pointer",top:1-t.v/100,left:t.s/100,color:q(t)})))}),F=function(e,r){if(e===r)return!0;for(var t in e)if(e[t]!==r[t])return!1;return!0},P=function(e,r){return e.replace(/\s/g,"")===r.replace(/\s/g,"")};function Y(e,t,l){var u=i(l),c=(0,react.useState)(function(){return e.toHsva(t)}),s=c[0],f=c[1],v=(0,react.useRef)({color:t,hsva:s});return(0,react.useEffect)(function(){if(!e.equal(t,v.current.color)){var r=e.toHsva(t);v.current={hsva:r,color:t},f(r)}},[t,e]),(0,react.useEffect)(function(){var r;F(s,v.current.hsva)||e.equal(r=e.fromHsva(s),v.current.color)||(v.current={hsva:s,color:r},u(r))},[s,e,u]),[s,(0,react.useCallback)(function(e){f(function(r){return Object.assign({},r,e)})},[])]}var R,V="undefined"!=typeof window?react.useLayoutEffect:react.useEffect,J=new Map,Q=function(e){V(function(){var r=e.current?e.current.ownerDocument:document;if(void 0!==r&&!J.has(r)){var t=r.createElement("style");t.innerHTML='.react-colorful{position:relative;display:flex;flex-direction:column;width:200px;height:200px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.react-colorful__saturation{position:relative;flex-grow:1;border-color:transparent;border-bottom:12px solid #000;border-radius:8px 8px 0 0;background-image:linear-gradient(0deg,#000,transparent),linear-gradient(90deg,#fff,hsla(0,0%,100%,0))}.react-colorful__alpha-gradient,.react-colorful__pointer-fill{content:"";position:absolute;left:0;top:0;right:0;bottom:0;pointer-events:none;border-radius:inherit}.react-colorful__alpha-gradient,.react-colorful__saturation{box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}.react-colorful__alpha,.react-colorful__hue{position:relative;height:24px}.react-colorful__hue{background:linear-gradient(90deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red)}.react-colorful__last-control{border-radius:0 0 8px 8px}.react-colorful__interactive{position:absolute;left:0;top:0;right:0;bottom:0;border-radius:inherit;outline:none;touch-action:none}.react-colorful__pointer{position:absolute;z-index:1;box-sizing:border-box;width:28px;height:28px;transform:translate(-50%,-50%);background-color:#fff;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2)}.react-colorful__interactive:focus .react-colorful__pointer{transform:translate(-50%,-50%) scale(1.1)}.react-colorful__alpha,.react-colorful__alpha-pointer{background-color:#fff;background-image:url(\'data:image/svg+xml;charset=utf-8,\')}.react-colorful__saturation-pointer{z-index:3}.react-colorful__hue-pointer{z-index:2}',J.set(r,t);var n=R||__webpack_require__.nc;n&&t.setAttribute("nonce",n),r.head.appendChild(t)}},[])},U=function(t){var n=t.className,o=t.colorModel,a=t.color,l=void 0===a?o.defaultColor:a,i=t.onChange,s=c(t,["className","colorModel","color","onChange"]),f=(0,react.useRef)(null);Q(f);var v=Y(o,l,i),d=v[0],h=v[1],m=g(["react-colorful",n]);return react.createElement("div",u({},s,{ref:f,className:m}),react.createElement(T,{hsva:d,onChange:h}),react.createElement(S,{hue:d.h,onChange:h,className:"react-colorful__last-control"}))},W={defaultColor:"000",toHsva:function(e){return L(C(e))},fromHsva:function(e){return K(I({h:e.h,s:e.s,v:e.v,a:1}))},equal:function(e,r){return e.toLowerCase()===r.toLowerCase()||F(C(e),C(r))}},ee=function(r){var t=r.className,n=r.hsva,o=r.onChange,a={backgroundImage:"linear-gradient(90deg, "+k(Object.assign({},n,{a:0}))+", "+k(Object.assign({},n,{a:1}))+")"},l=g(["react-colorful__alpha",t]),u=b(100*n.a);return react.createElement("div",{className:l},react.createElement("div",{className:"react-colorful__alpha-gradient",style:a}),react.createElement(m,{onMove:function(e){o({a:e.left})},onKey:function(e){o({a:s(n.a+e.left)})},"aria-label":"Alpha","aria-valuetext":u+"%","aria-valuenow":u,"aria-valuemin":"0","aria-valuemax":"100"},react.createElement(p,{className:"react-colorful__alpha-pointer",left:n.a,color:k(n)})))},re=function(t){var n=t.className,o=t.colorModel,a=t.color,l=void 0===a?o.defaultColor:a,i=t.onChange,s=c(t,["className","colorModel","color","onChange"]),f=(0,react.useRef)(null);Q(f);var v=Y(o,l,i),d=v[0],h=v[1],m=g(["react-colorful",n]);return react.createElement("div",u({},s,{ref:f,className:m}),react.createElement(T,{hsva:d,onChange:h}),react.createElement(S,{hue:d.h,onChange:h}),react.createElement(ee,{hsva:d,onChange:h,className:"react-colorful__last-control"}))},le={defaultColor:"hsla(0, 0%, 0%, 1)",toHsva:function(e){var r=/hsla?\(?\s*(-?\d*\.?\d+)(deg|rad|grad|turn)?[,\s]+(-?\d*\.?\d+)%?[,\s]+(-?\d*\.?\d+)%?,?\s*[/\s]*(-?\d*\.?\d+)?(%)?\s*\)?/i.exec(e);return r?N({h:E(r[1],r[2]),s:Number(r[3]),l:Number(r[4]),a:void 0===r[5]?1:Number(r[5])/(r[6]?100:1)}):{h:0,s:0,v:0,a:1}},fromHsva:k,equal:P},Ee={defaultColor:"rgba(0, 0, 0, 1)",toHsva:function(e){var r=/rgba?\(?\s*(-?\d*\.?\d+)(%)?[,\s]+(-?\d*\.?\d+)(%)?[,\s]+(-?\d*\.?\d+)(%)?,?\s*[/\s]*(-?\d*\.?\d+)?(%)?\s*\)?/i.exec(e);return r?L({r:Number(r[1])/(r[2]?100/255:1),g:Number(r[3])/(r[4]?100/255:1),b:Number(r[5])/(r[6]?100/255:1),a:void 0===r[7]?1:Number(r[7])/(r[8]?100:1)}):{h:0,s:0,v:0,a:1}},fromHsva:function(e){var r=I(e);return"rgba("+r.r+", "+r.g+", "+r.b+", "+r.a+")"},equal:P},color_convert=__webpack_require__("./node_modules/color-convert/index.js"),color_convert_default=__webpack_require__.n(color_convert),throttle=__webpack_require__("./node_modules/lodash/throttle.js"),throttle_default=__webpack_require__.n(throttle),dist=__webpack_require__("./node_modules/@storybook/theming/dist/index.mjs"),components_dist=__webpack_require__("./node_modules/@storybook/components/dist/index.mjs"),Wrapper=dist.zo.div({position:"relative",maxWidth:250}),PickerTooltip=(0,dist.zo)(components_dist.Rl)({position:"absolute",zIndex:1,top:4,left:4}),TooltipContent=dist.zo.div({width:200,margin:5,".react-colorful__saturation":{borderRadius:"4px 4px 0 0"},".react-colorful__hue":{boxShadow:"inset 0 0 0 1px rgb(0 0 0 / 5%)"},".react-colorful__last-control":{borderRadius:"0 0 4px 4px"}}),Note=(0,dist.zo)(components_dist.gu)(({theme})=>({fontFamily:theme.typography.fonts.base})),Swatches=dist.zo.div({display:"grid",gridTemplateColumns:"repeat(9, 16px)",gap:6,padding:3,marginTop:5,width:200}),SwatchColor=dist.zo.div(({theme,active})=>({width:16,height:16,boxShadow:active?`${theme.appBorderColor} 0 0 0 1px inset, ${theme.textMutedColor}50 0 0 0 4px`:`${theme.appBorderColor} 0 0 0 1px inset`,borderRadius:theme.appBorderRadius})),Swatch=({value,active,onClick,style,...props})=>{let backgroundImage=`linear-gradient(${value}, ${value}), url('data:image/svg+xml;charset=utf-8,'), linear-gradient(#fff, #fff)`;return react.createElement(SwatchColor,{...props,active,onClick,style:{...style,backgroundImage}})},Input=(0,dist.zo)(components_dist.l0.Input)(({theme})=>({width:"100%",paddingLeft:30,paddingRight:30,boxSizing:"border-box",fontFamily:theme.typography.fonts.base})),ToggleIcon=(0,dist.zo)(components_dist.PJ)(({theme})=>({position:"absolute",zIndex:1,top:6,right:7,width:20,height:20,padding:4,boxSizing:"border-box",cursor:"pointer",color:theme.input.color})),ColorSpace=((ColorSpace2=ColorSpace||{}).RGB="rgb",ColorSpace2.HSL="hsl",ColorSpace2.HEX="hex",ColorSpace2),COLOR_SPACES=Object.values(ColorSpace),COLOR_REGEXP=/\(([0-9]+),\s*([0-9]+)%?,\s*([0-9]+)%?,?\s*([0-9.]+)?\)/,RGB_REGEXP=/^\s*rgba?\(([0-9]+),\s*([0-9]+),\s*([0-9]+),?\s*([0-9.]+)?\)\s*$/i,HSL_REGEXP=/^\s*hsla?\(([0-9]+),\s*([0-9]+)%,\s*([0-9]+)%,?\s*([0-9.]+)?\)\s*$/i,HEX_REGEXP=/^\s*#?([0-9a-f]{3}|[0-9a-f]{6})\s*$/i,SHORTHEX_REGEXP=/^\s*#?([0-9a-f]{3})\s*$/i,ColorPicker={hex:function(r){return react.createElement(U,u({},r,{colorModel:W}))},rgb:function(r){return react.createElement(re,u({},r,{colorModel:Ee}))},hsl:function(r){return react.createElement(re,u({},r,{colorModel:le}))}},fallbackColor={hex:"transparent",rgb:"rgba(0, 0, 0, 0)",hsl:"hsla(0, 0%, 0%, 0)"},stringToArgs=value=>{let match=value?.match(COLOR_REGEXP);if(!match)return[0,0,0,1];let[,x,y,z,a=1]=match;return[x,y,z,a].map(Number)},parseValue=value=>{if(!value)return;let valid=!0;if(RGB_REGEXP.test(value)){let[r,g,b,a]=stringToArgs(value),[h,s,l]=color_convert_default().rgb.hsl([r,g,b])||[0,0,0];return{valid,value,keyword:color_convert_default().rgb.keyword([r,g,b]),colorSpace:"rgb",rgb:value,hsl:`hsla(${h}, ${s}%, ${l}%, ${a})`,hex:`#${color_convert_default().rgb.hex([r,g,b]).toLowerCase()}`}}if(HSL_REGEXP.test(value)){let[h,s,l,a]=stringToArgs(value),[r,g,b]=color_convert_default().hsl.rgb([h,s,l])||[0,0,0];return{valid,value,keyword:color_convert_default().hsl.keyword([h,s,l]),colorSpace:"hsl",rgb:`rgba(${r}, ${g}, ${b}, ${a})`,hsl:value,hex:`#${color_convert_default().hsl.hex([h,s,l]).toLowerCase()}`}}let plain=value.replace("#",""),rgb=color_convert_default().keyword.rgb(plain)||color_convert_default().hex.rgb(plain),hsl=color_convert_default().rgb.hsl(rgb),mapped=value;if(/[^#a-f0-9]/i.test(value)?mapped=plain:HEX_REGEXP.test(value)&&(mapped=`#${plain}`),mapped.startsWith("#"))valid=HEX_REGEXP.test(mapped);else try{color_convert_default().keyword.hex(mapped)}catch{valid=!1}return{valid,value:mapped,keyword:color_convert_default().rgb.keyword(rgb),colorSpace:"hex",rgb:`rgba(${rgb[0]}, ${rgb[1]}, ${rgb[2]}, 1)`,hsl:`hsla(${hsl[0]}, ${hsl[1]}%, ${hsl[2]}%, 1)`,hex:mapped}},getRealValue=(value,color,colorSpace)=>{if(!value||!color?.valid)return fallbackColor[colorSpace];if("hex"!==colorSpace)return color?.[colorSpace]||fallbackColor[colorSpace];if(!color.hex.startsWith("#"))try{return`#${color_convert_default().keyword.hex(color.hex)}`}catch{return fallbackColor.hex}let short=color.hex.match(SHORTHEX_REGEXP);if(!short)return HEX_REGEXP.test(color.hex)?color.hex:fallbackColor.hex;let[r,g,b]=short[1].split("");return`#${r}${r}${g}${g}${b}${b}`},useColorInput=(initialValue,onChange)=>{let[value,setValue]=(0,react.useState)(initialValue||""),[color,setColor]=(0,react.useState)(()=>parseValue(value)),[colorSpace,setColorSpace]=(0,react.useState)(color?.colorSpace||"hex");(0,react.useEffect)(()=>{let nextValue=initialValue||"",nextColor=parseValue(nextValue);setValue(nextValue),setColor(nextColor),setColorSpace(nextColor?.colorSpace||"hex")},[initialValue]);let realValue=(0,react.useMemo)(()=>getRealValue(value,color,colorSpace).toLowerCase(),[value,color,colorSpace]),updateValue=(0,react.useCallback)(update=>{let parsed=parseValue(update),v=parsed?.value||update||"";setValue(v),""===v&&(setColor(void 0),onChange(void 0)),parsed&&(setColor(parsed),setColorSpace(parsed.colorSpace),onChange(parsed.value))},[onChange]),cycleColorSpace=(0,react.useCallback)(()=>{let next=COLOR_SPACES.indexOf(colorSpace)+1;next>=COLOR_SPACES.length&&(next=0),setColorSpace(COLOR_SPACES[next]);let update=color?.[COLOR_SPACES[next]]||"";setValue(update),onChange(update)},[color,colorSpace,onChange]);return{value,realValue,updateValue,color,colorSpace,cycleColorSpace}},id=value=>value.replace(/\s*/,"").toLowerCase(),usePresets=(presetColors,currentColor,colorSpace)=>{let[selectedColors,setSelectedColors]=(0,react.useState)(currentColor?.valid?[currentColor]:[]);(0,react.useEffect)(()=>{void 0===currentColor&&setSelectedColors([])},[currentColor]);let presets=(0,react.useMemo)(()=>(presetColors||[]).map(preset=>"string"==typeof preset?parseValue(preset):preset.title?{...parseValue(preset.color),keyword:preset.title}:parseValue(preset.color)).concat(selectedColors).filter(Boolean).slice(-27),[presetColors,selectedColors]),addPreset=(0,react.useCallback)(color=>{color?.valid&&(presets.some(preset=>id(preset[colorSpace])===id(color[colorSpace]))||setSelectedColors(arr=>arr.concat(color)))},[colorSpace,presets]);return{presets,addPreset}},ColorControl=({name,value:initialValue,onChange,onFocus,onBlur,presetColors,startOpen=!1})=>{let{value,realValue,updateValue,color,colorSpace,cycleColorSpace}=useColorInput(initialValue,(0,react.useCallback)(throttle_default()(onChange,200),[onChange])),{presets,addPreset}=usePresets(presetColors,color,colorSpace),Picker=ColorPicker[colorSpace];return react.createElement(Wrapper,null,react.createElement(PickerTooltip,{startOpen,closeOnOutsideClick:!0,onVisibleChange:()=>addPreset(color),tooltip:react.createElement(TooltipContent,null,react.createElement(Picker,{color:"transparent"===realValue?"#000000":realValue,onChange:updateValue,onFocus,onBlur}),presets.length>0&&react.createElement(Swatches,null,presets.map((preset,index)=>react.createElement(components_dist.Rl,{key:`${preset.value}-${index}`,hasChrome:!1,tooltip:react.createElement(Note,{note:preset.keyword||preset.value})},react.createElement(Swatch,{value:preset[colorSpace],active:color&&id(preset[colorSpace])===id(color[colorSpace]),onClick:()=>updateValue(preset.value)})))))},react.createElement(Swatch,{value:realValue,style:{margin:4}})),react.createElement(Input,{id:(0,chunk_GWAJ4KRU.d)(name),value,onChange:e=>updateValue(e.target.value),onFocus:e=>e.target.select(),placeholder:"Choose color..."}),value?react.createElement(ToggleIcon,{icon:"markup",onClick:cycleColorSpace}):null)},Color_default=ColorControl},"./node_modules/color-convert/conversions.js":(module,__unused_webpack_exports,__webpack_require__)=>{let cssKeywords=__webpack_require__("./node_modules/color-name/index.js"),reverseKeywords={};for(let key of Object.keys(cssKeywords))reverseKeywords[cssKeywords[key]]=key;let convert={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};for(let model of(module.exports=convert,Object.keys(convert))){if(!("channels"in convert[model]))throw Error("missing channels property: "+model);if(!("labels"in convert[model]))throw Error("missing channel labels property: "+model);if(convert[model].labels.length!==convert[model].channels)throw Error("channel and label counts mismatch: "+model);let{channels,labels}=convert[model];delete convert[model].channels,delete convert[model].labels,Object.defineProperty(convert[model],"channels",{value:channels}),Object.defineProperty(convert[model],"labels",{value:labels})}function comparativeDistance(x,y){return(x[0]-y[0])**2+(x[1]-y[1])**2+(x[2]-y[2])**2}convert.rgb.hsl=function(rgb){let h;let r=rgb[0]/255,g=rgb[1]/255,b=rgb[2]/255,min=Math.min(r,g,b),max=Math.max(r,g,b),delta=max-min;max===min?h=0:r===max?h=(g-b)/delta:g===max?h=2+(b-r)/delta:b===max&&(h=4+(r-g)/delta),(h=Math.min(60*h,360))<0&&(h+=360);let l=(min+max)/2;return[h,100*(max===min?0:l<=.5?delta/(max+min):delta/(2-max-min)),100*l]},convert.rgb.hsv=function(rgb){let rdif,gdif,bdif,h,s;let r=rgb[0]/255,g=rgb[1]/255,b=rgb[2]/255,v=Math.max(r,g,b),diff=v-Math.min(r,g,b),diffc=function(c){return(v-c)/6/diff+.5};return 0===diff?(h=0,s=0):(s=diff/v,rdif=diffc(r),gdif=diffc(g),bdif=diffc(b),r===v?h=bdif-gdif:g===v?h=1/3+rdif-bdif:b===v&&(h=2/3+gdif-rdif),h<0?h+=1:h>1&&(h-=1)),[360*h,100*s,100*v]},convert.rgb.hwb=function(rgb){let r=rgb[0],g=rgb[1],b=rgb[2];return[convert.rgb.hsl(rgb)[0],1/255*Math.min(r,Math.min(g,b))*100,100*(b=1-1/255*Math.max(r,Math.max(g,b)))]},convert.rgb.cmyk=function(rgb){let r=rgb[0]/255,g=rgb[1]/255,b=rgb[2]/255,k=Math.min(1-r,1-g,1-b);return[100*((1-r-k)/(1-k)||0),100*((1-g-k)/(1-k)||0),100*((1-b-k)/(1-k)||0),100*k]},convert.rgb.keyword=function(rgb){let currentClosestKeyword;let reversed=reverseKeywords[rgb];if(reversed)return reversed;let currentClosestDistance=1/0;for(let keyword of Object.keys(cssKeywords)){let distance=comparativeDistance(rgb,cssKeywords[keyword]);distance.04045?((r+.055)/1.055)**2.4:r/12.92)+.3576*(g=g>.04045?((g+.055)/1.055)**2.4:g/12.92)+.1805*(b=b>.04045?((b+.055)/1.055)**2.4:b/12.92)),100*(.2126*r+.7152*g+.0722*b),100*(.0193*r+.1192*g+.9505*b)]},convert.rgb.lab=function(rgb){let xyz=convert.rgb.xyz(rgb),x=xyz[0],y=xyz[1],z=xyz[2];return x/=95.047,y/=100,z/=108.883,[116*(y=y>.008856?y**(1/3):7.787*y+16/116)-16,500*((x=x>.008856?x**(1/3):7.787*x+16/116)-y),200*(y-(z=z>.008856?z**(1/3):7.787*z+16/116))]},convert.hsl.rgb=function(hsl){let t2,t3,val;let h=hsl[0]/360,s=hsl[1]/100,l=hsl[2]/100;if(0===s)return[val=255*l,val,val];t2=l<.5?l*(1+s):l+s-l*s;let t1=2*l-t2,rgb=[0,0,0];for(let i=0;i<3;i++)(t3=h+-(1/3*(i-1)))<0&&t3++,t3>1&&t3--,val=6*t3<1?t1+(t2-t1)*6*t3:2*t3<1?t2:3*t3<2?t1+(t2-t1)*(2/3-t3)*6:t1,rgb[i]=255*val;return rgb},convert.hsl.hsv=function(hsl){let h=hsl[0],s=hsl[1]/100,l=hsl[2]/100,smin=s,lmin=Math.max(l,.01);l*=2,s*=l<=1?l:2-l,smin*=lmin<=1?lmin:2-lmin;let v=(l+s)/2;return[h,100*(0===l?2*smin/(lmin+smin):2*s/(l+s)),100*v]},convert.hsv.rgb=function(hsv){let h=hsv[0]/60,s=hsv[1]/100,v=hsv[2]/100,f=h-Math.floor(h),p=255*v*(1-s),q=255*v*(1-s*f),t=255*v*(1-s*(1-f));switch(v*=255,Math.floor(h)%6){case 0:return[v,t,p];case 1:return[q,v,p];case 2:return[p,v,t];case 3:return[p,q,v];case 4:return[t,p,v];case 5:return[v,p,q]}},convert.hsv.hsl=function(hsv){let sl,l;let h=hsv[0],s=hsv[1]/100,v=hsv[2]/100,vmin=Math.max(v,.01);l=(2-s)*v;let lmin=(2-s)*vmin;return[h,100*(s*vmin/(lmin<=1?lmin:2-lmin)||0),100*(l/=2)]},convert.hwb.rgb=function(hwb){let f,r,g,b;let h=hwb[0]/360,wh=hwb[1]/100,bl=hwb[2]/100,ratio=wh+bl;ratio>1&&(wh/=ratio,bl/=ratio);let i=Math.floor(6*h),v=1-bl;f=6*h-i,(1&i)!=0&&(f=1-f);let n=wh+f*(v-wh);switch(i){default:case 6:case 0:r=v,g=n,b=wh;break;case 1:r=n,g=v,b=wh;break;case 2:r=wh,g=v,b=n;break;case 3:r=wh,g=n,b=v;break;case 4:r=n,g=wh,b=v;break;case 5:r=v,g=wh,b=n}return[255*r,255*g,255*b]},convert.cmyk.rgb=function(cmyk){let c=cmyk[0]/100,m=cmyk[1]/100,y=cmyk[2]/100,k=cmyk[3]/100;return[255*(1-Math.min(1,c*(1-k)+k)),255*(1-Math.min(1,m*(1-k)+k)),255*(1-Math.min(1,y*(1-k)+k))]},convert.xyz.rgb=function(xyz){let r,g,b;let x=xyz[0]/100,y=xyz[1]/100,z=xyz[2]/100;return r=(r=3.2406*x+-1.5372*y+-.4986*z)>.0031308?1.055*r**(1/2.4)-.055:12.92*r,g=(g=-.9689*x+1.8758*y+.0415*z)>.0031308?1.055*g**(1/2.4)-.055:12.92*g,b=(b=.0557*x+-.204*y+1.057*z)>.0031308?1.055*b**(1/2.4)-.055:12.92*b,[255*(r=Math.min(Math.max(0,r),1)),255*(g=Math.min(Math.max(0,g),1)),255*(b=Math.min(Math.max(0,b),1))]},convert.xyz.lab=function(xyz){let x=xyz[0],y=xyz[1],z=xyz[2];return x/=95.047,y/=100,z/=108.883,[116*(y=y>.008856?y**(1/3):7.787*y+16/116)-16,500*((x=x>.008856?x**(1/3):7.787*x+16/116)-y),200*(y-(z=z>.008856?z**(1/3):7.787*z+16/116))]},convert.lab.xyz=function(lab){let x,y,z;let l=lab[0],a=lab[1],b=lab[2];x=a/500+(y=(l+16)/116),z=y-b/200;let y2=y**3,x2=x**3,z2=z**3;return y=(y2>.008856?y2:(y-16/116)/7.787)*100,[x=(x2>.008856?x2:(x-16/116)/7.787)*95.047,y,z=(z2>.008856?z2:(z-16/116)/7.787)*108.883]},convert.lab.lch=function(lab){let h;let l=lab[0],a=lab[1],b=lab[2];return(h=360*Math.atan2(b,a)/2/Math.PI)<0&&(h+=360),[l,Math.sqrt(a*a+b*b),h]},convert.lch.lab=function(lch){let l=lch[0],c=lch[1],hr=lch[2]/360*2*Math.PI;return[l,c*Math.cos(hr),c*Math.sin(hr)]},convert.rgb.ansi16=function(args,saturation=null){let[r,g,b]=args,value=null===saturation?convert.rgb.hsv(args)[2]:saturation;if(0===(value=Math.round(value/50)))return 30;let ansi=30+(Math.round(b/255)<<2|Math.round(g/255)<<1|Math.round(r/255));return 2===value&&(ansi+=60),ansi},convert.hsv.ansi16=function(args){return convert.rgb.ansi16(convert.hsv.rgb(args),args[2])},convert.rgb.ansi256=function(args){let r=args[0],g=args[1],b=args[2];return r===g&&g===b?r<8?16:r>248?231:Math.round((r-8)/247*24)+232:16+36*Math.round(r/255*5)+6*Math.round(g/255*5)+Math.round(b/255*5)},convert.ansi16.rgb=function(args){let color=args%10;if(0===color||7===color)return args>50&&(color+=3.5),[color=color/10.5*255,color,color];let mult=(~~(args>50)+1)*.5;return[(1&color)*mult*255,(color>>1&1)*mult*255,(color>>2&1)*mult*255]},convert.ansi256.rgb=function(args){let rem;if(args>=232){let c=(args-232)*10+8;return[c,c,c]}return[Math.floor((args-=16)/36)/5*255,Math.floor((rem=args%36)/6)/5*255,rem%6/5*255]},convert.rgb.hex=function(args){let string=(((255&Math.round(args[0]))<<16)+((255&Math.round(args[1]))<<8)+(255&Math.round(args[2]))).toString(16).toUpperCase();return"000000".substring(string.length)+string},convert.hex.rgb=function(args){let match=args.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!match)return[0,0,0];let colorString=match[0];3===match[0].length&&(colorString=colorString.split("").map(char=>char+char).join(""));let integer=parseInt(colorString,16);return[integer>>16&255,integer>>8&255,255&integer]},convert.rgb.hcg=function(rgb){let r=rgb[0]/255,g=rgb[1]/255,b=rgb[2]/255,max=Math.max(Math.max(r,g),b),min=Math.min(Math.min(r,g),b),chroma=max-min;return[(chroma<=0?0:max===r?(g-b)/chroma%6:max===g?2+(b-r)/chroma:4+(r-g)/chroma)/6%1*360,100*chroma,100*(chroma<1?min/(1-chroma):0)]},convert.hsl.hcg=function(hsl){let s=hsl[1]/100,l=hsl[2]/100,c=l<.5?2*s*l:2*s*(1-l),f=0;return c<1&&(f=(l-.5*c)/(1-c)),[hsl[0],100*c,100*f]},convert.hsv.hcg=function(hsv){let s=hsv[1]/100,v=hsv[2]/100,c=s*v,f=0;return c<1&&(f=(v-c)/(1-c)),[hsv[0],100*c,100*f]},convert.hcg.rgb=function(hcg){let h=hcg[0]/360,c=hcg[1]/100,g=hcg[2]/100;if(0===c)return[255*g,255*g,255*g];let pure=[0,0,0],hi=h%1*6,v=hi%1,w=1-v,mg=0;switch(Math.floor(hi)){case 0:pure[0]=1,pure[1]=v,pure[2]=0;break;case 1:pure[0]=w,pure[1]=1,pure[2]=0;break;case 2:pure[0]=0,pure[1]=1,pure[2]=v;break;case 3:pure[0]=0,pure[1]=w,pure[2]=1;break;case 4:pure[0]=v,pure[1]=0,pure[2]=1;break;default:pure[0]=1,pure[1]=0,pure[2]=w}return mg=(1-c)*g,[(c*pure[0]+mg)*255,(c*pure[1]+mg)*255,(c*pure[2]+mg)*255]},convert.hcg.hsv=function(hcg){let c=hcg[1]/100,v=c+hcg[2]/100*(1-c),f=0;return v>0&&(f=c/v),[hcg[0],100*f,100*v]},convert.hcg.hsl=function(hcg){let c=hcg[1]/100,l=hcg[2]/100*(1-c)+.5*c,s=0;return l>0&&l<.5?s=c/(2*l):l>=.5&&l<1&&(s=c/(2*(1-l))),[hcg[0],100*s,100*l]},convert.hcg.hwb=function(hcg){let c=hcg[1]/100,v=c+hcg[2]/100*(1-c);return[hcg[0],(v-c)*100,(1-v)*100]},convert.hwb.hcg=function(hwb){let w=hwb[1]/100,v=1-hwb[2]/100,c=v-w,g=0;return c<1&&(g=(v-c)/(1-c)),[hwb[0],100*c,100*g]},convert.apple.rgb=function(apple){return[apple[0]/65535*255,apple[1]/65535*255,apple[2]/65535*255]},convert.rgb.apple=function(rgb){return[rgb[0]/255*65535,rgb[1]/255*65535,rgb[2]/255*65535]},convert.gray.rgb=function(args){return[args[0]/100*255,args[0]/100*255,args[0]/100*255]},convert.gray.hsl=function(args){return[0,0,args[0]]},convert.gray.hsv=convert.gray.hsl,convert.gray.hwb=function(gray){return[0,100,gray[0]]},convert.gray.cmyk=function(gray){return[0,0,0,gray[0]]},convert.gray.lab=function(gray){return[gray[0],0,0]},convert.gray.hex=function(gray){let val=255&Math.round(gray[0]/100*255),string=((val<<16)+(val<<8)+val).toString(16).toUpperCase();return"000000".substring(string.length)+string},convert.rgb.gray=function(rgb){return[(rgb[0]+rgb[1]+rgb[2])/3/255*100]}},"./node_modules/color-convert/index.js":(module,__unused_webpack_exports,__webpack_require__)=>{let conversions=__webpack_require__("./node_modules/color-convert/conversions.js"),route=__webpack_require__("./node_modules/color-convert/route.js"),convert={};function wrapRaw(fn){let wrappedFn=function(...args){let arg0=args[0];return null==arg0?arg0:(arg0.length>1&&(args=arg0),fn(args))};return"conversion"in fn&&(wrappedFn.conversion=fn.conversion),wrappedFn}function wrapRounded(fn){let wrappedFn=function(...args){let arg0=args[0];if(null==arg0)return arg0;arg0.length>1&&(args=arg0);let result=fn(args);if("object"==typeof result)for(let len=result.length,i=0;i{convert[fromModel]={},Object.defineProperty(convert[fromModel],"channels",{value:conversions[fromModel].channels}),Object.defineProperty(convert[fromModel],"labels",{value:conversions[fromModel].labels});let routes=route(fromModel);Object.keys(routes).forEach(toModel=>{let fn=routes[toModel];convert[fromModel][toModel]=wrapRounded(fn),convert[fromModel][toModel].raw=wrapRaw(fn)})}),module.exports=convert},"./node_modules/color-convert/route.js":(module,__unused_webpack_exports,__webpack_require__)=>{let conversions=__webpack_require__("./node_modules/color-convert/conversions.js");function buildGraph(){let graph={},models=Object.keys(conversions);for(let len=models.length,i=0;i{"use strict";module.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}},"./node_modules/lodash/_baseTrim.js":(module,__unused_webpack_exports,__webpack_require__)=>{var trimmedEndIndex=__webpack_require__("./node_modules/lodash/_trimmedEndIndex.js"),reTrimStart=/^\s+/;function baseTrim(string){return string?string.slice(0,trimmedEndIndex(string)+1).replace(reTrimStart,""):string}module.exports=baseTrim},"./node_modules/lodash/_trimmedEndIndex.js":module=>{var reWhitespace=/\s/;function trimmedEndIndex(string){for(var index=string.length;index--&&reWhitespace.test(string.charAt(index)););return index}module.exports=trimmedEndIndex},"./node_modules/lodash/debounce.js":(module,__unused_webpack_exports,__webpack_require__)=>{var isObject=__webpack_require__("./node_modules/lodash/isObject.js"),now=__webpack_require__("./node_modules/lodash/now.js"),toNumber=__webpack_require__("./node_modules/lodash/toNumber.js"),nativeMax=Math.max,nativeMin=Math.min;function debounce(func,wait,options){var lastArgs,lastThis,maxWait,result,timerId,lastCallTime,lastInvokeTime=0,leading=!1,maxing=!1,trailing=!0;if("function"!=typeof func)throw TypeError("Expected a function");function invokeFunc(time){var args=lastArgs,thisArg=lastThis;return lastArgs=lastThis=void 0,lastInvokeTime=time,result=func.apply(thisArg,args)}function leadingEdge(time){return lastInvokeTime=time,timerId=setTimeout(timerExpired,wait),leading?invokeFunc(time):result}function remainingWait(time){var timeSinceLastCall=time-lastCallTime,timeSinceLastInvoke=time-lastInvokeTime,timeWaiting=wait-timeSinceLastCall;return maxing?nativeMin(timeWaiting,maxWait-timeSinceLastInvoke):timeWaiting}function shouldInvoke(time){var timeSinceLastCall=time-lastCallTime,timeSinceLastInvoke=time-lastInvokeTime;return void 0===lastCallTime||timeSinceLastCall>=wait||timeSinceLastCall<0||maxing&&timeSinceLastInvoke>=maxWait}function timerExpired(){var time=now();if(shouldInvoke(time))return trailingEdge(time);timerId=setTimeout(timerExpired,remainingWait(time))}function trailingEdge(time){return(timerId=void 0,trailing&&lastArgs)?invokeFunc(time):(lastArgs=lastThis=void 0,result)}function cancel(){void 0!==timerId&&clearTimeout(timerId),lastInvokeTime=0,lastArgs=lastCallTime=lastThis=timerId=void 0}function flush(){return void 0===timerId?result:trailingEdge(now())}function debounced(){var time=now(),isInvoking=shouldInvoke(time);if(lastArgs=arguments,lastThis=this,lastCallTime=time,isInvoking){if(void 0===timerId)return leadingEdge(lastCallTime);if(maxing)return clearTimeout(timerId),timerId=setTimeout(timerExpired,wait),invokeFunc(lastCallTime)}return void 0===timerId&&(timerId=setTimeout(timerExpired,wait)),result}return wait=toNumber(wait)||0,isObject(options)&&(leading=!!options.leading,maxWait=(maxing="maxWait"in options)?nativeMax(toNumber(options.maxWait)||0,wait):maxWait,trailing="trailing"in options?!!options.trailing:trailing),debounced.cancel=cancel,debounced.flush=flush,debounced}module.exports=debounce},"./node_modules/lodash/now.js":(module,__unused_webpack_exports,__webpack_require__)=>{var root=__webpack_require__("./node_modules/lodash/_root.js");module.exports=function(){return root.Date.now()}},"./node_modules/lodash/throttle.js":(module,__unused_webpack_exports,__webpack_require__)=>{var debounce=__webpack_require__("./node_modules/lodash/debounce.js"),isObject=__webpack_require__("./node_modules/lodash/isObject.js");function throttle(func,wait,options){var leading=!0,trailing=!0;if("function"!=typeof func)throw TypeError("Expected a function");return isObject(options)&&(leading="leading"in options?!!options.leading:leading,trailing="trailing"in options?!!options.trailing:trailing),debounce(func,wait,{leading:leading,maxWait:wait,trailing:trailing})}module.exports=throttle},"./node_modules/lodash/toNumber.js":(module,__unused_webpack_exports,__webpack_require__)=>{var baseTrim=__webpack_require__("./node_modules/lodash/_baseTrim.js"),isObject=__webpack_require__("./node_modules/lodash/isObject.js"),isSymbol=__webpack_require__("./node_modules/lodash/isSymbol.js"),NAN=0/0,reIsBadHex=/^[-+]0x[0-9a-f]+$/i,reIsBinary=/^0b[01]+$/i,reIsOctal=/^0o[0-7]+$/i,freeParseInt=parseInt;function toNumber(value){if("number"==typeof value)return value;if(isSymbol(value))return NAN;if(isObject(value)){var other="function"==typeof value.valueOf?value.valueOf():value;value=isObject(other)?other+"":other}if("string"!=typeof value)return 0===value?value:+value;value=baseTrim(value);var isBinary=reIsBinary.test(value);return isBinary||reIsOctal.test(value)?freeParseInt(value.slice(2),isBinary?2:8):reIsBadHex.test(value)?NAN:+value}module.exports=toNumber}}]); -------------------------------------------------------------------------------- /docs/797.64014990.iframe.bundle.js: -------------------------------------------------------------------------------- 1 | "use strict";(self.webpackChunkreact_typed=self.webpackChunkreact_typed||[]).push([[797],{"./node_modules/@storybook/components/dist/syntaxhighlighter-V7JZZA35.mjs":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{SyntaxHighlighter:()=>_chunk_ELLS3HSY_mjs__WEBPACK_IMPORTED_MODULE_0__.d3,createCopyToClipboardFunction:()=>_chunk_ELLS3HSY_mjs__WEBPACK_IMPORTED_MODULE_0__.xV,default:()=>_chunk_ELLS3HSY_mjs__WEBPACK_IMPORTED_MODULE_0__.qG});var _chunk_ELLS3HSY_mjs__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__("./node_modules/@storybook/components/dist/chunk-ELLS3HSY.mjs")}}]); -------------------------------------------------------------------------------- /docs/favicon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /docs/iframe.html: -------------------------------------------------------------------------------- 1 | Webpack App

No Preview

Sorry, but you either have no stories or none are selected somehow.

  • Please check the Storybook config.
  • Try reloading the page.

If the problem persists, check the browser console, or the terminal you've run Storybook from.

-------------------------------------------------------------------------------- /docs/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | @storybook/cli - Storybook 7 | 8 | 9 | 10 | 11 | 12 | 19 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 57 | 58 | 59 | 60 | 61 |
62 | 63 | 64 | 101 | 102 | 103 | 128 | 129 | 130 | 131 | 132 | -------------------------------------------------------------------------------- /docs/index.json: -------------------------------------------------------------------------------- 1 | {"v":4,"entries":{"react-typed--docs":{"id":"react-typed--docs","title":"React Typed","name":"Docs","importPath":"./stories/ReactTyped.stories.tsx","type":"docs","tags":["autodocs","docs"],"storiesImports":[]},"react-typed--basic-usage":{"type":"story","id":"react-typed--basic-usage","name":"Basic Usage","title":"React Typed","importPath":"./stories/ReactTyped.stories.tsx","tags":["autodocs","story"]},"react-typed--with-input":{"type":"story","id":"react-typed--with-input","name":"With Input","title":"React Typed","importPath":"./stories/ReactTyped.stories.tsx","tags":["autodocs","story"]},"react-typed--input-placeholder":{"type":"story","id":"react-typed--input-placeholder","name":"Input Placeholder","title":"React Typed","importPath":"./stories/ReactTyped.stories.tsx","tags":["autodocs","story"]},"react-typed--stopped":{"type":"story","id":"react-typed--stopped","name":"Stopped","title":"React Typed","importPath":"./stories/ReactTyped.stories.tsx","tags":["autodocs","story"]},"react-typed--custom-component":{"type":"story","id":"react-typed--custom-component","name":"Custom Component","title":"React Typed","importPath":"./stories/ReactTyped.stories.tsx","tags":["autodocs","story"]},"react-typed--start-when-visible":{"type":"story","id":"react-typed--start-when-visible","name":"Start When Visible","title":"React Typed","importPath":"./stories/ReactTyped.stories.tsx","tags":["autodocs","story"]}}} 2 | -------------------------------------------------------------------------------- /docs/main.3e33949f.iframe.bundle.js: -------------------------------------------------------------------------------- 1 | (self.webpackChunkreact_typed=self.webpackChunkreact_typed||[]).push([[179],{"./node_modules/@storybook/addon-interactions/dist sync recursive":module=>{function webpackEmptyContext(req){var e=Error("Cannot find module '"+req+"'");throw e.code="MODULE_NOT_FOUND",e}webpackEmptyContext.keys=()=>[],webpackEmptyContext.resolve=webpackEmptyContext,webpackEmptyContext.id="./node_modules/@storybook/addon-interactions/dist sync recursive",module.exports=webpackEmptyContext},"./storybook-config-entry.js":(__unused_webpack_module,__unused_webpack___webpack_exports__,__webpack_require__)=>{"use strict";var external_STORYBOOK_MODULE_GLOBAL_=__webpack_require__("@storybook/global"),external_STORYBOOK_MODULE_PREVIEW_API_=__webpack_require__("@storybook/preview-api"),external_STORYBOOK_MODULE_CHANNELS_=__webpack_require__("@storybook/channels");let pipeline=x=>x(),importers=[async path=>{if(!/^\.(?:(?:^|\/|(?:(?:(?!(?:^|\/)\.).)*?)\/)(?!\.)(?=.)[^/]*?\.mdx)$/.exec(path))return;let pathRemainder=path.substring(2);return __webpack_require__("./. lazy recursive ^\\.\\/.*$ include: (?:(?:^%7C\\/%7C(?:(?:(?%21(?:^%7C\\/)\\.).)*?)\\/)(?%21\\.)(?=.)[^/]*?\\.mdx)$")("./"+pathRemainder)},async path=>{if(!/^\.(?:(?:^|\/|(?:(?:(?!(?:^|\/)\.).)*?)\/)(?!\.)(?=.)[^/]*?\.stories\.(js|jsx|mjs|ts|tsx))$/.exec(path))return;let pathRemainder=path.substring(2);return __webpack_require__("./. lazy recursive ^\\.\\/.*$ include: (?:(?:^%7C\\/%7C(?:(?:(?%21(?:^%7C\\/)\\.).)*?)\\/)(?%21\\.)(?=.)[^/]*?\\.stories\\.(js%7Cjsx%7Cmjs%7Cts%7Ctsx))$")("./"+pathRemainder)}];async function importFn(path){for(let i=0;iimporters[i](path));if(moduleExports)return moduleExports}}let channel=(0,external_STORYBOOK_MODULE_CHANNELS_.createBrowserChannel)({page:"preview"});external_STORYBOOK_MODULE_PREVIEW_API_.addons.setChannel(channel),"DEVELOPMENT"===external_STORYBOOK_MODULE_GLOBAL_.global.CONFIG_TYPE&&(window.__STORYBOOK_SERVER_CHANNEL__=channel);let preview=new external_STORYBOOK_MODULE_PREVIEW_API_.PreviewWeb;window.__STORYBOOK_PREVIEW__=preview,window.__STORYBOOK_STORY_STORE__=preview.storyStore,window.__STORYBOOK_ADDONS_CHANNEL__=channel,window.__STORYBOOK_CLIENT_API__=new external_STORYBOOK_MODULE_PREVIEW_API_.ClientApi({storyStore:preview.storyStore}),preview.initialize({importFn:importFn,getProjectAnnotations:()=>(0,external_STORYBOOK_MODULE_PREVIEW_API_.composeConfigs)([__webpack_require__("./node_modules/@storybook/react/dist/entry-preview.mjs"),__webpack_require__("./node_modules/@storybook/react/dist/entry-preview-docs.mjs"),__webpack_require__("./node_modules/@storybook/addon-links/dist/preview.js"),__webpack_require__("./node_modules/@storybook/addon-essentials/dist/docs/preview.js"),__webpack_require__("./node_modules/@storybook/addon-essentials/dist/actions/preview.js"),__webpack_require__("./node_modules/@storybook/addon-essentials/dist/backgrounds/preview.js"),__webpack_require__("./node_modules/@storybook/addon-essentials/dist/measure/preview.js"),__webpack_require__("./node_modules/@storybook/addon-essentials/dist/outline/preview.js"),__webpack_require__("./node_modules/@storybook/addon-essentials/dist/highlight/preview.js"),__webpack_require__("./node_modules/@storybook/addon-interactions/dist/preview.js"),__webpack_require__("./.storybook/preview.ts")])})},"./.storybook/preview.ts":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{default:()=>__WEBPACK_DEFAULT_EXPORT__});let __WEBPACK_DEFAULT_EXPORT__={parameters:{actions:{argTypesRegex:"^on[A-Z].*"},controls:{matchers:{color:/(background|color)$/i,date:/Date$/i}}}}},"./. lazy recursive ^\\.\\/.*$ include: (?:(?:^%7C\\/%7C(?:(?:(?%21(?:^%7C\\/)\\.).)*?)\\/)(?%21\\.)(?=.)[^/]*?\\.mdx)$":module=>{function webpackEmptyAsyncContext(req){return Promise.resolve().then(()=>{var e=Error("Cannot find module '"+req+"'");throw e.code="MODULE_NOT_FOUND",e})}webpackEmptyAsyncContext.keys=()=>[],webpackEmptyAsyncContext.resolve=webpackEmptyAsyncContext,webpackEmptyAsyncContext.id="./. lazy recursive ^\\.\\/.*$ include: (?:(?:^%7C\\/%7C(?:(?:(?%21(?:^%7C\\/)\\.).)*?)\\/)(?%21\\.)(?=.)[^/]*?\\.mdx)$",module.exports=webpackEmptyAsyncContext},"./. lazy recursive ^\\.\\/.*$ include: (?:(?:^%7C\\/%7C(?:(?:(?%21(?:^%7C\\/)\\.).)*?)\\/)(?%21\\.)(?=.)[^/]*?\\.stories\\.(js%7Cjsx%7Cmjs%7Cts%7Ctsx))$":(module,__unused_webpack_exports,__webpack_require__)=>{var map={"./stories/ReactTyped.stories":["./stories/ReactTyped.stories.tsx",846,576],"./stories/ReactTyped.stories.tsx":["./stories/ReactTyped.stories.tsx",846,576]};function webpackAsyncContext(req){if(!__webpack_require__.o(map,req))return Promise.resolve().then(()=>{var e=Error("Cannot find module '"+req+"'");throw e.code="MODULE_NOT_FOUND",e});var ids=map[req],id=ids[0];return Promise.all(ids.slice(1).map(__webpack_require__.e)).then(()=>__webpack_require__(id))}webpackAsyncContext.keys=()=>Object.keys(map),webpackAsyncContext.id="./. lazy recursive ^\\.\\/.*$ include: (?:(?:^%7C\\/%7C(?:(?:(?%21(?:^%7C\\/)\\.).)*?)\\/)(?%21\\.)(?=.)[^/]*?\\.stories\\.(js%7Cjsx%7Cmjs%7Cts%7Ctsx))$",module.exports=webpackAsyncContext},"@storybook/channels":module=>{"use strict";module.exports=__STORYBOOK_MODULE_CHANNELS__},"@storybook/client-logger":module=>{"use strict";module.exports=__STORYBOOK_MODULE_CLIENT_LOGGER__},"@storybook/core-events":module=>{"use strict";module.exports=__STORYBOOK_MODULE_CORE_EVENTS__},"@storybook/global":module=>{"use strict";module.exports=__STORYBOOK_MODULE_GLOBAL__},"@storybook/preview-api":module=>{"use strict";module.exports=__STORYBOOK_MODULE_PREVIEW_API__}},__webpack_require__=>{var __webpack_exec__=moduleId=>__webpack_require__(__webpack_require__.s=moduleId);__webpack_require__.O(0,[764],()=>__webpack_exec__("./storybook-config-entry.js")),__webpack_require__.O()}]); -------------------------------------------------------------------------------- /docs/project.json: -------------------------------------------------------------------------------- 1 | {"generatedAt":1706279014122,"hasCustomBabel":false,"hasCustomWebpack":false,"hasStaticDirs":false,"hasStorybookEslint":true,"refCount":0,"packageManager":{"type":"npm","version":"9.5.1"},"preview":{"usesGlobals":false},"framework":{"name":"@storybook/react-webpack5","options":{"builder":{"useSWC":true}}},"builder":"@storybook/builder-webpack5","renderer":"@storybook/react","storybookVersion":"7.6.10","storybookVersionSpecifier":"^7.6.10","language":"typescript","storybookPackages":{"@storybook/blocks":{"version":"7.6.10"},"@storybook/react":{"version":"7.6.10"},"@storybook/react-webpack5":{"version":"7.6.10"},"@storybook/test":{"version":"7.6.10"},"eslint-plugin-storybook":{"version":"0.6.15"},"storybook":{"version":"7.6.10"}},"addons":{"@storybook/addon-links":{"version":"7.6.10"},"@storybook/addon-essentials":{"version":"7.6.10"},"@storybook/addon-onboarding":{"version":"1.0.10"},"@storybook/addon-interactions":{"version":"7.6.10"}}} 2 | -------------------------------------------------------------------------------- /docs/runtime~main.46dcd3a7.iframe.bundle.js: -------------------------------------------------------------------------------- 1 | (()=>{"use strict";var __webpack_modules__={},__webpack_module_cache__={};function __webpack_require__(moduleId){var cachedModule=__webpack_module_cache__[moduleId];if(void 0!==cachedModule)return cachedModule.exports;var module=__webpack_module_cache__[moduleId]={id:moduleId,loaded:!1,exports:{}};return __webpack_modules__[moduleId].call(module.exports,module,module.exports,__webpack_require__),module.loaded=!0,module.exports}__webpack_require__.m=__webpack_modules__,__webpack_require__.amdO={},(()=>{var deferred=[];__webpack_require__.O=(result,chunkIds,fn,priority)=>{if(chunkIds){priority=priority||0;for(var i=deferred.length;i>0&&deferred[i-1][2]>priority;i--)deferred[i]=deferred[i-1];deferred[i]=[chunkIds,fn,priority];return}for(var notFulfilled=1/0,i=0;i=priority&&Object.keys(__webpack_require__.O).every(key=>__webpack_require__.O[key](chunkIds[j]))?chunkIds.splice(j--,1):(fulfilled=!1,priority{var getter=module&&module.__esModule?()=>module.default:()=>module;return __webpack_require__.d(getter,{a:getter}),getter},(()=>{var leafPrototypes,getProto=Object.getPrototypeOf?obj=>Object.getPrototypeOf(obj):obj=>obj.__proto__;__webpack_require__.t=function(value,mode){if(1&mode&&(value=this(value)),8&mode||"object"==typeof value&&value&&(4&mode&&value.__esModule||16&mode&&"function"==typeof value.then))return value;var ns=Object.create(null);__webpack_require__.r(ns);var def={};leafPrototypes=leafPrototypes||[null,getProto({}),getProto([]),getProto(getProto)];for(var current=2&mode&&value;"object"==typeof current&&!~leafPrototypes.indexOf(current);current=getProto(current))Object.getOwnPropertyNames(current).forEach(key=>def[key]=()=>value[key]);return def.default=()=>value,__webpack_require__.d(ns,def),ns}})(),__webpack_require__.d=(exports,definition)=>{for(var key in definition)__webpack_require__.o(definition,key)&&!__webpack_require__.o(exports,key)&&Object.defineProperty(exports,key,{enumerable:!0,get:definition[key]})},__webpack_require__.f={},__webpack_require__.e=chunkId=>Promise.all(Object.keys(__webpack_require__.f).reduce((promises,key)=>(__webpack_require__.f[key](chunkId,promises),promises),[])),__webpack_require__.u=chunkId=>""+(576===chunkId?"stories-ReactTyped-stories":chunkId)+"."+({312:"46ad6ceb",341:"527ff0f9",426:"352a72ea",506:"04443fb5",576:"cb7b582a",607:"5d984ebb",729:"22f389b0",797:"64014990",846:"5a26ae56"})[chunkId]+".iframe.bundle.js",__webpack_require__.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),__webpack_require__.o=(obj,prop)=>Object.prototype.hasOwnProperty.call(obj,prop),(()=>{var inProgress={},dataWebpackPrefix="react-typed:";__webpack_require__.l=(url,done,key,chunkId)=>{if(inProgress[url]){inProgress[url].push(done);return}if(void 0!==key)for(var script,needAttach,scripts=document.getElementsByTagName("script"),i=0;i{script.onerror=script.onload=null,clearTimeout(timeout);var doneFns=inProgress[url];if(delete inProgress[url],script.parentNode&&script.parentNode.removeChild(script),doneFns&&doneFns.forEach(fn=>fn(event)),prev)return prev(event)},timeout=setTimeout(onScriptComplete.bind(null,void 0,{type:"timeout",target:script}),12e4);script.onerror=onScriptComplete.bind(null,script.onerror),script.onload=onScriptComplete.bind(null,script.onload),needAttach&&document.head.appendChild(script)}})(),__webpack_require__.r=exports=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(exports,"__esModule",{value:!0})},__webpack_require__.nmd=module=>(module.paths=[],module.children||(module.children=[]),module),__webpack_require__.p="",(()=>{var installedChunks={303:0};__webpack_require__.f.j=(chunkId,promises)=>{var installedChunkData=__webpack_require__.o(installedChunks,chunkId)?installedChunks[chunkId]:void 0;if(0!==installedChunkData){if(installedChunkData)promises.push(installedChunkData[2]);else if(303!=chunkId){var promise=new Promise((resolve,reject)=>installedChunkData=installedChunks[chunkId]=[resolve,reject]);promises.push(installedChunkData[2]=promise);var url=__webpack_require__.p+__webpack_require__.u(chunkId),error=Error();__webpack_require__.l(url,event=>{if(__webpack_require__.o(installedChunks,chunkId)&&(0!==(installedChunkData=installedChunks[chunkId])&&(installedChunks[chunkId]=void 0),installedChunkData)){var errorType=event&&("load"===event.type?"missing":event.type),realSrc=event&&event.target&&event.target.src;error.message="Loading chunk "+chunkId+" failed.\n("+errorType+": "+realSrc+")",error.name="ChunkLoadError",error.type=errorType,error.request=realSrc,installedChunkData[1](error)}},"chunk-"+chunkId,chunkId)}else installedChunks[chunkId]=0}},__webpack_require__.O.j=chunkId=>0===installedChunks[chunkId];var webpackJsonpCallback=(parentChunkLoadingFunction,data)=>{var moduleId,chunkId,[chunkIds,moreModules,runtime]=data,i=0;if(chunkIds.some(id=>0!==installedChunks[id])){for(moduleId in moreModules)__webpack_require__.o(moreModules,moduleId)&&(__webpack_require__.m[moduleId]=moreModules[moduleId]);if(runtime)var result=runtime(__webpack_require__)}for(parentChunkLoadingFunction&&parentChunkLoadingFunction(data);i{var te=Object.create;var F=Object.defineProperty;var re=Object.getOwnPropertyDescriptor;var ne=Object.getOwnPropertyNames;var oe=Object.getPrototypeOf,ie=Object.prototype.hasOwnProperty;var x=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,s)=>(typeof require<"u"?require:t)[s]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var B=(e,t)=>()=>(e&&(t=e(e=0)),t);var ae=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var se=(e,t,s,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of ne(t))!ie.call(e,i)&&i!==s&&F(e,i,{get:()=>t[i],enumerable:!(o=re(t,i))||o.enumerable});return e};var le=(e,t,s)=>(s=e!=null?te(oe(e)):{},se(t||!e||!e.__esModule?F(s,"default",{value:e,enumerable:!0}):s,e));var d=B(()=>{});var m=B(()=>{});var p=B(()=>{});var j=ae(($,G)=>{d();m();p();(function(e){if(typeof $=="object"&&typeof G<"u")G.exports=e();else if(typeof define=="function"&&define.amd)define([],e);else{var t;typeof window<"u"||typeof window<"u"?t=window:typeof self<"u"?t=self:t=this,t.memoizerific=e()}})(function(){var e,t,s;return function o(i,g,l){function n(a,h){if(!g[a]){if(!i[a]){var c=typeof x=="function"&&x;if(!h&&c)return c(a,!0);if(r)return r(a,!0);var y=new Error("Cannot find module '"+a+"'");throw y.code="MODULE_NOT_FOUND",y}var f=g[a]={exports:{}};i[a][0].call(f.exports,function(b){var _=i[a][1][b];return n(_||b)},f,f.exports,o,i,g,l)}return g[a].exports}for(var r=typeof x=="function"&&x,u=0;u=0)return this.lastItem=this.list[r],this.list[r].val},l.prototype.set=function(n,r){var u;return this.lastItem&&this.isEqual(this.lastItem.key,n)?(this.lastItem.val=r,this):(u=this.indexOf(n),u>=0?(this.lastItem=this.list[u],this.list[u].val=r,this):(this.lastItem={key:n,val:r},this.list.push(this.lastItem),this.size++,this))},l.prototype.delete=function(n){var r;if(this.lastItem&&this.isEqual(this.lastItem.key,n)&&(this.lastItem=void 0),r=this.indexOf(n),r>=0)return this.size--,this.list.splice(r,1)[0]},l.prototype.has=function(n){var r;return this.lastItem&&this.isEqual(this.lastItem.key,n)?!0:(r=this.indexOf(n),r>=0?(this.lastItem=this.list[r],!0):!1)},l.prototype.forEach=function(n,r){var u;for(u=0;u0&&(R[k]={cacheItem:b,arg:arguments[k]},C?n(c,R):c.push(R),c.length>a&&r(c.shift())),f.wasMemoized=C,f.numArgs=k+1,A};return f.limit=a,f.wasMemoized=!1,f.cache=h,f.lru=c,f}};function n(a,h){var c=a.length,y=h.length,f,b,_;for(b=0;b=0&&(c=a[f],y=c.cacheItem.get(c.arg),!y||!y.size);f--)c.cacheItem.delete(c.arg)}function u(a,h){return a===h||a!==a&&h!==h}},{"map-or-similar":1}]},{},[3])(3)})});d();m();p();d();m();p();d();m();p();d();m();p();var v=__REACT__,{Children:Te,Component:Se,Fragment:w,Profiler:ke,PureComponent:Ie,StrictMode:Ee,Suspense:Ce,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:xe,cloneElement:Ae,createContext:Re,createElement:Be,createFactory:we,createRef:Le,forwardRef:Me,isValidElement:Pe,lazy:Ne,memo:L,useCallback:K,useContext:Ge,useDebugValue:ze,useEffect:De,useImperativeHandle:qe,useLayoutEffect:He,useMemo:Y,useReducer:Fe,useRef:Ke,useState:W,version:Ye}=__REACT__;d();m();p();var Ve=__STORYBOOK_API__,{ActiveTabs:Ze,Consumer:Je,ManagerContext:Qe,Provider:Xe,addons:M,combineParameters:et,controlOrMetaKey:tt,controlOrMetaSymbol:rt,eventMatchesShortcut:nt,eventToShortcut:ot,isMacLike:it,isShortcutTaken:at,keyToSymbol:st,merge:lt,mockChannel:ut,optionOrAltSymbol:ct,shortcutMatchesShortcut:ft,shortcutToHumanString:dt,types:U,useAddonState:mt,useArgTypes:pt,useArgs:ht,useChannel:gt,useGlobalTypes:bt,useGlobals:P,useParameter:N,useSharedState:yt,useStoryPrepared:_t,useStorybookApi:vt,useStorybookState:Ot}=__STORYBOOK_API__;var H=le(j());d();m();p();var Rt=__STORYBOOK_CLIENT_LOGGER__,{deprecate:Bt,logger:z,once:wt,pretty:Lt}=__STORYBOOK_CLIENT_LOGGER__;d();m();p();var zt=__STORYBOOK_COMPONENTS__,{A:Dt,ActionBar:qt,AddonPanel:Ht,Badge:Ft,Bar:Kt,Blockquote:Yt,Button:Wt,ClipboardCode:Ut,Code:$t,DL:jt,Div:Vt,DocumentWrapper:Zt,ErrorFormatter:Jt,FlexBar:Qt,Form:Xt,H1:er,H2:tr,H3:rr,H4:nr,H5:or,H6:ir,HR:ar,IconButton:D,IconButtonSkeleton:sr,Icons:q,Img:lr,LI:ur,Link:cr,ListItem:fr,Loader:dr,OL:mr,P:pr,Placeholder:hr,Pre:gr,ResetWrapper:br,ScrollArea:yr,Separator:_r,Spaced:vr,Span:Or,StorybookIcon:Tr,StorybookLogo:Sr,Symbols:kr,SyntaxHighlighter:Ir,TT:Er,TabBar:Cr,TabButton:xr,TabWrapper:Ar,Table:Rr,Tabs:Br,TabsState:wr,TooltipLinkList:V,TooltipMessage:Lr,TooltipNote:Mr,UL:Pr,WithTooltip:Z,WithTooltipPure:Nr,Zoom:Gr,codeCommon:zr,components:Dr,createCopyToClipboardFunction:qr,getStoryHref:Hr,icons:Fr,interleaveSeparators:Kr,nameSpaceClassNames:Yr,resetComponents:Wr,withReset:Ur}=__STORYBOOK_COMPONENTS__;d();m();p();var Jr=__STORYBOOK_THEMING__,{CacheProvider:Qr,ClassNames:Xr,Global:en,ThemeProvider:tn,background:rn,color:nn,convert:on,create:an,createCache:sn,createGlobal:ln,createReset:un,css:cn,darken:fn,ensure:dn,ignoreSsrWarning:mn,isPropValid:pn,jsx:hn,keyframes:gn,lighten:bn,styled:J,themes:yn,typography:_n,useTheme:vn,withTheme:On}=__STORYBOOK_THEMING__;d();m();p();var En=(()=>{let e;return typeof window<"u"?e=window:typeof globalThis<"u"?e=globalThis:typeof window<"u"?e=window:typeof self<"u"?e=self:e={},e})();d();m();p();function Q(e){for(var t=[],s=1;s({borderRadius:"1rem",display:"block",height:"1rem",width:"1rem",background:e}),({theme:e})=>({boxShadow:`${e.appBorderColor} 0 0 0 1px inset`})),ce=(e,t=[],s)=>{if(e==="transparent")return"transparent";if(t.find(i=>i.value===e))return e;let o=t.find(i=>i.name===s);if(o)return o.value;if(s){let i=t.map(g=>g.name).join(", ");z.warn(Q` 8 | Backgrounds Addon: could not find the default color "${s}". 9 | These are the available colors for your story based on your configuration: 10 | ${i}. 11 | `)}return"transparent"},ee=(0,H.default)(1e3)((e,t,s,o,i,g)=>({id:e||t,title:t,onClick:()=>{i({selected:s,name:t})},value:s,right:o?v.createElement(ue,{background:s}):void 0,active:g})),fe=(0,H.default)(10)((e,t,s)=>{let o=e.map(({name:i,value:g})=>ee(null,i,g,!0,s,g===t));return t!=="transparent"?[ee("reset","Clear background","transparent",null,s,!1),...o]:o}),de={default:null,disable:!0,values:[]},me=L(function(){let e=N(E,de),[t,s]=W(!1),[o,i]=P(),g=o[E]?.value,l=Y(()=>ce(g,e.values,e.default),[e,g]);Array.isArray(e)&&z.warn("Addon Backgrounds api has changed in Storybook 6.0. Please refer to the migration guide: https://github.com/storybookjs/storybook/blob/next/MIGRATION.md");let n=K(r=>{i({[E]:{...o[E],value:r}})},[e,o,i]);return e.disable?null:v.createElement(w,null,v.createElement(Z,{placement:"top",closeOnOutsideClick:!0,tooltip:({onHide:r})=>v.createElement(V,{links:fe(e.values,l,({selected:u})=>{l!==u&&n(u),r()})}),onVisibleChange:s},v.createElement(D,{key:"background",title:"Change the background of the preview",active:l!=="transparent"||t},v.createElement(q,{icon:"photo"}))))}),pe=L(function(){let[e,t]=P(),{grid:s}=N(E,{grid:{disable:!1}});if(s?.disable)return null;let o=e[E]?.grid||!1;return v.createElement(D,{key:"background",active:o,title:"Apply a grid to the preview",onClick:()=>t({[E]:{...e[E],grid:!o}})},v.createElement(q,{icon:"grid"}))});M.register(X,()=>{M.add(X,{title:"Backgrounds",type:U.TOOL,match:({viewMode:e})=>!!(e&&e.match(/^(story|docs)$/)),render:()=>v.createElement(w,null,v.createElement(me,null),v.createElement(pe,null))})});})(); 12 | }catch(e){ console.error("[Storybook] One of your manager-entries failed: " + import.meta.url, e); } 13 | -------------------------------------------------------------------------------- /docs/sb-addons/essentials-backgrounds-3/manager-bundle.js.LEGAL.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ssbeefeater/react-typed/939f09ad76003baf8a5008eb8d5671c6445492fc/docs/sb-addons/essentials-backgrounds-3/manager-bundle.js.LEGAL.txt -------------------------------------------------------------------------------- /docs/sb-addons/essentials-controls-1/manager-bundle.js.LEGAL.txt: -------------------------------------------------------------------------------- 1 | Bundled license information: 2 | 3 | telejson/dist/index.mjs: 4 | /*! 5 | * isobject 6 | * 7 | * Copyright (c) 2014-2017, Jon Schlinkert. 8 | * Released under the MIT License. 9 | */ 10 | /** 11 | * @license 12 | * Lodash (Custom Build) 13 | * Build: `lodash modularize exports="es" -o ./` 14 | * Copyright OpenJS Foundation and other contributors 15 | * Released under MIT license 16 | * Based on Underscore.js 1.8.3 17 | * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors 18 | */ 19 | -------------------------------------------------------------------------------- /docs/sb-addons/essentials-measure-6/manager-bundle.js: -------------------------------------------------------------------------------- 1 | try{ 2 | (()=>{var r=__REACT__,{Children:A,Component:I,Fragment:R,Profiler:L,PureComponent:M,StrictMode:B,Suspense:P,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:x,cloneElement:v,createContext:H,createElement:N,createFactory:D,createRef:F,forwardRef:W,isValidElement:K,lazy:Y,memo:G,useCallback:m,useContext:w,useDebugValue:U,useEffect:p,useImperativeHandle:V,useLayoutEffect:q,useMemo:z,useReducer:Z,useRef:$,useState:j,version:J}=__REACT__;var oe=__STORYBOOK_API__,{ActiveTabs:re,Consumer:ae,ManagerContext:ne,Provider:se,addons:l,combineParameters:le,controlOrMetaKey:ue,controlOrMetaSymbol:ce,eventMatchesShortcut:ie,eventToShortcut:me,isMacLike:pe,isShortcutTaken:Se,keyToSymbol:_e,merge:de,mockChannel:Te,optionOrAltSymbol:be,shortcutMatchesShortcut:Oe,shortcutToHumanString:ye,types:S,useAddonState:Ce,useArgTypes:Ee,useArgs:he,useChannel:fe,useGlobalTypes:ge,useGlobals:_,useParameter:ke,useSharedState:Ae,useStoryPrepared:Ie,useStorybookApi:d,useStorybookState:Re}=__STORYBOOK_API__;var xe=__STORYBOOK_COMPONENTS__,{A:ve,ActionBar:He,AddonPanel:Ne,Badge:De,Bar:Fe,Blockquote:We,Button:Ke,ClipboardCode:Ye,Code:Ge,DL:we,Div:Ue,DocumentWrapper:Ve,ErrorFormatter:qe,FlexBar:ze,Form:Ze,H1:$e,H2:je,H3:Je,H4:Qe,H5:Xe,H6:et,HR:tt,IconButton:T,IconButtonSkeleton:ot,Icons:b,Img:rt,LI:at,Link:nt,ListItem:st,Loader:lt,OL:ut,P:ct,Placeholder:it,Pre:mt,ResetWrapper:pt,ScrollArea:St,Separator:_t,Spaced:dt,Span:Tt,StorybookIcon:bt,StorybookLogo:Ot,Symbols:yt,SyntaxHighlighter:Ct,TT:Et,TabBar:ht,TabButton:ft,TabWrapper:gt,Table:kt,Tabs:At,TabsState:It,TooltipLinkList:Rt,TooltipMessage:Lt,TooltipNote:Mt,UL:Bt,WithTooltip:Pt,WithTooltipPure:xt,Zoom:vt,codeCommon:Ht,components:Nt,createCopyToClipboardFunction:Dt,getStoryHref:Ft,icons:Wt,interleaveSeparators:Kt,nameSpaceClassNames:Yt,resetComponents:Gt,withReset:wt}=__STORYBOOK_COMPONENTS__;var u="storybook/measure-addon",O=`${u}/tool`,y=()=>{let[a,c]=_(),{measureEnabled:n}=a,i=d(),s=m(()=>c({measureEnabled:!n}),[c,n]);return p(()=>{i.setAddonShortcut(u,{label:"Toggle Measure [M]",defaultShortcut:["M"],actionName:"measure",showInMenu:!1,action:s})},[s,i]),r.createElement(T,{key:O,active:n,title:"Enable measure",onClick:s},r.createElement(b,{icon:"ruler"}))};l.register(u,()=>{l.add(O,{type:S.TOOL,title:"Measure",match:({viewMode:a})=>a==="story",render:()=>r.createElement(y,null)})});})(); 3 | }catch(e){ console.error("[Storybook] One of your manager-entries failed: " + import.meta.url, e); } 4 | -------------------------------------------------------------------------------- /docs/sb-addons/essentials-measure-6/manager-bundle.js.LEGAL.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ssbeefeater/react-typed/939f09ad76003baf8a5008eb8d5671c6445492fc/docs/sb-addons/essentials-measure-6/manager-bundle.js.LEGAL.txt -------------------------------------------------------------------------------- /docs/sb-addons/essentials-outline-7/manager-bundle.js: -------------------------------------------------------------------------------- 1 | try{ 2 | (()=>{var a=__REACT__,{Children:k,Component:I,Fragment:B,Profiler:L,PureComponent:P,StrictMode:v,Suspense:x,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:M,cloneElement:H,createContext:N,createElement:D,createFactory:F,createRef:K,forwardRef:W,isValidElement:Y,lazy:G,memo:i,useCallback:p,useContext:w,useDebugValue:U,useEffect:m,useImperativeHandle:V,useLayoutEffect:q,useMemo:z,useReducer:Z,useRef:$,useState:j,version:J}=__REACT__;var oe=__STORYBOOK_API__,{ActiveTabs:re,Consumer:ae,ManagerContext:ne,Provider:le,addons:s,combineParameters:se,controlOrMetaKey:ue,controlOrMetaSymbol:ce,eventMatchesShortcut:ie,eventToShortcut:pe,isMacLike:me,isShortcutTaken:Se,keyToSymbol:_e,merge:de,mockChannel:Te,optionOrAltSymbol:Oe,shortcutMatchesShortcut:be,shortcutToHumanString:ye,types:S,useAddonState:Ce,useArgTypes:he,useArgs:Ae,useChannel:fe,useGlobalTypes:Ee,useGlobals:_,useParameter:ge,useSharedState:Re,useStoryPrepared:ke,useStorybookApi:d,useStorybookState:Ie}=__STORYBOOK_API__;var xe=__STORYBOOK_COMPONENTS__,{A:Me,ActionBar:He,AddonPanel:Ne,Badge:De,Bar:Fe,Blockquote:Ke,Button:We,ClipboardCode:Ye,Code:Ge,DL:we,Div:Ue,DocumentWrapper:Ve,ErrorFormatter:qe,FlexBar:ze,Form:Ze,H1:$e,H2:je,H3:Je,H4:Qe,H5:Xe,H6:et,HR:tt,IconButton:T,IconButtonSkeleton:ot,Icons:O,Img:rt,LI:at,Link:nt,ListItem:lt,Loader:st,OL:ut,P:ct,Placeholder:it,Pre:pt,ResetWrapper:mt,ScrollArea:St,Separator:_t,Spaced:dt,Span:Tt,StorybookIcon:Ot,StorybookLogo:bt,Symbols:yt,SyntaxHighlighter:Ct,TT:ht,TabBar:At,TabButton:ft,TabWrapper:Et,Table:gt,Tabs:Rt,TabsState:kt,TooltipLinkList:It,TooltipMessage:Bt,TooltipNote:Lt,UL:Pt,WithTooltip:vt,WithTooltipPure:xt,Zoom:Mt,codeCommon:Ht,components:Nt,createCopyToClipboardFunction:Dt,getStoryHref:Ft,icons:Kt,interleaveSeparators:Wt,nameSpaceClassNames:Yt,resetComponents:Gt,withReset:wt}=__STORYBOOK_COMPONENTS__;var u="storybook/outline",b="outline",C=i(function(){let[r,y]=_(),c=d(),n=[!0,"true"].includes(r[b]),l=p(()=>y({[b]:!n}),[n]);return m(()=>{c.setAddonShortcut(u,{label:"Toggle Outline [O]",defaultShortcut:["O"],actionName:"outline",showInMenu:!1,action:l})},[l,c]),a.createElement(T,{key:"outline",active:n,title:"Apply outlines to the preview",onClick:l},a.createElement(O,{icon:"outline"}))});s.register(u,()=>{s.add(u,{title:"Outline",type:S.TOOL,match:({viewMode:r})=>!!(r&&r.match(/^(story|docs)$/)),render:()=>a.createElement(C,null)})});})(); 3 | }catch(e){ console.error("[Storybook] One of your manager-entries failed: " + import.meta.url, e); } 4 | -------------------------------------------------------------------------------- /docs/sb-addons/essentials-outline-7/manager-bundle.js.LEGAL.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ssbeefeater/react-typed/939f09ad76003baf8a5008eb8d5671c6445492fc/docs/sb-addons/essentials-outline-7/manager-bundle.js.LEGAL.txt -------------------------------------------------------------------------------- /docs/sb-addons/essentials-toolbars-5/manager-bundle.js: -------------------------------------------------------------------------------- 1 | try{ 2 | (()=>{var l=__REACT__,{Children:le,Component:ne,Fragment:ie,Profiler:se,PureComponent:ce,StrictMode:ue,Suspense:me,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:pe,cloneElement:de,createContext:be,createElement:Se,createFactory:Te,createRef:ye,forwardRef:_e,isValidElement:fe,lazy:Ce,memo:ve,useCallback:v,useContext:Ie,useDebugValue:Oe,useEffect:E,useImperativeHandle:xe,useLayoutEffect:Ee,useMemo:ge,useReducer:he,useRef:L,useState:R,version:ke}=__REACT__;var Pe=__STORYBOOK_API__,{ActiveTabs:Me,Consumer:Ne,ManagerContext:we,Provider:He,addons:g,combineParameters:Ve,controlOrMetaKey:De,controlOrMetaSymbol:Fe,eventMatchesShortcut:Ge,eventToShortcut:We,isMacLike:Ke,isShortcutTaken:Ye,keyToSymbol:$e,merge:ze,mockChannel:Ue,optionOrAltSymbol:je,shortcutMatchesShortcut:qe,shortcutToHumanString:Ze,types:B,useAddonState:Je,useArgTypes:Qe,useArgs:Xe,useChannel:et,useGlobalTypes:P,useGlobals:h,useParameter:tt,useSharedState:ot,useStoryPrepared:rt,useStorybookApi:M,useStorybookState:at}=__STORYBOOK_API__;var ct=__STORYBOOK_COMPONENTS__,{A:ut,ActionBar:mt,AddonPanel:pt,Badge:dt,Bar:bt,Blockquote:St,Button:Tt,ClipboardCode:yt,Code:_t,DL:ft,Div:Ct,DocumentWrapper:vt,ErrorFormatter:It,FlexBar:Ot,Form:xt,H1:Et,H2:gt,H3:ht,H4:kt,H5:At,H6:Lt,HR:Rt,IconButton:N,IconButtonSkeleton:Bt,Icons:k,Img:Pt,LI:Mt,Link:Nt,ListItem:wt,Loader:Ht,OL:Vt,P:Dt,Placeholder:Ft,Pre:Gt,ResetWrapper:Wt,ScrollArea:Kt,Separator:w,Spaced:Yt,Span:$t,StorybookIcon:zt,StorybookLogo:Ut,Symbols:jt,SyntaxHighlighter:qt,TT:Zt,TabBar:Jt,TabButton:Qt,TabWrapper:Xt,Table:eo,Tabs:to,TabsState:oo,TooltipLinkList:H,TooltipMessage:ro,TooltipNote:ao,UL:lo,WithTooltip:V,WithTooltipPure:no,Zoom:io,codeCommon:so,components:co,createCopyToClipboardFunction:uo,getStoryHref:mo,icons:po,interleaveSeparators:bo,nameSpaceClassNames:So,resetComponents:To,withReset:yo}=__STORYBOOK_COMPONENTS__;var G=({active:o,title:t,icon:e,description:r,onClick:a})=>l.createElement(N,{active:o,title:r,onClick:a},e&&l.createElement(k,{icon:e}),t?`\xA0${t}`:null),W=["reset"],K=o=>o.filter(t=>!W.includes(t.type)).map(t=>t.value),b="addon-toolbars",Y=async(o,t,e)=>{e&&e.next&&await o.setAddonShortcut(b,{label:e.next.label,defaultShortcut:e.next.keys,actionName:`${t}:next`,action:e.next.action}),e&&e.previous&&await o.setAddonShortcut(b,{label:e.previous.label,defaultShortcut:e.previous.keys,actionName:`${t}:previous`,action:e.previous.action}),e&&e.reset&&await o.setAddonShortcut(b,{label:e.reset.label,defaultShortcut:e.reset.keys,actionName:`${t}:reset`,action:e.reset.action})},$=o=>t=>{let{id:e,toolbar:{items:r,shortcuts:a}}=t,d=M(),[S,i]=h(),n=L([]),s=S[e],I=v(()=>{i({[e]:""})},[i]),O=v(()=>{let p=n.current,c=p.indexOf(s),m=c===p.length-1?0:c+1,T=n.current[m];i({[e]:T})},[n,s,i]),u=v(()=>{let p=n.current,c=p.indexOf(s),m=c>-1?c:0,T=m===0?p.length-1:m-1,y=n.current[T];i({[e]:y})},[n,s,i]);return E(()=>{a&&Y(d,e,{next:{...a.next,action:O},previous:{...a.previous,action:u},reset:{...a.reset,action:I}})},[d,e,a,O,u,I]),E(()=>{n.current=K(r)},[]),l.createElement(o,{cycleValues:n.current,...t})},D=({currentValue:o,items:t})=>o!=null&&t.find(e=>e.value===o&&e.type!=="reset"),z=({currentValue:o,items:t})=>{let e=D({currentValue:o,items:t});if(e)return e.icon},U=({currentValue:o,items:t})=>{let e=D({currentValue:o,items:t});if(e)return e.title},j=({left:o,right:t,title:e,value:r,icon:a,hideIcon:d,onClick:S,currentValue:i})=>{let n=a&&l.createElement(k,{style:{opacity:1},icon:a}),s={id:r??"_reset",active:i===r,right:t,title:e,left:o,onClick:S};return a&&!d&&(s.left=n),s},q=$(({id:o,name:t,description:e,toolbar:{icon:r,items:a,title:d,preventDynamicIcon:S,dynamicTitle:i}})=>{let[n,s]=h(),[I,O]=R(!1),u=n[o],p=!!u,c=r,m=d;S||(c=z({currentValue:u,items:a})||c),i&&(m=U({currentValue:u,items:a})||m),!m&&!c&&console.warn(`Toolbar '${t}' has no title or icon`);let T=v(y=>{s({[o]:y})},[u,s]);return l.createElement(V,{placement:"top",tooltip:({onHide:y})=>{let F=a.filter(({type:x})=>{let A=!0;return x==="reset"&&!u&&(A=!1),A}).map(x=>j({...x,currentValue:u,onClick:()=>{T(x.value),y()}}));return l.createElement(H,{links:F})},closeOnOutsideClick:!0,onVisibleChange:O},l.createElement(G,{active:I||p,description:e||"",icon:c,title:m||""}))}),Z={type:"item",value:""},J=(o,t)=>({...t,name:t.name||o,description:t.description||o,toolbar:{...t.toolbar,items:t.toolbar.items.map(e=>{let r=typeof e=="string"?{value:e,title:e}:e;return r.type==="reset"&&t.toolbar.icon&&(r.icon=t.toolbar.icon,r.hideIcon=!0),{...Z,...r}})}}),Q=()=>{let o=P(),t=Object.keys(o).filter(e=>!!o[e].toolbar);return t.length?l.createElement(l.Fragment,null,l.createElement(w,null),t.map(e=>{let r=J(e,o[e]);return l.createElement(q,{key:e,id:e,...r})})):null};g.register(b,()=>g.add(b,{title:b,type:B.TOOL,match:()=>!0,render:()=>l.createElement(Q,null)}));})(); 3 | }catch(e){ console.error("[Storybook] One of your manager-entries failed: " + import.meta.url, e); } 4 | -------------------------------------------------------------------------------- /docs/sb-addons/essentials-toolbars-5/manager-bundle.js.LEGAL.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ssbeefeater/react-typed/939f09ad76003baf8a5008eb8d5671c6445492fc/docs/sb-addons/essentials-toolbars-5/manager-bundle.js.LEGAL.txt -------------------------------------------------------------------------------- /docs/sb-addons/essentials-viewport-4/manager-bundle.js: -------------------------------------------------------------------------------- 1 | try{ 2 | (()=>{var oe=Object.create;var H=Object.defineProperty;var ne=Object.getOwnPropertyDescriptor;var ae=Object.getOwnPropertyNames;var se=Object.getPrototypeOf,le=Object.prototype.hasOwnProperty;var R=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,o)=>(typeof require<"u"?require:t)[o]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var P=(e,t)=>()=>(e&&(t=e(e=0)),t);var ue=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var ce=(e,t,o,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of ae(t))!le.call(e,u)&&u!==o&&H(e,u,{get:()=>t[u],enumerable:!(n=ne(t,u))||n.enumerable});return e};var de=(e,t,o)=>(o=e!=null?oe(se(e)):{},ce(t||!e||!e.__esModule?H(o,"default",{value:e,enumerable:!0}):o,e));var h=P(()=>{});var g=P(()=>{});var y=P(()=>{});var J=ue((Z,B)=>{h();g();y();(function(e){if(typeof Z=="object"&&typeof B<"u")B.exports=e();else if(typeof define=="function"&&define.amd)define([],e);else{var t;typeof window<"u"||typeof window<"u"?t=window:typeof self<"u"?t=self:t=this,t.memoizerific=e()}})(function(){var e,t,o;return function n(u,f,c){function i(a,b){if(!f[a]){if(!u[a]){var d=typeof R=="function"&&R;if(!b&&d)return d(a,!0);if(r)return r(a,!0);var S=new Error("Cannot find module '"+a+"'");throw S.code="MODULE_NOT_FOUND",S}var l=f[a]={exports:{}};u[a][0].call(l.exports,function(s){var p=u[a][1][s];return i(p||s)},l,l.exports,n,u,f,c)}return f[a].exports}for(var r=typeof R=="function"&&R,m=0;m=0)return this.lastItem=this.list[r],this.list[r].val},c.prototype.set=function(i,r){var m;return this.lastItem&&this.isEqual(this.lastItem.key,i)?(this.lastItem.val=r,this):(m=this.indexOf(i),m>=0?(this.lastItem=this.list[m],this.list[m].val=r,this):(this.lastItem={key:i,val:r},this.list.push(this.lastItem),this.size++,this))},c.prototype.delete=function(i){var r;if(this.lastItem&&this.isEqual(this.lastItem.key,i)&&(this.lastItem=void 0),r=this.indexOf(i),r>=0)return this.size--,this.list.splice(r,1)[0]},c.prototype.has=function(i){var r;return this.lastItem&&this.isEqual(this.lastItem.key,i)?!0:(r=this.indexOf(i),r>=0?(this.lastItem=this.list[r],!0):!1)},c.prototype.forEach=function(i,r){var m;for(m=0;m0&&(L[x]={cacheItem:s,arg:arguments[x]},E?i(d,L):d.push(L),d.length>a&&r(d.shift())),l.wasMemoized=E,l.numArgs=x+1,A};return l.limit=a,l.wasMemoized=!1,l.cache=b,l.lru=d,l}};function i(a,b){var d=a.length,S=b.length,l,s,p;for(s=0;s=0&&(d=a[l],S=d.cacheItem.get(d.arg),!S||!S.size);l--)d.cacheItem.delete(d.arg)}function m(a,b){return a===b||a!==a&&b!==b}},{"map-or-similar":1}]},{},[3])(3)})});h();g();y();h();g();y();h();g();y();h();g();y();var w=__REACT__,{Children:Ve,Component:Be,Fragment:D,Profiler:Ne,PureComponent:ze,StrictMode:qe,Suspense:He,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:De,cloneElement:We,createContext:Fe,createElement:W,createFactory:Ye,createRef:je,forwardRef:Ge,isValidElement:Ue,lazy:$e,memo:F,useCallback:Ke,useContext:Ze,useDebugValue:Je,useEffect:M,useImperativeHandle:Qe,useLayoutEffect:Xe,useMemo:et,useReducer:tt,useRef:Y,useState:j,version:rt}=__REACT__;h();g();y();var at=__STORYBOOK_API__,{ActiveTabs:st,Consumer:lt,ManagerContext:ut,Provider:ct,addons:V,combineParameters:dt,controlOrMetaKey:pt,controlOrMetaSymbol:ft,eventMatchesShortcut:mt,eventToShortcut:ht,isMacLike:gt,isShortcutTaken:yt,keyToSymbol:bt,merge:St,mockChannel:wt,optionOrAltSymbol:xt,shortcutMatchesShortcut:_t,shortcutToHumanString:vt,types:G,useAddonState:U,useArgTypes:It,useArgs:Tt,useChannel:Ot,useGlobalTypes:Et,useGlobals:Ct,useParameter:$,useSharedState:Rt,useStoryPrepared:kt,useStorybookApi:K,useStorybookState:At}=__STORYBOOK_API__;var q=de(J());h();g();y();var Ht=__STORYBOOK_THEMING__,{CacheProvider:Dt,ClassNames:Wt,Global:Q,ThemeProvider:Ft,background:Yt,color:jt,convert:Gt,create:Ut,createCache:$t,createGlobal:Kt,createReset:Zt,css:Jt,darken:Qt,ensure:Xt,ignoreSsrWarning:er,isPropValid:tr,jsx:rr,keyframes:ir,lighten:or,styled:k,themes:nr,typography:ar,useTheme:sr,withTheme:X}=__STORYBOOK_THEMING__;h();g();y();var pr=__STORYBOOK_COMPONENTS__,{A:fr,ActionBar:mr,AddonPanel:hr,Badge:gr,Bar:yr,Blockquote:br,Button:Sr,ClipboardCode:wr,Code:xr,DL:_r,Div:vr,DocumentWrapper:Ir,ErrorFormatter:Tr,FlexBar:Or,Form:Er,H1:Cr,H2:Rr,H3:kr,H4:Ar,H5:Lr,H6:Mr,HR:Pr,IconButton:N,IconButtonSkeleton:Vr,Icons:z,Img:Br,LI:Nr,Link:zr,ListItem:qr,Loader:Hr,OL:Dr,P:Wr,Placeholder:Fr,Pre:Yr,ResetWrapper:jr,ScrollArea:Gr,Separator:Ur,Spaced:$r,Span:Kr,StorybookIcon:Zr,StorybookLogo:Jr,Symbols:Qr,SyntaxHighlighter:Xr,TT:ei,TabBar:ti,TabButton:ri,TabWrapper:ii,Table:oi,Tabs:ni,TabsState:ai,TooltipLinkList:ee,TooltipMessage:si,TooltipNote:li,UL:ui,WithTooltip:te,WithTooltipPure:ci,Zoom:di,codeCommon:pi,components:fi,createCopyToClipboardFunction:mi,getStoryHref:hi,icons:gi,interleaveSeparators:yi,nameSpaceClassNames:bi,resetComponents:Si,withReset:wi}=__STORYBOOK_COMPONENTS__;var _="storybook/viewport",fe="viewport",ie=(e,t)=>e.indexOf(t),me=(e,t)=>{let o=ie(e,t);return o===e.length-1?e[0]:e[o+1]},he=(e,t)=>{let o=ie(e,t);return o<1?e[e.length-1]:e[o-1]},ge=async(e,t,o)=>{await e.setAddonShortcut(_,{label:"Previous viewport",defaultShortcut:["shift","V"],actionName:"previous",action:()=>{let{selected:n,isRotated:u}=e.getAddonState(_);t({selected:he(o,n),isRotated:u})}}),await e.setAddonShortcut(_,{label:"Next viewport",defaultShortcut:["V"],actionName:"next",action:()=>{let{selected:n,isRotated:u}=e.getAddonState(_);t({selected:me(o,n),isRotated:u})}}),await e.setAddonShortcut(_,{label:"Reset viewport",defaultShortcut:["alt","V"],actionName:"reset",action:()=>{let{isRotated:n}=e.getAddonState(_);t({selected:"reset",isRotated:n})}})},ye={mobile1:{name:"Small mobile",styles:{height:"568px",width:"320px"},type:"mobile"},mobile2:{name:"Large mobile",styles:{height:"896px",width:"414px"},type:"mobile"},tablet:{name:"Tablet",styles:{height:"1112px",width:"834px"},type:"tablet"}},be=(0,q.default)(50)(e=>[...Se,...Object.entries(e).map(([t,{name:o,...n}])=>({...n,id:t,title:o}))]),C={id:"reset",title:"Reset viewport",styles:null,type:"other"},Se=[C],we=(0,q.default)(50)((e,t,o,n,u)=>e.filter(f=>f.id!==C.id||t.id!==f.id).map(f=>({...f,onClick:()=>{o({...n,selected:f.id}),u()}}))),xe="storybook-preview-wrapper",_e=({width:e,height:t,...o})=>({...o,height:e,width:t}),ve=k.div(()=>({display:"inline-flex"})),re=k.div(({theme:e})=>({display:"inline-block",textDecoration:"none",padding:10,fontWeight:e.typography.weight.bold,fontSize:e.typography.size.s2-1,lineHeight:"1",height:40,border:"none",borderTop:"3px solid transparent",borderBottom:"3px solid transparent",background:"transparent"})),Ie=k(N)(()=>({display:"inline-flex",alignItems:"center"})),Te=k.div(({theme:e})=>({fontSize:e.typography.size.s2-1,marginLeft:10})),Oe=(e,t,o)=>{if(t===null)return;let n=typeof t=="function"?t(e):t;return o?_e(n):n},Ee=F(X(({theme:e})=>{let{viewports:t=ye,defaultOrientation:o="portrait",defaultViewport:n=C.id,disable:u}=$(fe,{}),[f,c]=U(_,{selected:n,isRotated:o==="landscape"}),i=be(t),r=K(),[m,a]=j(!1);i.find(p=>p.id===n)||console.warn(`Cannot find "defaultViewport" of "${n}" in addon-viewport configs, please check the "viewports" setting in the configuration.`),M(()=>{ge(r,c,Object.keys(t))},[t]),M(()=>{c({selected:n||(f.selected&&t[f.selected]?f.selected:C.id),isRotated:o==="landscape"})},[o,n]);let{selected:b,isRotated:d}=f,S=i.find(p=>p.id===b)||i.find(p=>p.id===n)||i.find(p=>p.default)||C,l=Y(),s=Oe(l.current,S.styles,d);return M(()=>{l.current=s},[S]),u||Object.entries(t).length===0?null:w.createElement(D,null,w.createElement(te,{placement:"top",tooltip:({onHide:p})=>w.createElement(ee,{links:we(i,S,c,f,p)}),closeOnOutsideClick:!0,onVisibleChange:a},w.createElement(Ie,{key:"viewport",title:"Change the size of the preview",active:m||!!s,onDoubleClick:()=>{c({...f,selected:C.id})}},w.createElement(z,{icon:"grow"}),s?w.createElement(Te,null,d?`${S.title} (L)`:`${S.title} (P)`):null)),s?w.createElement(ve,null,w.createElement(Q,{styles:{'iframe[data-is-storybook="true"]':{margin:"auto",transition:"none",position:"relative",border:"1px solid black",boxShadow:"0 0 100px 100vw rgba(0,0,0,0.5)",...s},[`#${xe}`]:{padding:e.layoutMargin,alignContent:"center",alignItems:"center",justifyContent:"center",justifyItems:"center",overflow:"auto",display:"grid",gridTemplateColumns:"100%",gridTemplateRows:"100%"}}}),w.createElement(re,{title:"Viewport width"},s.width.replace("px","")),w.createElement(N,{key:"viewport-rotate",title:"Rotate viewport",onClick:()=>{c({...f,isRotated:!d})}},w.createElement(z,{icon:"transfer"})),w.createElement(re,{title:"Viewport height"},s.height.replace("px",""))):null)}));V.register(_,()=>{V.add(_,{title:"viewport / media-queries",type:G.TOOL,match:({viewMode:e})=>e==="story",render:()=>W(Ee,null)})});})(); 3 | }catch(e){ console.error("[Storybook] One of your manager-entries failed: " + import.meta.url, e); } 4 | -------------------------------------------------------------------------------- /docs/sb-addons/essentials-viewport-4/manager-bundle.js.LEGAL.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ssbeefeater/react-typed/939f09ad76003baf8a5008eb8d5671c6445492fc/docs/sb-addons/essentials-viewport-4/manager-bundle.js.LEGAL.txt -------------------------------------------------------------------------------- /docs/sb-addons/interactions-9/manager-bundle.js.LEGAL.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ssbeefeater/react-typed/939f09ad76003baf8a5008eb8d5671c6445492fc/docs/sb-addons/interactions-9/manager-bundle.js.LEGAL.txt -------------------------------------------------------------------------------- /docs/sb-addons/links-0/manager-bundle.js: -------------------------------------------------------------------------------- 1 | try{ 2 | (()=>{var _=__STORYBOOK_API__,{ActiveTabs:h,Consumer:A,ManagerContext:E,Provider:b,addons:a,combineParameters:O,controlOrMetaKey:k,controlOrMetaSymbol:p,eventMatchesShortcut:v,eventToShortcut:g,isMacLike:I,isShortcutTaken:C,keyToSymbol:M,merge:P,mockChannel:R,optionOrAltSymbol:f,shortcutMatchesShortcut:x,shortcutToHumanString:D,types:G,useAddonState:K,useArgTypes:V,useArgs:$,useChannel:B,useGlobalTypes:N,useGlobals:Q,useParameter:U,useSharedState:Y,useStoryPrepared:q,useStorybookApi:H,useStorybookState:L}=__STORYBOOK_API__;var e="storybook/links",n={NAVIGATE:`${e}/navigate`,REQUEST:`${e}/request`,RECEIVE:`${e}/receive`};a.register(e,t=>{t.on(n.REQUEST,({kind:u,name:S})=>{let c=t.storyId(u,S);t.emit(n.RECEIVE,c)})});})(); 3 | }catch(e){ console.error("[Storybook] One of your manager-entries failed: " + import.meta.url, e); } 4 | -------------------------------------------------------------------------------- /docs/sb-addons/links-0/manager-bundle.js.LEGAL.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ssbeefeater/react-typed/939f09ad76003baf8a5008eb8d5671c6445492fc/docs/sb-addons/links-0/manager-bundle.js.LEGAL.txt -------------------------------------------------------------------------------- /docs/sb-addons/onboarding-8/manager-bundle.js.LEGAL.txt: -------------------------------------------------------------------------------- 1 | Bundled license information: 2 | 3 | @storybook/addon-onboarding/dist/manager.mjs: 4 | /*! Bundled license information: 5 | 6 | exenv/index.js: 7 | (*! 8 | Copyright (c) 2015 Jed Watson. 9 | Based on code that is Copyright 2013-2015, Facebook, Inc. 10 | All rights reserved. 11 | *) 12 | 13 | react-is/cjs/react-is.production.min.js: 14 | (** @license React v16.13.1 15 | * react-is.production.min.js 16 | * 17 | * Copyright (c) Facebook, Inc. and its affiliates. 18 | * 19 | * This source code is licensed under the MIT license found in the 20 | * LICENSE file in the root directory of this source tree. 21 | *) 22 | 23 | popper.js/dist/esm/popper.js: 24 | (**! 25 | * @fileOverview Kickass library to create and place poppers near their reference elements. 26 | * @version 1.16.1 27 | * @license 28 | * Copyright (c) 2016 Federico Zivolo and contributors 29 | * 30 | * Permission is hereby granted, free of charge, to any person obtaining a copy 31 | * of this software and associated documentation files (the "Software"), to deal 32 | * in the Software without restriction, including without limitation the rights 33 | * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 34 | * copies of the Software, and to permit persons to whom the Software is 35 | * furnished to do so, subject to the following conditions: 36 | * 37 | * The above copyright notice and this permission notice shall be included in all 38 | * copies or substantial portions of the Software. 39 | * 40 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 41 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 42 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 43 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 44 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 45 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 46 | * SOFTWARE. 47 | *) 48 | */ 49 | -------------------------------------------------------------------------------- /docs/sb-common-assets/fonts.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'Nunito Sans'; 3 | font-style: normal; 4 | font-weight: 400; 5 | font-display: swap; 6 | src: url('./nunito-sans-regular.woff2') format('woff2'); 7 | } 8 | 9 | @font-face { 10 | font-family: 'Nunito Sans'; 11 | font-style: italic; 12 | font-weight: 400; 13 | font-display: swap; 14 | src: url('./nunito-sans-italic.woff2') format('woff2'); 15 | } 16 | 17 | @font-face { 18 | font-family: 'Nunito Sans'; 19 | font-style: normal; 20 | font-weight: 700; 21 | font-display: swap; 22 | src: url('./nunito-sans-bold.woff2') format('woff2'); 23 | } 24 | 25 | @font-face { 26 | font-family: 'Nunito Sans'; 27 | font-style: italic; 28 | font-weight: 700; 29 | font-display: swap; 30 | src: url('./nunito-sans-bold-italic.woff2') format('woff2'); 31 | } 32 | -------------------------------------------------------------------------------- /docs/sb-common-assets/nunito-sans-bold-italic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ssbeefeater/react-typed/939f09ad76003baf8a5008eb8d5671c6445492fc/docs/sb-common-assets/nunito-sans-bold-italic.woff2 -------------------------------------------------------------------------------- /docs/sb-common-assets/nunito-sans-bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ssbeefeater/react-typed/939f09ad76003baf8a5008eb8d5671c6445492fc/docs/sb-common-assets/nunito-sans-bold.woff2 -------------------------------------------------------------------------------- /docs/sb-common-assets/nunito-sans-italic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ssbeefeater/react-typed/939f09ad76003baf8a5008eb8d5671c6445492fc/docs/sb-common-assets/nunito-sans-italic.woff2 -------------------------------------------------------------------------------- /docs/sb-common-assets/nunito-sans-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ssbeefeater/react-typed/939f09ad76003baf8a5008eb8d5671c6445492fc/docs/sb-common-assets/nunito-sans-regular.woff2 -------------------------------------------------------------------------------- /docs/sb-manager/WithTooltip-V3YHNWJZ-LVYLGZW2.js: -------------------------------------------------------------------------------- 1 | import{WithToolTipState,WithTooltipPure}from"./chunk-NGTUFCUO.js";import"./chunk-INSKDKQB.js";import"./chunk-ZEU7PDD3.js";export{WithToolTipState,WithToolTipState as WithTooltip,WithTooltipPure}; 2 | -------------------------------------------------------------------------------- /docs/sb-manager/chunk-ZEU7PDD3.js: -------------------------------------------------------------------------------- 1 | var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __require=(x=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(x,{get:(a,b)=>(typeof require<"u"?require:a)[b]}):x)(function(x){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+x+'" is not supported')});var __esm=(fn,res)=>function(){return fn&&(res=(0,fn[__getOwnPropNames(fn)[0]])(fn=0)),res};var __commonJS=(cb,mod)=>function(){return mod||(0,cb[__getOwnPropNames(cb)[0]])((mod={exports:{}}).exports,mod),mod.exports};var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var require_memoizerific=__commonJS({"../../node_modules/memoizerific/memoizerific.js"(exports,module){(function(f){if(typeof exports=="object"&&typeof module<"u")module.exports=f();else if(typeof define=="function"&&define.amd)define([],f);else{var g;typeof window<"u"?g=window:typeof global<"u"?g=global:typeof self<"u"?g=self:g=this,g.memoizerific=f()}})(function(){var define2,module2,exports2;return function e(t,n,r){function s(o2,u){if(!n[o2]){if(!t[o2]){var a=typeof __require=="function"&&__require;if(!u&&a)return a(o2,!0);if(i)return i(o2,!0);var f=new Error("Cannot find module '"+o2+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o2]={exports:{}};t[o2][0].call(l.exports,function(e2){var n2=t[o2][1][e2];return s(n2||e2)},l,l.exports,e,t,n,r)}return n[o2].exports}for(var i=typeof __require=="function"&&__require,o=0;o=0)return this.lastItem=this.list[index],this.list[index].val},Similar.prototype.set=function(key,val){var index;return this.lastItem&&this.isEqual(this.lastItem.key,key)?(this.lastItem.val=val,this):(index=this.indexOf(key),index>=0?(this.lastItem=this.list[index],this.list[index].val=val,this):(this.lastItem={key,val},this.list.push(this.lastItem),this.size++,this))},Similar.prototype.delete=function(key){var index;if(this.lastItem&&this.isEqual(this.lastItem.key,key)&&(this.lastItem=void 0),index=this.indexOf(key),index>=0)return this.size--,this.list.splice(index,1)[0]},Similar.prototype.has=function(key){var index;return this.lastItem&&this.isEqual(this.lastItem.key,key)?!0:(index=this.indexOf(key),index>=0?(this.lastItem=this.list[index],!0):!1)},Similar.prototype.forEach=function(callback,thisArg){var i;for(i=0;i0&&(lruPath[argsLengthMinusOne]={cacheItem:currentCache,arg:arguments[argsLengthMinusOne]},isMemoized?moveToMostRecentLru(lru,lruPath):lru.push(lruPath),lru.length>limit&&removeCachedResult(lru.shift())),memoizerific.wasMemoized=isMemoized,memoizerific.numArgs=argsLengthMinusOne+1,fnResult};return memoizerific.limit=limit,memoizerific.wasMemoized=!1,memoizerific.cache=cache,memoizerific.lru=lru,memoizerific}};function moveToMostRecentLru(lru,lruPath){var lruLen=lru.length,lruPathLen=lruPath.length,isMatch,i,ii;for(i=0;i=0&&(currentLru=removedLru[i],tmp=currentLru.cacheItem.get(currentLru.arg),!tmp||!tmp.size);i--)currentLru.cacheItem.delete(currentLru.arg)}function isEqual(val1,val2){return val1===val2||val1!==val1&&val2!==val2}},{"map-or-similar":1}]},{},[3])(3)})}});var __create2=Object.create,__defProp2=Object.defineProperty,__getOwnPropDesc2=Object.getOwnPropertyDescriptor,__getOwnPropNames2=Object.getOwnPropertyNames,__getProtoOf2=Object.getPrototypeOf,__hasOwnProp2=Object.prototype.hasOwnProperty,__commonJS2=(cb,mod)=>function(){return mod||(0,cb[__getOwnPropNames2(cb)[0]])((mod={exports:{}}).exports,mod),mod.exports},__copyProps2=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames2(from))!__hasOwnProp2.call(to,key)&&key!==except&&__defProp2(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc2(from,key))||desc.enumerable});return to},__toESM2=(mod,isNodeMode,target)=>(target=mod!=null?__create2(__getProtoOf2(mod)):{},__copyProps2(isNodeMode||!mod||!mod.__esModule?__defProp2(target,"default",{value:mod,enumerable:!0}):target,mod));export{__esm,__commonJS,__export,__toESM,__toCommonJS,require_memoizerific,__commonJS2,__toESM2}; 2 | -------------------------------------------------------------------------------- /docs/sb-manager/globals-module-info.js: -------------------------------------------------------------------------------- 1 | var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var globals_module_info_exports={};__export(globals_module_info_exports,{globalsModuleInfoMap:()=>globalsModuleInfoMap});module.exports=__toCommonJS(globals_module_info_exports);var exports_default={react:["Children","Component","Fragment","Profiler","PureComponent","StrictMode","Suspense","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","cloneElement","createContext","createElement","createFactory","createRef","forwardRef","isValidElement","lazy","memo","useCallback","useContext","useDebugValue","useEffect","useImperativeHandle","useLayoutEffect","useMemo","useReducer","useRef","useState","version"],"react-dom":["__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","createPortal","findDOMNode","flushSync","hydrate","render","unmountComponentAtNode","unstable_batchedUpdates","unstable_createPortal","unstable_renderSubtreeIntoContainer","version"],"@storybook/components":["A","ActionBar","AddonPanel","Badge","Bar","Blockquote","Button","ClipboardCode","Code","DL","Div","DocumentWrapper","ErrorFormatter","FlexBar","Form","H1","H2","H3","H4","H5","H6","HR","IconButton","IconButtonSkeleton","Icons","Img","LI","Link","ListItem","Loader","OL","P","Placeholder","Pre","ResetWrapper","ScrollArea","Separator","Spaced","Span","StorybookIcon","StorybookLogo","Symbols","SyntaxHighlighter","TT","TabBar","TabButton","TabWrapper","Table","Tabs","TabsState","TooltipLinkList","TooltipMessage","TooltipNote","UL","WithTooltip","WithTooltipPure","Zoom","codeCommon","components","createCopyToClipboardFunction","getStoryHref","icons","interleaveSeparators","nameSpaceClassNames","resetComponents","withReset"],"@storybook/channels":["Channel","PostMessageTransport","WebsocketTransport","createBrowserChannel","createPostMessageChannel","createWebSocketChannel"],"@storybook/core-events":["CHANNEL_CREATED","CONFIG_ERROR","CURRENT_STORY_WAS_SET","DOCS_PREPARED","DOCS_RENDERED","FORCE_REMOUNT","FORCE_RE_RENDER","GLOBALS_UPDATED","IGNORED_EXCEPTION","NAVIGATE_URL","PLAY_FUNCTION_THREW_EXCEPTION","PRELOAD_ENTRIES","PREVIEW_BUILDER_PROGRESS","PREVIEW_KEYDOWN","REGISTER_SUBSCRIPTION","REQUEST_WHATS_NEW_DATA","RESET_STORY_ARGS","RESULT_WHATS_NEW_DATA","SELECT_STORY","SET_CONFIG","SET_CURRENT_STORY","SET_GLOBALS","SET_INDEX","SET_STORIES","SET_WHATS_NEW_CACHE","SHARED_STATE_CHANGED","SHARED_STATE_SET","STORIES_COLLAPSE_ALL","STORIES_EXPAND_ALL","STORY_ARGS_UPDATED","STORY_CHANGED","STORY_ERRORED","STORY_INDEX_INVALIDATED","STORY_MISSING","STORY_PREPARED","STORY_RENDERED","STORY_RENDER_PHASE_CHANGED","STORY_SPECIFIED","STORY_THREW_EXCEPTION","STORY_UNCHANGED","TELEMETRY_ERROR","TOGGLE_WHATS_NEW_NOTIFICATIONS","UPDATE_GLOBALS","UPDATE_QUERY_PARAMS","UPDATE_STORY_ARGS"],"@storybook/router":["BaseLocationProvider","DEEPLY_EQUAL","Link","Location","LocationProvider","Match","Route","buildArgsParam","deepDiff","getMatch","parsePath","queryFromLocation","queryFromString","stringifyQuery","useNavigate"],"@storybook/theming":["CacheProvider","ClassNames","Global","ThemeProvider","background","color","convert","create","createCache","createGlobal","createReset","css","darken","ensure","ignoreSsrWarning","isPropValid","jsx","keyframes","lighten","styled","themes","typography","useTheme","withTheme"],"@storybook/api":["ActiveTabs","Consumer","ManagerContext","Provider","addons","combineParameters","controlOrMetaKey","controlOrMetaSymbol","eventMatchesShortcut","eventToShortcut","isMacLike","isShortcutTaken","keyToSymbol","merge","mockChannel","optionOrAltSymbol","shortcutMatchesShortcut","shortcutToHumanString","types","useAddonState","useArgTypes","useArgs","useChannel","useGlobalTypes","useGlobals","useParameter","useSharedState","useStoryPrepared","useStorybookApi","useStorybookState"],"@storybook/manager-api":["ActiveTabs","Consumer","ManagerContext","Provider","addons","combineParameters","controlOrMetaKey","controlOrMetaSymbol","eventMatchesShortcut","eventToShortcut","isMacLike","isShortcutTaken","keyToSymbol","merge","mockChannel","optionOrAltSymbol","shortcutMatchesShortcut","shortcutToHumanString","types","useAddonState","useArgTypes","useArgs","useChannel","useGlobalTypes","useGlobals","useParameter","useSharedState","useStoryPrepared","useStorybookApi","useStorybookState"],"@storybook/addons":["addons","types","mockChannel"],"@storybook/client-logger":["deprecate","logger","once","pretty"],"@storybook/types":["Addon_TypesEnum"]};var globalsNameReferenceMap={react:"__REACT__","react-dom":"__REACT_DOM__","@storybook/components":"__STORYBOOK_COMPONENTS__","@storybook/channels":"__STORYBOOK_CHANNELS__","@storybook/core-events":"__STORYBOOK_CORE_EVENTS__","@storybook/router":"__STORYBOOK_ROUTER__","@storybook/theming":"__STORYBOOK_THEMING__","@storybook/api":"__STORYBOOK_API__","@storybook/manager-api":"__STORYBOOK_API__","@storybook/addons":"__STORYBOOK_ADDONS__","@storybook/client-logger":"__STORYBOOK_CLIENT_LOGGER__","@storybook/types":"__STORYBOOK_TYPES__"},globalPackages=Object.keys(globalsNameReferenceMap);var globalsModuleInfoMap=globalPackages.reduce((acc,key)=>(acc[key]={type:"esm",varName:globalsNameReferenceMap[key],namedExports:exports_default[key],defaultExport:!0},acc),{});0&&(module.exports={globalsModuleInfoMap}); 2 | -------------------------------------------------------------------------------- /docs/sb-manager/globals.js: -------------------------------------------------------------------------------- 1 | var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var globals_exports={};__export(globals_exports,{globalPackages:()=>globalPackages,globalsNameReferenceMap:()=>globalsNameReferenceMap});module.exports=__toCommonJS(globals_exports);var globalsNameReferenceMap={react:"__REACT__","react-dom":"__REACT_DOM__","@storybook/components":"__STORYBOOK_COMPONENTS__","@storybook/channels":"__STORYBOOK_CHANNELS__","@storybook/core-events":"__STORYBOOK_CORE_EVENTS__","@storybook/router":"__STORYBOOK_ROUTER__","@storybook/theming":"__STORYBOOK_THEMING__","@storybook/api":"__STORYBOOK_API__","@storybook/manager-api":"__STORYBOOK_API__","@storybook/addons":"__STORYBOOK_ADDONS__","@storybook/client-logger":"__STORYBOOK_CLIENT_LOGGER__","@storybook/types":"__STORYBOOK_TYPES__"},globalPackages=Object.keys(globalsNameReferenceMap);0&&(module.exports={globalPackages,globalsNameReferenceMap}); 2 | -------------------------------------------------------------------------------- /docs/sb-manager/index.js: -------------------------------------------------------------------------------- 1 | import{Provider,Root,renderStorybookUI}from"./chunk-F4FCO4CF.js";import"./chunk-2IXBUOFS.js";import"./chunk-NGTUFCUO.js";import"./chunk-INSKDKQB.js";import"./chunk-ZEU7PDD3.js";export{Provider,Root,renderStorybookUI}; 2 | -------------------------------------------------------------------------------- /docs/sb-manager/runtime.js: -------------------------------------------------------------------------------- 1 | import{CHANNEL_CREATED,Provider,TELEMETRY_ERROR,UncaughtManagerError,addons,createBrowserChannel,dist_exports as dist_exports2,dist_exports2 as dist_exports3,dist_exports3 as dist_exports4,dist_exports4 as dist_exports5,dist_exports5 as dist_exports6,dist_exports6 as dist_exports8,mockChannel,renderStorybookUI,typesX}from"./chunk-F4FCO4CF.js";import"./chunk-2IXBUOFS.js";import"./chunk-NGTUFCUO.js";import{dist_exports,dist_exports2 as dist_exports7,require_react,require_react_dom,scope}from"./chunk-INSKDKQB.js";import{__commonJS,__toESM}from"./chunk-ZEU7PDD3.js";var require_browser_dtector_umd_min=__commonJS({"../../node_modules/browser-dtector/browser-dtector.umd.min.js"(exports,module){(function(e,o){typeof exports=="object"&&typeof module<"u"?module.exports=o():typeof define=="function"&&define.amd?define(o):(e=typeof globalThis<"u"?globalThis:e||self).BrowserDetector=o()})(exports,function(){"use strict";function e(e2,o2){for(var r2=0;r21&&arguments[1]!==void 0?arguments[1]:-1,"})?")),r2=Number(e2).toString().match(o2);return r2?r2[0]:null},i=function(){return typeof window<"u"?window.navigator:null},t=function(){function t2(e2){var o2;(function(e3,o3){if(!(e3 instanceof o3))throw new TypeError("Cannot call a class as a function")})(this,t2),this.userAgent=e2||((o2=i())===null||o2===void 0?void 0:o2.userAgent)||null}var a,l,s;return a=t2,l=[{key:"parseUserAgent",value:function(e2){var t3,a2,l2,s2={},c=e2||this.userAgent||"",d=c.toLowerCase().replace(/\s\s+/g," "),u=/(edge)\/([\w.]+)/.exec(d)||/(edg)[/]([\w.]+)/.exec(d)||/(opr)[/]([\w.]+)/.exec(d)||/(opt)[/]([\w.]+)/.exec(d)||/(fxios)[/]([\w.]+)/.exec(d)||/(edgios)[/]([\w.]+)/.exec(d)||/(jsdom)[/]([\w.]+)/.exec(d)||/(samsungbrowser)[/]([\w.]+)/.exec(d)||/(electron)[/]([\w.]+)/.exec(d)||/(chrome)[/]([\w.]+)/.exec(d)||/(crios)[/]([\w.]+)/.exec(d)||/(opios)[/]([\w.]+)/.exec(d)||/(version)(applewebkit)[/]([\w.]+).*(safari)[/]([\w.]+)/.exec(d)||/(webkit)[/]([\w.]+).*(version)[/]([\w.]+).*(safari)[/]([\w.]+)/.exec(d)||/(applewebkit)[/]([\w.]+).*(safari)[/]([\w.]+)/.exec(d)||/(webkit)[/]([\w.]+)/.exec(d)||/(opera)(?:.*version|)[/]([\w.]+)/.exec(d)||/(msie) ([\w.]+)/.exec(d)||/(fennec)[/]([\w.]+)/.exec(d)||d.indexOf("trident")>=0&&/(rv)(?::| )([\w.]+)/.exec(d)||d.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(d)||[],f=/(ipad)/.exec(d)||/(ipod)/.exec(d)||/(iphone)/.exec(d)||/(jsdom)/.exec(d)||/(windows phone)/.exec(d)||/(xbox)/.exec(d)||/(win)/.exec(d)||/(tablet)/.exec(d)||/(android)/.test(d)&&/(mobile)/.test(d)===!1&&["androidTablet"]||/(android)/.exec(d)||/(mac)/.exec(d)||/(linux)/.exec(d)||/(cros)/.exec(d)||[],p=u[5]||u[3]||u[1]||null,w=f[0]||null,x=u[4]||u[2]||null,b=i();p==="chrome"&&typeof(b==null||(t3=b.brave)===null||t3===void 0?void 0:t3.isBrave)=="function"&&(p="brave"),p&&(s2[p]=!0),w&&(s2[w]=!0);var v=!!(s2.tablet||s2.android||s2.androidTablet),m=!!(s2.ipad||s2.tablet||s2.androidTablet),g=!!(s2.android||s2.androidTablet||s2.tablet||s2.ipad||s2.ipod||s2.iphone||s2["windows phone"]),h=!!(s2.cros||s2.mac||s2.linux||s2.win),y=!!(s2.brave||s2.chrome||s2.crios||s2.opr||s2.safari||s2.edg||s2.electron),A=!!(s2.msie||s2.rv);return{name:(a2=o[p])!==null&&a2!==void 0?a2:null,platform:(l2=r[w])!==null&&l2!==void 0?l2:null,userAgent:c,version:x,shortVersion:x?n(parseFloat(x),2):null,isAndroid:v,isTablet:m,isMobile:g,isDesktop:h,isWebkit:y,isIE:A}}},{key:"getBrowserInfo",value:function(){var e2=this.parseUserAgent();return{name:e2.name,platform:e2.platform,userAgent:e2.userAgent,version:e2.version,shortVersion:e2.shortVersion}}}],s=[{key:"VERSION",get:function(){return"3.4.0"}}],l&&e(a.prototype,l),s&&e(a,s),Object.defineProperty(a,"prototype",{writable:!1}),t2}();return t})}});var REACT=__toESM(require_react()),REACT_DOM=__toESM(require_react_dom());var globalsNameValueMap={react:REACT,"react-dom":REACT_DOM,"@storybook/components":dist_exports8,"@storybook/channels":dist_exports5,"@storybook/core-events":dist_exports3,"@storybook/router":dist_exports2,"@storybook/theming":dist_exports7,"@storybook/api":dist_exports6,"@storybook/manager-api":dist_exports6,"@storybook/addons":{addons,types:typesX,mockChannel},"@storybook/client-logger":dist_exports,"@storybook/types":dist_exports4};var globalsNameReferenceMap={react:"__REACT__","react-dom":"__REACT_DOM__","@storybook/components":"__STORYBOOK_COMPONENTS__","@storybook/channels":"__STORYBOOK_CHANNELS__","@storybook/core-events":"__STORYBOOK_CORE_EVENTS__","@storybook/router":"__STORYBOOK_ROUTER__","@storybook/theming":"__STORYBOOK_THEMING__","@storybook/api":"__STORYBOOK_API__","@storybook/manager-api":"__STORYBOOK_API__","@storybook/addons":"__STORYBOOK_ADDONS__","@storybook/client-logger":"__STORYBOOK_CLIENT_LOGGER__","@storybook/types":"__STORYBOOK_TYPES__"},globalPackages=Object.keys(globalsNameReferenceMap);var import_browser_dtector=__toESM(require_browser_dtector_umd_min()),browserInfo;function getBrowserInfo(){return browserInfo||(browserInfo=new import_browser_dtector.default(scope.navigator?.userAgent).getBrowserInfo()),browserInfo}var errorMessages=["ResizeObserver loop completed with undelivered notifications.","ResizeObserver loop limit exceeded","Script error."],shouldSkipError=error=>errorMessages.includes(error?.message);function prepareForTelemetry(originalError){let error=originalError;return(originalError.target===scope||originalError.currentTarget===scope||originalError.srcElement===scope)&&(error=new Error(originalError.message),error.name=originalError.name||error.name),originalError.fromStorybook||(error=new UncaughtManagerError({error})),error.browserInfo=getBrowserInfo(),error}var{FEATURES,CONFIG_TYPE}=scope,ReactProvider=class extends Provider{constructor(){super();let channel=createBrowserChannel({page:"manager"});addons.setChannel(channel),channel.emit(CHANNEL_CREATED),this.addons=addons,this.channel=channel,scope.__STORYBOOK_ADDONS_CHANNEL__=channel,FEATURES?.storyStoreV7&&CONFIG_TYPE==="DEVELOPMENT"&&(this.serverChannel=this.channel,addons.setServerChannel(this.serverChannel))}getElements(type){return this.addons.getElements(type)}getConfig(){return this.addons.getConfig()}handleAPI(api){this.addons.loadAddons(api)}};globalPackages.forEach(key=>{scope[globalsNameReferenceMap[key]]=globalsNameValueMap[key]});scope.sendTelemetryError=error=>{shouldSkipError(error)||scope.__STORYBOOK_ADDONS_CHANNEL__.emit(TELEMETRY_ERROR,prepareForTelemetry(error))};scope.addEventListener("error",args=>{let error=args.error||args;scope.sendTelemetryError(error)});scope.addEventListener("unhandledrejection",({reason})=>{scope.sendTelemetryError(reason)});var{document}=scope,rootEl=document.getElementById("root");renderStorybookUI(rootEl,new ReactProvider); 2 | -------------------------------------------------------------------------------- /docs/sb-manager/syntaxhighlighter-V7JZZA35-DXZCI2WR.js: -------------------------------------------------------------------------------- 1 | import{SyntaxHighlighter2,createCopyToClipboardFunction,syntaxhighlighter_default}from"./chunk-2IXBUOFS.js";import"./chunk-INSKDKQB.js";import"./chunk-ZEU7PDD3.js";export{SyntaxHighlighter2 as SyntaxHighlighter,createCopyToClipboardFunction,syntaxhighlighter_default as default}; 2 | -------------------------------------------------------------------------------- /docs/sb-preview/globals.js: -------------------------------------------------------------------------------- 1 | "use strict";var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var globals_exports={};__export(globals_exports,{globalPackages:()=>globalPackages,globalsNameReferenceMap:()=>globalsNameReferenceMap});module.exports=__toCommonJS(globals_exports);var globalsNameReferenceMap={"@storybook/addons":"__STORYBOOK_MODULE_ADDONS__","@storybook/global":"__STORYBOOK_MODULE_GLOBAL__","@storybook/channel-postmessage":"__STORYBOOK_MODULE_CHANNEL_POSTMESSAGE__","@storybook/channel-websocket":"__STORYBOOK_MODULE_CHANNEL_WEBSOCKET__","@storybook/channels":"__STORYBOOK_MODULE_CHANNELS__","@storybook/client-api":"__STORYBOOK_MODULE_CLIENT_API__","@storybook/client-logger":"__STORYBOOK_MODULE_CLIENT_LOGGER__","@storybook/core-client":"__STORYBOOK_MODULE_CORE_CLIENT__","@storybook/core-events":"__STORYBOOK_MODULE_CORE_EVENTS__","@storybook/preview-web":"__STORYBOOK_MODULE_PREVIEW_WEB__","@storybook/preview-api":"__STORYBOOK_MODULE_PREVIEW_API__","@storybook/store":"__STORYBOOK_MODULE_STORE__","@storybook/types":"__STORYBOOK_MODULE_TYPES__"},globalPackages=Object.keys(globalsNameReferenceMap);0&&(module.exports={globalPackages,globalsNameReferenceMap}); 2 | -------------------------------------------------------------------------------- /docs/stories-ReactTyped-stories.cb7b582a.iframe.bundle.js: -------------------------------------------------------------------------------- 1 | "use strict";(self.webpackChunkreact_typed=self.webpackChunkreact_typed||[]).push([[576],{"./stories/ReactTyped.stories.tsx":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{BasicUsage:()=>BasicUsage,CustomComponent:()=>CustomComponent,InputPlaceholder:()=>InputPlaceholder,StartWhenVisible:()=>StartWhenVisible,Stopped:()=>Stopped,WithInput:()=>WithInput,__namedExportsOrder:()=>__namedExportsOrder,default:()=>ReactTyped_stories});var react=__webpack_require__("./node_modules/react/index.js"),input=__webpack_require__("./node_modules/antd/es/input/index.js"),typed_module=__webpack_require__("./node_modules/typed.js/dist/typed.module.js");function _array_like_to_array(arr,len){(null==len||len>arr.length)&&(len=arr.length);for(var i=0,arr2=Array(len);i=0)&&Object.prototype.propertyIsEnumerable.call(source,key)&&(target[key]=source[key])}return target}function _object_without_properties_loose(source,excluded){if(null==source)return{};var key,i,target={},sourceKeys=Object.keys(source);for(i=0;i=0||(target[key]=source[key]);return target}function _sliced_to_array(arr,i){return _array_with_holes(arr)||_iterable_to_array_limit(arr,i)||_unsupported_iterable_to_array(arr,i)||_non_iterable_rest()}function _to_consumable_array(arr){return _array_without_holes(arr)||_iterable_to_array(arr)||_unsupported_iterable_to_array(arr)||_non_iterable_spread()}function _unsupported_iterable_to_array(o,minLen){if(o){if("string"==typeof o)return _array_like_to_array(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if("Object"===n&&o.constructor&&(n=o.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _array_like_to_array(o,minLen)}}var ReactTyped=(0,react.memo)(function(_param){var style=_param.style,className=_param.className,typedRef=_param.typedRef,parseRef=_param.parseRef,stopped=_param.stopped,children=_param.children,startWhenVisible=_param.startWhenVisible,typedOptions=_object_without_properties(_param,["style","className","typedRef","parseRef","stopped","children","startWhenVisible"]),rootElement=(0,react.useRef)(null),shouldUpdateArgs=(0,react.useMemo)(function(){var _typedOptions_strings;return _to_consumable_array(Object.values(typedOptions).filter(function(v){return"boolean"==typeof v||"number"==typeof v||"string"==typeof v})).concat([null===(_typedOptions_strings=typedOptions.strings)||void 0===_typedOptions_strings?void 0:_typedOptions_strings.join(",")])},[typedOptions]);return(0,react.useEffect)(function(){var element=parseRef&&parseRef(rootElement)||rootElement.current,typed=new typed_module.Z(element,_object_spread({},typedOptions));if((stopped||startWhenVisible)&&(null==typed||typed.stop()),startWhenVisible){var observer=new IntersectionObserver(function(param){_sliced_to_array(param,1)[0].isIntersecting&&(null==typed||typed.start(),observer.disconnect())});observer.observe(element)}return typedRef&&typed&&typedRef(typed),function(){typed.destroy()}},shouldUpdateArgs),children?react.cloneElement(children,{ref:rootElement}):react.createElement("span",{style:style,className:className,ref:rootElement})});try{ReactTyped.displayName="ReactTyped",ReactTyped.__docgenInfo={description:"",displayName:"ReactTyped",props:{stopped:{defaultValue:{value:"false"},description:"if true will be initialized in stopped state",name:"stopped",required:!1,type:{name:"boolean"}},startWhenVisible:{defaultValue:{value:"false"},description:"if true the animation will start when the element is visible",name:"startWhenVisible",required:!1,type:{name:"boolean"}},style:{defaultValue:null,description:"Styles for the created element in case children is not provided",name:"style",required:!1,type:{name:"CSSProperties"}},className:{defaultValue:null,description:"class name for the created element in case children is not provided",name:"className",required:!1,type:{name:"string"}},parseRef:{defaultValue:{value:"(ref)=>ref.current"},description:"In some custom component dom element is not in the ref.current property.\nie an Input by antd the element is in input property ( ref.current.input )\nyou can use this function to get the element from the ref",name:"parseRef",required:!1,type:{name:"((ref: RefObject) => HTMLElement)"}},typedRef:{defaultValue:null,description:"Returns the typed instance",name:"typedRef",required:!1,type:{name:"((typed: Typed) => void)"}},children:{defaultValue:null,description:"Add typed strings directly in the component",name:"children",required:!1,type:{name:"ReactElement>"}},strings:{defaultValue:{value:"[\n'These are the default values...',\n'You know what you should do?',\n'Use your own!',\n'Have a great day!',\n]"},description:"strings to be typed",name:"strings",required:!1,type:{name:"string[]"}},stringsElement:{defaultValue:{value:"null"},description:"ID or instance of HTML element of element containing string children",name:"stringsElement",required:!1,type:{name:"string | Element"}},typeSpeed:{defaultValue:{value:"0"},description:"type speed in milliseconds",name:"typeSpeed",required:!1,type:{name:"number"}},startDelay:{defaultValue:{value:"0"},description:"time before typing starts in milliseconds",name:"startDelay",required:!1,type:{name:"number"}},backSpeed:{defaultValue:{value:"0"},description:"backspacing speed in milliseconds",name:"backSpeed",required:!1,type:{name:"number"}},smartBackspace:{defaultValue:{value:"true"},description:"only backspace what doesn't match the previous string",name:"smartBackspace",required:!1,type:{name:"boolean"}},shuffle:{defaultValue:{value:"true"},description:"shuffle the strings",name:"shuffle",required:!1,type:{name:"boolean"}},backDelay:{defaultValue:{value:"700"},description:"time before backspacing in milliseconds",name:"backDelay",required:!1,type:{name:"number"}},fadeOut:{defaultValue:{value:"false"},description:"Fade out instead of backspace",name:"fadeOut",required:!1,type:{name:"boolean"}},fadeOutClass:{defaultValue:{value:"typed-fade-out"},description:"css class for fade animation",name:"fadeOutClass",required:!1,type:{name:"string"}},fadeOutDelay:{defaultValue:{value:"500"},description:"Fade out delay in milliseconds",name:"fadeOutDelay",required:!1,type:{name:"number"}},loop:{defaultValue:{value:"false"},description:"loop strings",name:"loop",required:!1,type:{name:"boolean"}},loopCount:{defaultValue:{value:"Infinity"},description:"amount of loops",name:"loopCount",required:!1,type:{name:"number"}},showCursor:{defaultValue:{value:"true"},description:"show cursor",name:"showCursor",required:!1,type:{name:"boolean"}},cursorChar:{defaultValue:{value:"|"},description:"character for cursor",name:"cursorChar",required:!1,type:{name:"string"}},autoInsertCss:{defaultValue:{value:"true"},description:"insert CSS for cursor and fadeOut into HTML",name:"autoInsertCss",required:!1,type:{name:"boolean"}},attr:{defaultValue:{value:"null"},description:"attribute for typing Ex: input placeholder, value, or just HTML text",name:"attr",required:!1,type:{name:"string"}},bindInputFocusEvents:{defaultValue:{value:"false"},description:"bind to focus and blur if el is text input",name:"bindInputFocusEvents",required:!1,type:{name:"boolean"}},contentType:{defaultValue:{value:"html"},description:"'html' or 'null' for plaintext",name:"contentType",required:!1,type:{name:"string"}},onBegin:{defaultValue:null,description:"Before it begins typing the first string",name:"onBegin",required:!1,type:{name:"((self: Typed) => number)"}},onComplete:{defaultValue:null,description:"All typing is complete",name:"onComplete",required:!1,type:{name:"((self: Typed) => void)"}},preStringTyped:{defaultValue:null,description:"Before each string is typed",name:"preStringTyped",required:!1,type:{name:"((arrayPos: number, self: Typed) => void)"}},onStringTyped:{defaultValue:null,description:"After each string is typed",name:"onStringTyped",required:!1,type:{name:"((arrayPos: number, self: Typed) => void)"}},onLastStringBackspaced:{defaultValue:null,description:"During looping, after last string is typed",name:"onLastStringBackspaced",required:!1,type:{name:"((self: Typed) => void)"}},onTypingPaused:{defaultValue:null,description:"Typing has been stopped",name:"onTypingPaused",required:!1,type:{name:"((arrayPos: number, self: Typed) => void)"}},onTypingResumed:{defaultValue:null,description:"Typing has been started after being stopped",name:"onTypingResumed",required:!1,type:{name:"((arrayPos: number, self: Typed) => void)"}},onReset:{defaultValue:null,description:"After reset",name:"onReset",required:!1,type:{name:"((self: Typed) => void)"}},onStop:{defaultValue:null,description:"After stop",name:"onStop",required:!1,type:{name:"((arrayPos: number, self: Typed) => void)"}},onStart:{defaultValue:null,description:"After start",name:"onStart",required:!1,type:{name:"((arrayPos: number, self: Typed) => void)"}},onDestroy:{defaultValue:null,description:"After destroy",name:"onDestroy",required:!1,type:{name:"((self: Typed) => void)"}}}},"undefined"!=typeof STORYBOOK_REACT_CLASSES&&(STORYBOOK_REACT_CLASSES["src/index.tsx#ReactTyped"]={docgenInfo:ReactTyped.__docgenInfo,name:"ReactTyped",path:"src/index.tsx#ReactTyped"})}catch(__react_docgen_typescript_loader_error){}function ReactTyped_stories_array_like_to_array(arr,len){(null==len||len>arr.length)&&(len=arr.length);for(var i=0,arr2=Array(len);ireact-typed','This is a react component that wraps up the typed.js','If you like the project add a star in typed.js and react-typed'],typeSpeed:50,backSpeed:50},argTypes:{strings:{control:!1},className:{control:!1},typedRef:{control:!1},children:{control:!1}},decorators:[function(Story,param){var args=param.args,_React_useState=ReactTyped_stories_sliced_to_array(react.useState(),2),typedInstance=_React_useState[0],setTypedInstance=_React_useState[1];return react.createElement("div",null,Story({args:ReactTyped_stories_object_spread({typedRef:setTypedInstance},args)}),react.createElement("div",null,react.createElement("br",null),react.createElement("button",{onClick:function(){return null==typedInstance?void 0:typedInstance.reset()}},"Reset"),react.createElement("button",{onClick:function(){return null==typedInstance?void 0:typedInstance.start()}},"Start"),react.createElement("button",{onClick:function(){return null==typedInstance?void 0:typedInstance.stop()}},"Stop"),react.createElement("button",{onClick:function(){return null==typedInstance?void 0:typedInstance.toggle()}},"Toggle"),react.createElement("button",{onClick:function(){return null==typedInstance?void 0:typedInstance.destroy()}},"Destroy"))||null)}]};var BasicUsage={},WithInput={render:function(props){return react.createElement(ReactTyped,_object_spread_props(ReactTyped_stories_object_spread({},props),{strings:["Search by name","Search by type","Search by description"]}),react.createElement("input",{type:"text",style:{width:300}}))}},InputPlaceholder={render:function(props){return react.createElement(ReactTyped,_object_spread_props(ReactTyped_stories_object_spread({},props),{attr:"placeholder",loop:!1,strings:["Add a name here"]}),react.createElement("input",{type:"text",style:{width:300}}))}},Stopped={args:{stopped:!0}},CustomComponent={render:function(props){return react.createElement(ReactTyped,_object_spread_props(ReactTyped_stories_object_spread({},props),{attr:"placeholder",loop:!1,strings:["Add a name here"],parseRef:function(ref){return ref.current.input}}),react.createElement(input.Z,{type:"text",style:{width:300}}))}},StartWhenVisible={args:{startWhenVisible:!0,loop:!1,strings:["If startWhenVisible is true, will start when is visible in the dom"]},decorators:[function(Story){return react.createElement("div",null,"Scroll Down",react.createElement("div",{style:{height:1e3}}),Story()," ",react.createElement("div",{style:{height:300}}))}]};BasicUsage.parameters={...BasicUsage.parameters,docs:{...BasicUsage.parameters?.docs,source:{originalSource:"{}",...BasicUsage.parameters?.docs?.source}}},WithInput.parameters={...WithInput.parameters,docs:{...WithInput.parameters?.docs,source:{originalSource:'{\n render: props => \n \n \n}',...WithInput.parameters?.docs?.source}}},InputPlaceholder.parameters={...InputPlaceholder.parameters,docs:{...InputPlaceholder.parameters?.docs,source:{originalSource:'{\n render: props => \n \n \n}',...InputPlaceholder.parameters?.docs?.source}}},Stopped.parameters={...Stopped.parameters,docs:{...Stopped.parameters?.docs,source:{originalSource:"{\n args: {\n stopped: true\n }\n}",...Stopped.parameters?.docs?.source}}},CustomComponent.parameters={...CustomComponent.parameters,docs:{...CustomComponent.parameters?.docs,source:{originalSource:'{\n render: props => ref.current.input}>\n \n \n}',...CustomComponent.parameters?.docs?.source}}},StartWhenVisible.parameters={...StartWhenVisible.parameters,docs:{...StartWhenVisible.parameters?.docs,source:{originalSource:'{\n args: {\n startWhenVisible: true,\n loop: false,\n strings: ["If startWhenVisible is true, will start when is visible in the dom"]\n },\n decorators: [Story =>
\n Scroll Down\n
\n {Story()}
\n
]\n}',...StartWhenVisible.parameters?.docs?.source}}};let __namedExportsOrder=["BasicUsage","WithInput","InputPlaceholder","Stopped","CustomComponent","StartWhenVisible"]}}]); -------------------------------------------------------------------------------- /docs/stories.json: -------------------------------------------------------------------------------- 1 | {"v":3,"stories":{"react-typed--docs":{"id":"react-typed--docs","title":"React Typed","name":"Docs","importPath":"./stories/ReactTyped.stories.tsx","tags":["autodocs","docs"],"storiesImports":[],"kind":"React Typed","story":"Docs","parameters":{"__id":"react-typed--docs","docsOnly":true,"fileName":"./stories/ReactTyped.stories.tsx"}},"react-typed--basic-usage":{"id":"react-typed--basic-usage","name":"Basic Usage","title":"React Typed","importPath":"./stories/ReactTyped.stories.tsx","tags":["autodocs","story"],"kind":"React Typed","story":"Basic Usage","parameters":{"__id":"react-typed--basic-usage","docsOnly":false,"fileName":"./stories/ReactTyped.stories.tsx"}},"react-typed--with-input":{"id":"react-typed--with-input","name":"With Input","title":"React Typed","importPath":"./stories/ReactTyped.stories.tsx","tags":["autodocs","story"],"kind":"React Typed","story":"With Input","parameters":{"__id":"react-typed--with-input","docsOnly":false,"fileName":"./stories/ReactTyped.stories.tsx"}},"react-typed--input-placeholder":{"id":"react-typed--input-placeholder","name":"Input Placeholder","title":"React Typed","importPath":"./stories/ReactTyped.stories.tsx","tags":["autodocs","story"],"kind":"React Typed","story":"Input Placeholder","parameters":{"__id":"react-typed--input-placeholder","docsOnly":false,"fileName":"./stories/ReactTyped.stories.tsx"}},"react-typed--stopped":{"id":"react-typed--stopped","name":"Stopped","title":"React Typed","importPath":"./stories/ReactTyped.stories.tsx","tags":["autodocs","story"],"kind":"React Typed","story":"Stopped","parameters":{"__id":"react-typed--stopped","docsOnly":false,"fileName":"./stories/ReactTyped.stories.tsx"}},"react-typed--custom-component":{"id":"react-typed--custom-component","name":"Custom Component","title":"React Typed","importPath":"./stories/ReactTyped.stories.tsx","tags":["autodocs","story"],"kind":"React Typed","story":"Custom Component","parameters":{"__id":"react-typed--custom-component","docsOnly":false,"fileName":"./stories/ReactTyped.stories.tsx"}},"react-typed--start-when-visible":{"id":"react-typed--start-when-visible","name":"Start When Visible","title":"React Typed","importPath":"./stories/ReactTyped.stories.tsx","tags":["autodocs","story"],"kind":"React Typed","story":"Start When Visible","parameters":{"__id":"react-typed--start-when-visible","docsOnly":false,"fileName":"./stories/ReactTyped.stories.tsx"}}}} 2 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "react-typed", 3 | "version": "2.0.12", 4 | "description": "A react wrapper for typed.js", 5 | "main": "dist/cjs/index.js", 6 | "module": "dist/mjs/index.js", 7 | "types": "dist/mjs/index.d.ts", 8 | "files": [ 9 | "dist", 10 | "src" 11 | ], 12 | "exports": { 13 | ".": { 14 | "import": "./dist/mjs/index.js", 15 | "require": "./dist/cjs/index.js", 16 | "types": "./dist/mjs/index.d.ts" 17 | } 18 | }, 19 | "scripts": { 20 | "build": "rm -fr dist/* && tsc -p tsconfig.json && tsc -p tsconfig-cjs.json", 21 | "postbuild": "echo '{\"type\": \"commonjs\"}'>> dist/cjs/package.json && echo '{\"type\": \"module\"}'>> dist/mjs/package.json", 22 | "start": "storybook dev -p 6007", 23 | "test": "jest --coverage", 24 | "docs": "storybook build -o docs" 25 | }, 26 | "author": "Mike Antoniadis (http://ssbeefeater.github.io/)", 27 | "license": "MIT", 28 | "repository": { 29 | "type": "git", 30 | "url": "https://github.com/ssbeefeater/react-typed.git" 31 | }, 32 | "tags": [ 33 | "react", 34 | "typed.js" 35 | ], 36 | "jest": { 37 | "testEnvironment": "jsdom", 38 | "transform": { 39 | "^.+\\.(ts|tsx|js|jsx)$": "ts-jest" 40 | } 41 | }, 42 | "devDependencies": { 43 | "@storybook/addon-essentials": "^7.6.10", 44 | "@storybook/addon-interactions": "^7.6.10", 45 | "@storybook/addon-links": "^7.6.10", 46 | "@storybook/addon-onboarding": "^1.0.10", 47 | "@storybook/blocks": "^7.6.10", 48 | "@storybook/react": "^7.6.10", 49 | "@storybook/react-webpack5": "^7.6.10", 50 | "@storybook/test": "^7.6.10", 51 | "@testing-library/jest-dom": "^5.17.0", 52 | "@testing-library/react": "^13.4.0", 53 | "@testing-library/user-event": "^13.5.0", 54 | "@types/jest": "^27.5.2", 55 | "@types/node": "^16.18.69", 56 | "@types/react": "^18.2.47", 57 | "antd": "^5.13.2", 58 | "eslint-plugin-storybook": "^0.6.15", 59 | "jest": "^29.7.0", 60 | "jest-environment-jsdom": "^29.7.0", 61 | "storybook": "^7.6.10", 62 | "ts-jest": "^29.1.2", 63 | "typescript": "^5.2.2" 64 | }, 65 | "peerDependencies": { 66 | "react": ">16.8.0" 67 | }, 68 | "dependencies": { 69 | "typed.js": "^2.1.0" 70 | } 71 | } -------------------------------------------------------------------------------- /src/index.tsx: -------------------------------------------------------------------------------- 1 | import React, { memo, useMemo, useRef, useEffect } from "react"; 2 | import Typed from "typed.js"; 3 | export interface ReactTypedProps { 4 | /** 5 | * if true will be initialized in stopped state 6 | * @default false 7 | * */ 8 | stopped?: boolean; 9 | /** 10 | * if true the animation will start when the element is visible 11 | * @default false 12 | * */ 13 | startWhenVisible?: boolean; 14 | /** 15 | * Styles for the created element in case children is not provided 16 | * */ 17 | style?: React.CSSProperties; 18 | /** 19 | * class name for the created element in case children is not provided 20 | * */ 21 | className?: string; 22 | /** 23 | * In some custom component dom element is not in the ref.current property. 24 | * ie an Input by antd the element is in input property ( ref.current.input ) 25 | * you can use this function to get the element from the ref 26 | * @default (ref)=>ref.current 27 | * */ 28 | parseRef?: (ref: React.RefObject) => HTMLElement; 29 | /** 30 | * Returns the typed instance 31 | * */ 32 | typedRef?: (typed: Typed) => void; 33 | /** 34 | * Add typed strings directly in the component 35 | * */ 36 | children?: React.ReactElement; 37 | /** 38 | * strings to be typed 39 | * @default [ 40 | 'These are the default values...', 41 | 'You know what you should do?', 42 | 'Use your own!', 43 | 'Have a great day!', 44 | ] 45 | * */ 46 | strings?: string[]; 47 | /** 48 | * ID or instance of HTML element of element containing string children 49 | * @default null 50 | */ 51 | stringsElement?: string | Element; 52 | /** 53 | * type speed in milliseconds 54 | * @default 0 55 | */ 56 | typeSpeed?: number; 57 | /** 58 | * time before typing starts in milliseconds 59 | * @default 0 60 | */ 61 | startDelay?: number; 62 | /** 63 | * backspacing speed in milliseconds 64 | * @default 0 65 | */ 66 | backSpeed?: number; 67 | /** 68 | * only backspace what doesn't match the previous string 69 | * @default true 70 | */ 71 | smartBackspace?: boolean; 72 | /** 73 | * shuffle the strings 74 | * @default true 75 | */ 76 | shuffle?: boolean; 77 | /** 78 | * time before backspacing in milliseconds 79 | * @default 700 80 | */ 81 | backDelay?: number; 82 | /** 83 | * Fade out instead of backspace 84 | * @default false 85 | */ 86 | fadeOut?: boolean; 87 | /** 88 | * css class for fade animation 89 | * @default typed-fade-out 90 | */ 91 | fadeOutClass?: string; 92 | /** 93 | * Fade out delay in milliseconds 94 | * @default 500 95 | */ 96 | fadeOutDelay?: number; 97 | /** 98 | * loop strings 99 | * @default false 100 | */ 101 | loop?: boolean; 102 | /** 103 | * amount of loops 104 | * @default Infinity 105 | */ 106 | loopCount?: number; 107 | /** 108 | * show cursor 109 | * @default true 110 | */ 111 | showCursor?: boolean; 112 | /** 113 | * character for cursor 114 | * @default | 115 | */ 116 | cursorChar?: string; 117 | /** 118 | * insert CSS for cursor and fadeOut into HTML 119 | * @default true 120 | */ 121 | autoInsertCss?: boolean; 122 | /** 123 | * attribute for typing Ex: input placeholder, value, or just HTML text 124 | * @default null 125 | */ 126 | attr?: string; 127 | /** 128 | * bind to focus and blur if el is text input 129 | * @default false 130 | */ 131 | bindInputFocusEvents?: boolean; 132 | /** 133 | * 'html' or 'null' for plaintext 134 | * @default html 135 | */ 136 | contentType?: string; 137 | /** 138 | * Before it begins typing the first string 139 | */ 140 | onBegin?: (self: Typed) => number; 141 | /** 142 | * All typing is complete 143 | */ 144 | onComplete?(self: Typed): void; 145 | /** 146 | * Before each string is typed 147 | */ 148 | preStringTyped?(arrayPos: number, self: Typed): void; 149 | /** 150 | * After each string is typed 151 | */ 152 | onStringTyped?(arrayPos: number, self: Typed): void; 153 | /** 154 | * During looping, after last string is typed 155 | */ 156 | onLastStringBackspaced?(self: Typed): void; 157 | /** 158 | * Typing has been stopped 159 | */ 160 | onTypingPaused?(arrayPos: number, self: Typed): void; 161 | /** 162 | * Typing has been started after being stopped 163 | */ 164 | onTypingResumed?(arrayPos: number, self: Typed): void; 165 | /** 166 | * After reset 167 | */ 168 | onReset?(self: Typed): void; 169 | /** 170 | * After stop 171 | */ 172 | onStop?(arrayPos: number, self: Typed): void; 173 | /** 174 | * After start 175 | */ 176 | onStart?(arrayPos: number, self: Typed): void; 177 | /** 178 | * After destroy 179 | */ 180 | onDestroy?(self: Typed): void; 181 | } 182 | 183 | export const ReactTyped: React.FC = memo( 184 | ({ 185 | style, 186 | className, 187 | typedRef, 188 | parseRef, 189 | stopped, 190 | children, 191 | startWhenVisible, 192 | ...typedOptions 193 | }) => { 194 | const rootElement = useRef(null); 195 | const shouldUpdateArgs = useMemo( 196 | () => [ 197 | ...Object.values(typedOptions).filter( 198 | (v) => 199 | typeof v === "boolean" || 200 | typeof v === "number" || 201 | typeof v === "string" 202 | ), 203 | typedOptions.strings?.join(","), 204 | ], 205 | [typedOptions] 206 | ); 207 | useEffect(() => { 208 | const element = 209 | (parseRef && parseRef(rootElement)) || rootElement.current; 210 | const typed = new Typed(element, { ...typedOptions }); 211 | 212 | if (stopped || startWhenVisible) { 213 | typed?.stop(); 214 | } 215 | 216 | if (startWhenVisible) { 217 | const observer = new IntersectionObserver(([entry]) => { 218 | if (entry.isIntersecting) { 219 | typed?.start(); 220 | observer.disconnect(); 221 | } 222 | }); 223 | observer.observe(element); 224 | } 225 | 226 | if (typedRef && typed) { 227 | typedRef(typed); 228 | } 229 | return () => { 230 | typed.destroy(); 231 | }; 232 | }, shouldUpdateArgs); 233 | 234 | const child = !children ? ( 235 | 236 | ) : ( 237 | React.cloneElement(children, { 238 | ref: rootElement, 239 | }) 240 | ); 241 | return child; 242 | } 243 | ); 244 | 245 | export { Typed }; 246 | -------------------------------------------------------------------------------- /stories/ReactTyped.stories.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import type { Meta, StoryObj } from "@storybook/react"; 3 | import { Input } from "antd"; 4 | import { ReactTyped } from "../src/index"; 5 | import { Story } from "@storybook/blocks"; 6 | 7 | // More on how to set up stories at: https://storybook.js.org/docs/writing-stories#default-export 8 | const meta = { 9 | title: "React Typed", 10 | component: ReactTyped, 11 | tags: ["autodocs"], 12 | // More on argTypes: https://storybook.js.org/docs/api/argtypes 13 | args: { 14 | strings: [ 15 | 'welcome to react-typed', 16 | 'This is a react component that wraps up the typed.js', 17 | 'If you like the project add a star in typed.js and react-typed', 18 | ], 19 | typeSpeed: 50, 20 | backSpeed: 50, 21 | }, 22 | argTypes: { 23 | strings: { control: false }, 24 | className: { 25 | control: false, 26 | }, 27 | typedRef: { 28 | control: false, 29 | }, 30 | children: { 31 | control: false, 32 | }, 33 | }, 34 | decorators: [ 35 | (Story, { args }) => { 36 | const [typedInstance, setTypedInstance] = React.useState(); 37 | return ( 38 |
39 | {Story({ args: { typedRef: setTypedInstance, ...args } })} 40 | {( 41 |
42 |
43 | 44 | 45 | 46 | 47 | 48 |
49 | ) || null} 50 |
51 | ); 52 | }, 53 | ], 54 | } satisfies Meta; 55 | 56 | export default meta; 57 | type Story = StoryObj; 58 | 59 | export const BasicUsage: Story = {}; 60 | 61 | export const WithInput: Story = { 62 | render: (props) => ( 63 | 67 | 68 | 69 | ), 70 | }; 71 | 72 | export const InputPlaceholder: Story = { 73 | render: (props) => ( 74 | 80 | 81 | 82 | ), 83 | }; 84 | 85 | export const Stopped: Story = { 86 | args: { 87 | stopped: true, 88 | }, 89 | }; 90 | 91 | export const CustomComponent: Story = { 92 | render: (props) => ( 93 | ref.current.input} 99 | > 100 | 101 | 102 | ), 103 | }; 104 | 105 | export const StartWhenVisible: Story = { 106 | args: { 107 | startWhenVisible: true, 108 | loop: false, 109 | strings: [ 110 | "If startWhenVisible is true, will start when is visible in the dom", 111 | ], 112 | }, 113 | decorators: [ 114 | (Story) => ( 115 |
116 | Scroll Down 117 |
118 | {Story()}
119 |
120 | ), 121 | ], 122 | }; 123 | -------------------------------------------------------------------------------- /tsconfig-base.json: -------------------------------------------------------------------------------- 1 | { 2 | "include": ["src", "stories"], 3 | "exclude": ["dist", "node_modules", "stories/**/*"], 4 | "compilerOptions": { 5 | "outDir": "dist", 6 | "esModuleInterop": true, 7 | "forceConsistentCasingInFileNames": true, 8 | "strict": true, 9 | "skipLibCheck": true, 10 | "jsx": "react", 11 | "sourceMap": true, 12 | "noImplicitReturns": true, 13 | "noFallthroughCasesInSwitch": true, 14 | "noUnusedLocals": true, 15 | "noUnusedParameters": true, 16 | "moduleResolution": "node" 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /tsconfig-cjs.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./tsconfig-base.json", 3 | "compilerOptions": { 4 | "target": "es2015", 5 | "module": "commonjs", 6 | "outDir": "dist/cjs" 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./tsconfig-base.json", 3 | "compilerOptions": { 4 | "target": "ESNext", 5 | "module": "ESNext", 6 | "outDir": "dist/mjs", 7 | "declaration": true 8 | } 9 | } 10 | --------------------------------------------------------------------------------