{"_id":"@beacon-hq/beam","_rev":"5-c1354632c5486ec45cb7e06dbdb90c9d","name":"@beacon-hq/beam","dist-tags":{"latest":"0.1.5"},"versions":{"0.1.0":{"name":"@beacon-hq/beam","version":"0.1.0","keywords":["beam","feature-flags","feature","flags","experimentation","ab-testing","react","vue","frontend","typescript"],"author":{"name":"Davey Shafik"},"license":"MIT","_id":"@beacon-hq/beam@0.1.0","maintainers":[{"name":"dshafik","email":"me@daveyshafik.com"}],"homepage":"https://github.com/beacon-hq/beam#readme","bugs":{"url":"https://github.com/beacon-hq/beam/issues"},"dist":{"shasum":"d91966a22bb9bbf1dfdcbc992645052d1f054d37","tarball":"https://registry.npmjs.org/@beacon-hq/beam/-/beam-0.1.0.tgz","fileCount":15,"integrity":"sha512-EThVR2Rkoeiayf9UoK17796QXre1Na4ZXmgFhe1d9wA0Z9SAEYRf+80mu+YQo84GV157awcRxHmG3QiK3gRMLA==","signatures":[{"sig":"MEUCIQD9Y76sVnJoYGZwNHA/Am/Dii0qScuSfACZWWcTjIkEXgIgFg0NqwoQagFYfgFnGv700cOjx/SHrurvWN5kLN50+O0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":664928},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./vue":{"types":"./dist/vue.d.ts","import":"./dist/vue.js","require":"./dist/vue.cjs"},"./react":{"types":"./dist/react.d.ts","import":"./dist/react.js","require":"./dist/react.cjs"},"./package.json":"./package.json"},"gitHead":"44d3b67fa68127efe191f5d677d02f8a02750f72","scripts":{"dev":"vite build --watch","lint":"eslint \"src/**/*.{ts,tsx}\" --max-warnings=0","test":"vitest run","build":"vite build && vite build --mode types","clean":"rimraf dist","format":"prettier --write .","docs:dev":"vitepress dev docs","lint:fix":"eslint \"src/**/*.{ts,tsx}\" --fix","typecheck":"tsc -p tsconfig.json --noEmit","docs:build":"vitepress build docs","test:watch":"vitest","docs:preview":"vitepress preview docs","format:check":"prettier --check .","prepublishOnly":"npm run clean && npm run lint && npm run typecheck && npm run test && npm run build"},"_npmUser":{"name":"dshafik","email":"me@daveyshafik.com"},"repository":{"url":"git+https://github.com/beacon-hq/beam.git","type":"git"},"_npmVersion":"11.4.2","description":"Frontend helper for Laravel Pennant feature flags (with support for React and Vue)","directories":{"doc":"docs","test":"test"},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"d":"^1.0.2","he":"^1.2.0","ms":"^2.1.3","ws":"^8.18.3","ajv":"^6.12.6","cac":"^6.7.14","ext":"^1.7.0","ini":"^1.3.8","jju":"^1.4.0","psl":"^1.15.0","ufo":"^1.6.1","chai":"^5.2.1","glob":"^10.4.5","gopd":"^1.2.0","keyv":"^4.5.4","levn":"^0.4.1","mitt":"^3.0.1","mlly":"^1.7.4","nopt":"^7.2.1","rfdc":"^1.4.1","tr46":"^5.1.1","type":"^2.7.3","acorn":"^8.15.0","birpc":"^2.5.0","chalk":"^4.1.2","debug":"^4.4.1","fastq":"^1.19.1","isexe":"^2.0.0","json5":"^1.0.2","loupe":"^3.2.0","pathe":"^2.0.3","regex":"^6.0.1","saxes":"^6.0.0","shiki":"^2.5.0","vfile":"^6.0.3","which":"^2.0.2","abbrev":"^2.0.0","braces":"^3.0.3","ccount":"^2.0.1","dequal":"^2.0.3","devlop":"^1.1.0","esniff":"^2.0.1","espree":"^10.4.0","hasown":"^2.0.2","ignore":"^7.0.5","is-map":"^2.0.3","is-set":"^2.0.3","lodash":"^4.17.21","merge2":"^1.4.1","nanoid":"^3.3.11","nwsapi":"^2.2.21","parse5":"^7.3.0","preact":"^10.27.0","rollup":"^4.46.2","semver":"^7.7.2","uri-js":"^4.4.1","zwitch":"^2.0.4","confbox":"^0.2.2","csstype":"^3.1.3","deep-is":"^0.1.4","es5-ext":"^0.10.64","esbuild":"^0.25.9","esquery":"^1.6.0","esutils":"^2.0.3","exsolve":"^1.0.7","find-up":"^5.0.0","flatted":"^3.3.3","globals":"^14.0.0","is-glob":"^4.0.3","is-what":"^4.1.16","isarray":"^2.0.5","js-yaml":"^4.1.0","mark.js":"^8.11.1","mime-db":"^1.52.0","p-limit":"^3.1.0","pathval":"^2.0.1","postcss":"^8.5.6","resolve":"^1.22.10","reusify":"^1.1.0","siginfo":"^2.0.0","std-env":"^3.9.0","tinyspy":"^4.0.3","yallist":"^4.0.0","argparse":"^2.0.1","asynckit":"^0.4.0","cssstyle":"^4.6.0","deep-eql":"^5.0.2","doctrine":"^2.1.0","entities":"^4.5.0","fast-uri":"^3.0.6","for-each":"^0.3.5","fs-extra":"^11.3.1","fsevents":"^2.3.3","has-flag":"^4.0.0","hookable":"^5.5.3","is-regex":"^1.2.1","jsonfile":"^6.2.0","kolorist":"^1.8.0","memoizee":"^0.4.17","minimist":"^1.2.8","minipass":"^7.1.2","own-keys":"^1.0.1","p-locate":"^5.0.0","path-key":"^3.1.1","punycode":"^2.3.1","quansync":"^0.2.10","react-is":"^18.3.1","tabbable":"^6.2.0","tinyexec":"^0.3.2","tinypool":"^1.1.1","xmlchars":"^2.2.0","acorn-jsx":"^5.3.2","call-bind":"^1.0.8","callsites":"^3.1.0","cli-color":"^2.0.4","commander":"^10.0.1","data-urls":"^5.0.0","de-indent":"^1.0.2","es-errors":"^1.3.0","esrecurse":"^4.3.0","fast-glob":"^3.3.3","form-data":"^4.0.4","get-proto":"^1.0.1","graphemer":"^1.4.0","has-proto":"^1.2.0","is-bigint":"^1.1.0","is-number":"^7.0.0","is-string":"^1.1.1","is-symbol":"^1.1.1","jackspeak":"^3.4.3","js-cookie":"^3.0.5","js-tokens":"^9.0.1","local-pkg":"^1.1.1","lru-cache":"^10.4.3","lru-queue":"^0.1.0","minimatch":"^9.0.5","next-tick":"^1.1.0","picomatch":"^2.3.1","pkg-types":"^2.2.0","scheduler":"^0.23.2","set-proto":"^1.0.0","stackback":"^0.0.2","strip-bom":"^3.0.0","superjson":"^2.2.2","tinybench":"^2.9.0","url-parse":"^1.5.10","vite-node":"^3.2.4","word-wrap":"^1.2.5","wrap-ansi":"^8.1.0","agent-base":"^7.1.4","ansi-regex":"^6.1.0","call-bound":"^1.0.4","color-name":"^1.1.4","concat-map":"^0.0.1","decimal.js":"^10.6.0","es6-symbol":"^3.1.4","estraverse":"^5.3.0","fill-range":"^7.1.1","flat-cache":"^4.0.1","focus-trap":"^7.6.5","globalthis":"^1.0.4","iconv-lite":"^0.6.3","is-extglob":"^2.1.1","is-promise":"^2.2.2","is-weakmap":"^2.0.2","is-weakref":"^1.1.1","is-weakset":"^2.0.4","micromatch":"^4.0.8","mime-types":"^2.1.35","minisearch":"^7.1.2","optionator":"^0.9.4","path-parse":"^1.0.7","picocolors":"^1.1.1","prelude-ls":"^1.2.1","proto-list":"^1.2.4","source-map":"^0.6.1","sprintf-js":"^1.0.3","strip-ansi":"^7.1.0","timers-ext":"^0.1.8","tinyglobby":"^0.2.14","trim-lines":"^3.0.1","type-check":"^0.4.0","vscode-uri":"^3.1.0","whatwg-url":"^14.2.0","ajv-formats":"^3.0.1","ansi-styles":"^4.3.0","check-error":"^2.1.1","cross-spawn":"^7.0.6","emoji-regex":"^9.2.2","es-abstract":"^1.24.0","expect-type":"^1.2.2","glob-parent":"^6.0.2","graceful-fs":"^4.2.11","has-bigints":"^1.1.0","has-symbols":"^1.1.0","import-lazy":"^4.0.0","imurmurhash":"^0.1.4","is-callable":"^1.2.7","js-beautify":"^1.15.4","json-buffer":"^3.0.1","locate-path":"^6.0.0","object-keys":"^1.1.1","path-exists":"^4.0.0","path-scurry":"^1.11.1","rrweb-cssom":"^0.7.1","signal-exit":"^4.1.0","speakingurl":"^14.0.1","string-argv":"^0.3.2","symbol-tree":"^3.2.4","tinyrainbow":"^2.0.0","yocto-queue":"^0.1.0","config-chain":"^1.1.13","dunder-proto":"^1.0.1","editorconfig":"^1.0.4","es6-iterator":"^2.0.3","es6-weak-map":"^2.0.3","eslint-scope":"^8.4.0","import-fresh":"^3.3.1","is-data-view":"^1.0.2","lodash.merge":"^4.6.2","loose-envify":"^1.4.0","magic-string":"^0.30.17","resolve-from":"^4.0.0","run-parallel":"^1.2.0","safer-buffer":"^2.1.2","side-channel":"^1.1.0","string-width":"^5.1.2","tough-cookie":"^4.1.4","ts-api-utils":"^2.1.0","undici-types":"^7.10.0","universalify":"^2.0.1","algoliasearch":"^5.35.0","alien-signals":"^0.4.14","color-convert":"^2.0.1","copy-anything":"^3.0.5","estree-walker":"^2.0.2","event-emitter":"^0.3.5","function-bind":"^1.1.2","get-intrinsic":"^1.3.0","internal-slot":"^1.1.0","muggle-string":"^0.4.1","object-assign":"^4.1.1","object.assign":"^4.1.7","object.values":"^1.2.1","parent-module":"^1.0.1","requires-port":"^1.0.0","shebang-regex":"^3.0.0","source-map-js":"^1.2.1","strip-literal":"^3.0.0","unist-util-is":"^6.0.0","vfile-message":"^4.0.3","wrap-ansi-cjs":"^7.0.0","array-includes":"^3.1.9","async-function":"^1.0.0","balanced-match":"^1.0.2","delayed-stream":"^1.0.0","eastasianwidth":"^0.2.0","emoji-regex-xs":"^1.0.0","is-core-module":"^2.16.1","is-date-object":"^1.1.0","is-typed-array":"^1.1.15","object-inspect":"^1.13.4","object.groupby":"^1.0.3","querystringify":"^2.2.0","strip-ansi-cjs":"^6.0.1","supports-color":"^7.2.0","to-regex-range":"^5.0.1","tsconfig-paths":"^3.15.0","assertion-error":"^2.0.1","brace-expansion":"^2.0.2","combined-stream":"^1.0.8","es-module-lexer":"^1.7.0","es-object-atoms":"^1.1.1","es-to-primitive":"^1.3.0","fast-deep-equal":"^3.1.3","has-tostringtag":"^1.0.2","is-array-buffer":"^3.0.5","math-intrinsics":"^1.1.0","natural-compare":"^1.4.0","oniguruma-to-es":"^3.1.1","path-browserify":"^1.0.1","queue-microtask":"^1.2.3","regex-recursion":"^6.0.2","regex-utilities":"^2.3.0","safe-push-apply":"^1.0.0","safe-regex-test":"^1.1.0","search-insights":"^2.17.3","shebang-command":"^2.0.0","unbox-primitive":"^1.1.0","whatwg-encoding":"^3.1.1","whatwg-mimetype":"^4.0.0","compare-versions":"^6.1.1","data-view-buffer":"^1.0.2","fast-levenshtein":"^2.0.6","file-entry-cache":"^8.0.0","foreground-child":"^3.3.1","http-proxy-agent":"^7.0.2","is-negative-zero":"^2.0.3","is-number-object":"^1.1.1","perfect-debounce":"^1.0.0","side-channel-map":"^1.0.1","string-width-cjs":"^4.2.3","unist-util-visit":"^5.0.0","which-collection":"^1.0.2","define-properties":"^1.2.1","hast-util-to-html":"^9.0.5","https-proxy-agent":"^7.0.6","is-async-function":"^2.1.1","is-boolean-object":"^1.2.2","safe-array-concat":"^1.1.3","set-function-name":"^2.0.2","side-channel-list":"^1.0.0","w3c-xmlserializer":"^5.0.0","which-typed-array":"^1.1.19","es-define-property":"^1.0.1","es-set-tostringtag":"^2.1.0","html-void-elements":"^3.0.0","mdast-util-to-hast":"^13.2.0","object.fromentries":"^2.0.8","stringify-entities":"^4.0.4","typed-array-buffer":"^1.0.3","typed-array-length":"^1.0.7","webidl-conversions":"^7.0.0","which-builtin-type":"^1.2.1","xml-name-validator":"^5.0.0","es-shim-unscopables":"^1.1.0","eslint-module-utils":"^2.12.1","eslint-visitor-keys":"^3.4.3","require-from-string":"^2.0.2","set-function-length":"^1.2.2","strip-json-comments":"^3.1.1","unist-util-position":"^5.0.0","why-is-node-running":"^2.3.0","array.prototype.flat":"^1.3.3","define-data-property":"^1.1.4","escape-string-regexp":"^4.0.0","functions-have-names":"^1.2.3","hast-util-whitespace":"^3.0.0","json-schema-traverse":"^0.4.1","micromark-util-types":"^2.0.2","property-information":"^7.1.0","side-channel-weakmap":"^1.0.2","data-view-byte-length":"^1.0.2","data-view-byte-offset":"^1.0.1","html-encoding-sniffer":"^4.0.0","is-generator-function":"^1.1.0","micromark-util-encode":"^2.0.1","micromark-util-symbol":"^2.0.1","string.prototype.trim":"^1.2.10","which-boxed-primitive":"^1.1.1","available-typed-arrays":"^1.0.7","comma-separated-tokens":"^2.0.3","get-symbol-description":"^1.1.0","is-shared-array-buffer":"^1.0.4","package-json-from-dist":"^1.0.1","react-shallow-renderer":"^16.15.0","reflect.getprototypeof":"^1.0.10","regexp.prototype.flags":"^1.5.4","space-separated-tokens":"^2.0.2","array.prototype.flatmap":"^1.3.3","call-bind-apply-helpers":"^1.0.2","function.prototype.name":"^1.1.8","is-finalizationregistry":"^1.1.1","is-fullwidth-code-point":"^3.0.0","stop-iteration-iterator":"^1.1.0","typed-array-byte-length":"^1.0.3","typed-array-byte-offset":"^1.0.4","array-buffer-byte-length":"^1.0.2","character-entities-html4":"^2.1.0","has-property-descriptors":"^1.0.2","micromark-util-character":"^2.1.1","string.prototype.trimend":"^1.0.9","unist-util-visit-parents":"^6.0.1","character-entities-legacy":"^3.0.0","fast-json-stable-stringify":"^2.1.0","possible-typed-array-names":"^1.1.0","string.prototype.trimstart":"^1.0.8","vue-component-type-helpers":"^2.2.12","arraybuffer.prototype.slice":"^1.0.4","eslint-import-resolver-node":"^0.3.9","micromark-util-sanitize-uri":"^2.0.1","array.prototype.findlastindex":"^1.2.6","unist-util-stringify-position":"^4.0.0","supports-preserve-symlinks-flag":"^1.0.0","is-potential-custom-element-name":"^1.0.1","json-stable-stringify-without-jsonify":"^1.0.1"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.4.29","vite":"^7.1.2","jsdom":"^24.1.0","react":"^18.2.0","eslint":"^9.9.0","rimraf":"^5.0.5","vitest":"^3.2.4","prettier":"^3.6.2","vitepress":"^1.6.4","typescript":"^5.5.4","@types/node":"^24.2.1","@types/react":"^18.3.23","@vue/test-utils":"^2.4.5","vite-plugin-dts":"^4.5.4","react-test-renderer":"^18.2.0","eslint-plugin-import":"^2.29.1","eslint-config-prettier":"^9.1.0","@typescript-eslint/parser":"^8.0.0","vitepress-versioning-plugin":"^1.3.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"peerDependencies":{"vue":">=3","react":">=17"},"peerDependenciesMeta":{"vue":{"optional":true},"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/beam_0.1.0_1755092195237_0.9786318994120453","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@beacon-hq/beam","version":"0.1.1","keywords":["beam","feature-flags","feature","flags","experimentation","ab-testing","react","vue","frontend","typescript"],"author":{"name":"Davey Shafik"},"license":"MIT","_id":"@beacon-hq/beam@0.1.1","maintainers":[{"name":"dshafik","email":"me@daveyshafik.com"}],"homepage":"https://beam.beacon-hq.dev","bugs":{"url":"https://github.com/beacon-hq/beam/issues"},"dist":{"shasum":"e103d2689a833f164b5461bd1cc0437fc21ab14d","tarball":"https://registry.npmjs.org/@beacon-hq/beam/-/beam-0.1.1.tgz","fileCount":3,"integrity":"sha512-ikCJXFo9TSSSAo6CJf5ttKHNz1EwyP2NVF8MfPtGzBAOVTX2Kdb1+zH8ShcrMz4nHJShNM7NDQV9Qb4vC0qfow==","signatures":[{"sig":"MEYCIQCEjLmT5IyxjIRWnvz/A3Q5ltmDlsKABB9HWe4vhLckOwIhAOxvonzV5F22C6SUIFQiqnVAsjnehuVEGRoCawXazCcC","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6619},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./vue":{"types":"./dist/vue.d.ts","import":"./dist/vue.js","require":"./dist/vue.cjs"},"./react":{"types":"./dist/react.d.ts","import":"./dist/react.js","require":"./dist/react.cjs"},"./package.json":"./package.json"},"gitHead":"6f1edabce2704c7a3a60079a7694c9236d15cb10","scripts":{"dev":"vite build --watch","lint":"eslint \"src/**/*.{ts,tsx}\" --max-warnings=0","test":"vitest run","build":"vite build && vite build --mode types","clean":"rimraf dist","format":"prettier --write .","docs:dev":"vitepress dev docs","lint:fix":"eslint \"src/**/*.{ts,tsx}\" --fix","typecheck":"tsc -p tsconfig.json --noEmit","docs:build":"vitepress build docs","test:watch":"vitest","docs:preview":"vitepress preview docs","format:check":"prettier --check .","prepublishOnly":"npm run clean && npm run lint && npm run typecheck && npm run test && npm run build"},"_npmUser":{"name":"dshafik","email":"me@daveyshafik.com"},"repository":{"url":"git+https://github.com/beacon-hq/beam.git","type":"git"},"_npmVersion":"10.8.2","description":"Frontend helper for Laravel Pennant feature flags (with support for React and Vue)","directories":{"doc":"docs","test":"test"},"_nodeVersion":"20.19.4","_hasShrinkwrap":false,"devDependencies":{"vue":"^3.4.29","vite":"^7.1.2","jsdom":"^24.1.0","react":"^18.2.0","eslint":"^9.9.0","rimraf":"^5.0.5","vitest":"^3.2.4","prettier":"^3.6.2","vitepress":"^1.6.4","typescript":"^5.5.4","@types/node":"^24.2.1","@types/react":"^18.3.23","@vue/test-utils":"^2.4.5","vite-plugin-dts":"^4.5.4","react-test-renderer":"^18.2.0","eslint-plugin-import":"^2.29.1","eslint-config-prettier":"^9.1.0","@typescript-eslint/parser":"^8.0.0","vitepress-versioning-plugin":"^1.3.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"peerDependencies":{"vue":">=3","react":">=17"},"peerDependenciesMeta":{"vue":{"optional":true},"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/beam_0.1.1_1755093864697_0.8489611432927147","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@beacon-hq/beam","version":"0.1.3","keywords":["beam","feature-flags","feature","flags","experimentation","ab-testing","react","vue","frontend","typescript"],"author":{"name":"Davey Shafik"},"license":"MIT","_id":"@beacon-hq/beam@0.1.3","maintainers":[{"name":"dshafik","email":"me@daveyshafik.com"}],"homepage":"https://beam.beacon-hq.dev","bugs":{"url":"https://github.com/beacon-hq/beam/issues"},"dist":{"shasum":"81074a3481d8f3b8caa758bfd388a0a9e17413ad","tarball":"https://registry.npmjs.org/@beacon-hq/beam/-/beam-0.1.3.tgz","fileCount":3,"integrity":"sha512-HKw+d1piR9R7YESxbPCTJgm4db9CM4uPKbfj86UvhTROnkuwu1EugGFLW6x91rfhf/zM5r7NHbBb/B2HdkBtpw==","signatures":[{"sig":"MEUCIB4ttP3qcUK3Swe6UFMytnGkAawPc83a4M8K9y2w/LY9AiEA7m4MlDfJ0E/BU440Nab8gBhVEc+MiU0SZyozijfaFsI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6619},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./vue":{"types":"./dist/vue.d.ts","import":"./dist/vue.js","require":"./dist/vue.cjs"},"./react":{"types":"./dist/react.d.ts","import":"./dist/react.js","require":"./dist/react.cjs"},"./package.json":"./package.json"},"gitHead":"110f494247e91557aca64cae244e816d7022c411","scripts":{"dev":"vite build --watch","lint":"eslint \"src/**/*.{ts,tsx}\" --max-warnings=0","test":"vitest run","build":"vite build && vite build --mode types","clean":"rimraf dist","format":"prettier --write .","docs:dev":"vitepress dev docs","lint:fix":"eslint \"src/**/*.{ts,tsx}\" --fix","typecheck":"tsc -p tsconfig.json --noEmit","docs:build":"vitepress build docs","test:watch":"vitest","docs:preview":"vitepress preview docs","format:check":"prettier --check .","prepublishOnly":"npm run clean && npm run lint && npm run typecheck && npm run test && npm run build"},"_npmUser":{"name":"dshafik","email":"me@daveyshafik.com"},"repository":{"url":"git+https://github.com/beacon-hq/beam.git","type":"git"},"_npmVersion":"10.8.2","description":"Frontend helper for Laravel Pennant feature flags (with support for React and Vue)","directories":{"doc":"docs","test":"test"},"_nodeVersion":"20.19.4","_hasShrinkwrap":false,"devDependencies":{"vue":"^3.4.29","vite":"^7.1.2","jsdom":"^24.1.0","react":"^18.2.0","eslint":"^9.9.0","rimraf":"^5.0.5","vitest":"^3.2.4","prettier":"^3.6.2","vitepress":"^1.6.4","typescript":"^5.5.4","@types/node":"^24.2.1","@types/react":"^18.3.23","@vue/test-utils":"^2.4.5","vite-plugin-dts":"^4.5.4","react-test-renderer":"^18.2.0","eslint-plugin-import":"^2.29.1","eslint-config-prettier":"^9.1.0","@typescript-eslint/parser":"^8.0.0","vitepress-versioning-plugin":"^1.3.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"peerDependencies":{"vue":">=3","react":">=17"},"peerDependenciesMeta":{"vue":{"optional":true},"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/beam_0.1.3_1755103429288_0.5524693468755959","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@beacon-hq/beam","version":"0.1.4","keywords":["beam","feature-flags","feature","flags","experimentation","ab-testing","react","vue","frontend","typescript"],"author":{"name":"Davey Shafik"},"license":"MIT","_id":"@beacon-hq/beam@0.1.4","maintainers":[{"name":"dshafik","email":"me@daveyshafik.com"}],"homepage":"https://beam.beacon-hq.dev","bugs":{"url":"https://github.com/beacon-hq/beam/issues"},"dist":{"shasum":"14311c2abaa696915c595d4dcbdc6c4708809abc","tarball":"https://registry.npmjs.org/@beacon-hq/beam/-/beam-0.1.4.tgz","fileCount":3,"integrity":"sha512-UPX7fACMaFrMZOS4vvYt+Bd7GOzCrDejfdxIEImr5iSCZ2X3oAPQuv+y4XQuY0ukl0v4EjuHdx9M065g6c71bg==","signatures":[{"sig":"MEUCIQCWb5Hm0bOW485pO27zHgHjFSaYopdE9dApxyUbXwBiJgIgfu+FU0H+IrDXRMUH1MujZ+NKQXtm73by1R6iw5JqAhI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6492},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./vue":{"types":"./dist/vue.d.ts","import":"./dist/vue.js"},"./react":{"types":"./dist/react.d.ts","import":"./dist/react.js"},"./package.json":"./package.json"},"gitHead":"827520512730e0f14b64bf9e530df52422bd8292","scripts":{"dev":"vite build --watch","lint":"eslint \"src/**/*.{ts,tsx}\" --max-warnings=0","test":"vitest run","build":"vite build && vite build --mode types","clean":"rimraf dist","format":"prettier --write .","docs:dev":"vitepress dev docs","lint:fix":"eslint \"src/**/*.{ts,tsx}\" --fix","typecheck":"tsc -p tsconfig.json --noEmit","docs:build":"vitepress build docs","test:watch":"vitest","docs:preview":"vitepress preview docs","format:check":"prettier --check .","prepublishOnly":"npm run clean && npm run lint && npm run typecheck && npm run test && npm run build"},"_npmUser":{"name":"dshafik","email":"me@daveyshafik.com"},"repository":{"url":"git+https://github.com/beacon-hq/beam.git","type":"git"},"_npmVersion":"10.8.2","description":"Frontend helper for Laravel Pennant feature flags (with support for React and Vue)","directories":{"doc":"docs","test":"test"},"_nodeVersion":"20.19.4","_hasShrinkwrap":false,"devDependencies":{"vue":"^3.4.29","vite":"^7.1.2","jsdom":"^24.1.0","react":"^18.2.0","eslint":"^9.9.0","rimraf":"^5.0.5","vitest":"^3.2.4","prettier":"^3.6.2","vitepress":"^1.6.4","typescript":"^5.5.4","@types/node":"^24.2.1","@types/react":"^18.3.23","@vue/test-utils":"^2.4.5","vite-plugin-dts":"^4.5.4","react-test-renderer":"^18.2.0","eslint-plugin-import":"^2.29.1","eslint-config-prettier":"^9.1.0","@typescript-eslint/parser":"^8.0.0","vitepress-versioning-plugin":"^1.3.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"peerDependencies":{"vue":">=3","react":">=17"},"peerDependenciesMeta":{"vue":{"optional":true},"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/beam_0.1.4_1755134003820_0.5455334572259847","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@beacon-hq/beam","version":"0.1.5","description":"Frontend helper for Laravel Pennant feature flags (with support for React and Vue)","keywords":["beam","feature-flags","feature","flags","experimentation","ab-testing","react","vue","frontend","typescript"],"homepage":"https://beam.beacon-hq.dev","bugs":{"url":"https://github.com/beacon-hq/beam/issues"},"repository":{"type":"git","url":"git+https://github.com/beacon-hq/beam.git"},"license":"MIT","author":{"name":"Davey Shafik"},"type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./react":{"types":"./dist/react.d.ts","import":"./dist/react.js","default":"./dist/react.js"},"./vue":{"types":"./dist/vue.d.ts","import":"./dist/vue.js","default":"./dist/vue.js"},"./package.json":"./package.json"},"main":"./dist/index.js","types":"./dist/index.d.ts","directories":{"doc":"docs","test":"test"},"scripts":{"build":"vite build && vite build --mode types","clean":"rimraf dist","dev":"vite build --watch","prepare":"npm run build","prepublishOnly":"npm run clean && npm run lint && npm run typecheck && npm run test && npm run build","test":"vitest run","test:watch":"vitest","typecheck":"tsc -p tsconfig.json --noEmit","lint":"eslint \"src/**/*.{ts,tsx}\" --max-warnings=0","lint:fix":"eslint \"src/**/*.{ts,tsx}\" --fix","format":"prettier --write .","format:check":"prettier --check .","docs:dev":"vitepress dev docs","docs:build":"vitepress build docs","docs:preview":"vitepress preview docs"},"devDependencies":{"@types/node":"^24.2.1","@types/react":"^18.3.23","@typescript-eslint/eslint-plugin":"^8.0.0","@typescript-eslint/parser":"^8.0.0","@vue/test-utils":"^2.4.5","eslint":"^9.9.0","eslint-config-prettier":"^9.1.0","eslint-plugin-import":"^2.29.1","jsdom":"^24.1.0","prettier":"^3.6.2","react":"^18.2.0","react-test-renderer":"^18.2.0","rimraf":"^5.0.5","typescript":"^5.5.4","vite":"^7.1.2","vite-plugin-dts":"^4.5.4","vitepress":"^1.6.4","vitepress-versioning-plugin":"^1.3.0","vitest":"^3.2.4","vue":"^3.4.29"},"peerDependencies":{"react":">=17","vue":">=3"},"peerDependenciesMeta":{"react":{"optional":true},"vue":{"optional":true}},"engines":{"node":">=18"},"module":"./dist/index.js","_id":"@beacon-hq/beam@0.1.5","gitHead":"3b070c54b3d985b05ba368fbe269af0569f71bb8","_nodeVersion":"20.19.5","_npmVersion":"10.8.2","dist":{"integrity":"sha512-ZRQ1EOwXJVJYJDs64Wm+RbaJ0vsv78n8VOIconWPcK1HQAyGSvHekyhXAUgMEPwB3xi+xBqz3JWtZPes6Am9Iw==","shasum":"ff93f3ba0bbe7913ce73cccb13c1561b30e777b7","tarball":"https://registry.npmjs.org/@beacon-hq/beam/-/beam-0.1.5.tgz","fileCount":15,"unpackedSize":707818,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCLmRjEzSeEtftUfcnY9EqKjFtmzPVKTWvUrtKCn3rEjgIhAKuyM+np5nLw3ee8VFKybXMrljaLV2xmCrVTDlMqdz5c"}]},"_npmUser":{"name":"dshafik","email":"me@daveyshafik.com"},"maintainers":[{"name":"dshafik","email":"me@daveyshafik.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/beam_0.1.5_1760383709098_0.6220082212393909"},"_hasShrinkwrap":false}},"time":{"created":"2025-08-13T13:36:35.065Z","modified":"2025-10-13T19:28:29.609Z","0.1.0":"2025-08-13T13:36:35.558Z","0.1.1":"2025-08-13T14:04:24.862Z","0.1.3":"2025-08-13T16:43:49.464Z","0.1.4":"2025-08-14T01:13:23.998Z","0.1.5":"2025-10-13T19:28:29.384Z"},"bugs":{"url":"https://github.com/beacon-hq/beam/issues"},"author":{"name":"Davey Shafik"},"license":"MIT","homepage":"https://beam.beacon-hq.dev","keywords":["beam","feature-flags","feature","flags","experimentation","ab-testing","react","vue","frontend","typescript"],"repository":{"type":"git","url":"git+https://github.com/beacon-hq/beam.git"},"description":"Frontend helper for Laravel Pennant feature flags (with support for React and Vue)","maintainers":[{"name":"dshafik","email":"me@daveyshafik.com"}],"readme":"# @beacon-hq/beam\n\nFrontend helper for Laravel Pennant feature flags (with support for React and Vue).\n\nThis repository is set up as a high-quality TypeScript library with:\n\n- Strict TypeScript config and generated types\n- Vite library build (ESM + CJS) with source maps\n- Vitest for fast unit tests\n- ESLint + Prettier for consistency\n- Exports map and sideEffects for tree-shaking\n\n## Install\n\nnpm install @beacon-hq/beam\n\n## Quickstart (Core)\n\n```ts\nimport { Beam, beam } from '@beacon-hq/beam';\n\nwindow.Beam = new Beam();\nconst active = await window.Beam.active('new-ui');\n\n// OR: use the singleton\nconst val = await beam().value<string>('experiment', 'control');\n```\n\n### API (Core)\n\n- active(flag: string, context?): Promise<boolean>\n- inactive(flag: string, context?): Promise<boolean>\n- value<T>(flag: string, defaultValue?: T, context?): Promise<T>\n- get(flag: string, context?): Promise<{ featureFlag: string; status: boolean; value?: unknown }>\n- clearCache(): void\n\nNotes:\n\n- baseUrl defaults to the current origin (window.location), path defaults to '/beam/feature-flag'.\n- Requests are POSTed to `${baseUrl}${path}`.\n- Built-in timeout uses AbortSignal when supported.\n\n## React\n\n```tsx\nimport { useFeatureFlag } from '@beacon-hq/beam/react';\n\nfunction Component() {\n    const { status, value, loading, refresh } = useFeatureFlag<string>('experiment', { defaultValue: 'control' });\n    if (loading) return <span>Loading…</span>;\n    return (\n        <div>\n            {status ? `Variant: ${value}` : 'Feature Off'}\n            <button onClick={() => refresh()}>Refresh</button>\n        </div>\n    );\n}\n```\n\n## Vue 3\n\n```vue\n<script setup lang=\"ts\">\nimport { useFeatureFlag } from '@beacon-hq/beam/vue';\nconst state = useFeatureFlag<string>('experiment', { defaultValue: 'control' });\n</script>\n\n<template>\n    <span v-if=\"state.loading\">Loading…</span>\n    <div v-else>\n        <template v-if=\"state.status\">Variant: {{ state.value }}</template>\n        <template v-else>Feature Off</template>\n    </div>\n</template>\n```\n\n## Scripts\n\n- build: Build ESM and CJS bundles and generate .d.ts\n- test: Run unit tests\n- typecheck: TypeScript type-checking only\n- lint / lint:fix: ESLint checks\n- format / format:check: Prettier formatting\n\n## Development\n\n- Node.js >= 18\n- React and Vue are optional peerDependencies and are not bundled.\n\n## License\n\nSee LICENSE.md.\n","readmeFilename":"README.md"}