@faskai/ui-commons 0.0.0-alpha.10 → 0.0.0-alpha.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,17 +1,79 @@
1
1
  # Fask UI Commons
2
2
 
3
- A minimal package containing common UI components and utilities shared between Fask applications:
3
+ A collection of reusable React components for Fask applications built with Material-UI.
4
4
 
5
- * @/fask-web-app-v2 (B2C) is hosted at fask.ai
6
- * @/fask-biz-landing (B2B landing) is at fask.ai/business
7
- * @/powpal-web-app (B2B dashboard) is at biz.fask.ai
5
+ ## Components
6
+
7
+ ### BetaMarketingBanner
8
+
9
+ A modern, lightweight marketing banner component that highlights USPs (Unique Selling Propositions) and Beta launch offer. Built with Tailwind CSS for maximum compatibility.
10
+
11
+ #### Features
12
+
13
+ - ⚡ **Fastest AI Voice Chat** - Industry-leading response times
14
+ - 🧠 **Self-Learning AI Agents** - Fine-tune with your data or bring your own LLM
15
+ - 👆 **Easiest Setup** - 1-click deployment worldwide
16
+ - 🌍 **Any Language** - Human-sounding in 100+ languages
17
+ - 🎥 **Truly Multi-Modal** - Voice, Video, and Text channels
18
+ - 📈 **Infinitely Scalable** - Grows with your business needs
19
+
20
+ #### Props
21
+
22
+ ```typescript
23
+ interface BetaMarketingBannerProps {
24
+ variant?: 'full' | 'compact'; // Layout variant (default: 'full')
25
+ showBetaOffer?: boolean; // Show/hide beta offer section (default: true)
26
+ className?: string; // Additional Tailwind classes
27
+ }
28
+ ```
29
+
30
+ #### Usage
31
+
32
+ ```tsx
33
+ import { BetaMarketingBanner } from '@faskai/ui-commons';
34
+
35
+ // Full banner with beta offer
36
+ <BetaMarketingBanner />
37
+
38
+ // Without beta offer
39
+ <BetaMarketingBanner showBetaOffer={false} />
40
+
41
+ // With custom styling
42
+ <BetaMarketingBanner className="mb-8 shadow-xl" />
43
+ ```
44
+
45
+ #### Beta Offer Details
46
+
47
+ - **50% OFF First Year** for limited customers
48
+ - Links to: `https://biz.fask.ai/billing?price-tier=beta&period=year`
49
+ - Includes animated "LIMITED TIME" badge
50
+ - Modern call-to-action button
51
+
52
+ #### Styling
53
+
54
+ The component uses Tailwind CSS and includes:
55
+ - Gradient backgrounds and emojis instead of icons
56
+ - Hover animations and transitions
57
+ - Responsive design for mobile/desktop
58
+ - Modern glassmorphism effects with backdrop-blur
59
+ - Pulse animations for urgency
60
+ - Zero external dependencies beyond React
8
61
 
9
62
  ## Installation
10
63
 
11
64
  ```bash
12
- yarn add @faskai/ui-commons@0.0.0-alpha.01
65
+ npm install fask-ui-commons
13
66
  ```
14
67
 
68
+ ## Dependencies
69
+
70
+ - React 18+
71
+ - Tailwind CSS (for styling)
72
+
73
+ ## License
74
+
75
+ Private - Fask AI
76
+
15
77
  ## Usage
16
78
 
17
79
  ### GTM Provider
@@ -0,0 +1,2 @@
1
+ export { GTMProvider } from './gtm/gtm-provider';
2
+ export { default as BetaMarketingBanner } from './marketing/BetaMarketingBanner';
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.BetaMarketingBanner = exports.GTMProvider = void 0;
7
+ var gtm_provider_1 = require("./gtm/gtm-provider");
8
+ Object.defineProperty(exports, "GTMProvider", { enumerable: true, get: function () { return gtm_provider_1.GTMProvider; } });
9
+ var BetaMarketingBanner_1 = require("./marketing/BetaMarketingBanner");
10
+ Object.defineProperty(exports, "BetaMarketingBanner", { enumerable: true, get: function () { return __importDefault(BetaMarketingBanner_1).default; } });
@@ -0,0 +1,7 @@
1
+ interface BetaMarketingBannerProps {
2
+ variant?: 'full' | 'compact';
3
+ showBetaOffer?: boolean;
4
+ className?: string;
5
+ }
6
+ export default function BetaMarketingBanner({ variant, showBetaOffer, className, }: BetaMarketingBannerProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = BetaMarketingBanner;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const features = [
6
+ {
7
+ emoji: '⚡',
8
+ title: 'Fastest AI Voice Chat',
9
+ description: 'Industry-leading response times',
10
+ bgColor: 'bg-blue-500',
11
+ },
12
+ {
13
+ emoji: '🧠',
14
+ title: 'Self-Learning AI Agents',
15
+ description: 'Fine-tune with your data or bring your own LLM',
16
+ bgColor: 'bg-purple-500',
17
+ },
18
+ {
19
+ emoji: '👆',
20
+ title: 'Easiest Setup',
21
+ description: '1-click deployment worldwide',
22
+ bgColor: 'bg-orange-500',
23
+ },
24
+ {
25
+ emoji: '🌍',
26
+ title: 'Any Language',
27
+ description: 'Human-sounding in 100+ languages',
28
+ bgColor: 'bg-green-500',
29
+ },
30
+ {
31
+ emoji: '🎥',
32
+ title: 'Truly Multi-Modal',
33
+ description: 'Voice, Video, and Text channels',
34
+ bgColor: 'bg-red-500',
35
+ },
36
+ {
37
+ emoji: '📈',
38
+ title: 'Infinitely Scalable',
39
+ description: 'Grows with your business needs',
40
+ bgColor: 'bg-yellow-600',
41
+ },
42
+ ];
43
+ function BetaMarketingBanner({ variant = 'full', showBetaOffer = true, className = '', }) {
44
+ const handleSubscribeClick = () => {
45
+ window.open('https://biz.fask.ai/billing?price-tier=beta&period=year', '_blank');
46
+ };
47
+ return ((0, jsx_runtime_1.jsxs)("div", { className: `relative overflow-hidden rounded-2xl bg-gradient-to-br from-blue-50 via-white to-purple-50 ${className}`, children: [(0, jsx_runtime_1.jsx)("div", { className: "absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-blue-500 to-purple-500" }), (0, jsx_runtime_1.jsxs)("div", { className: "max-w-6xl mx-auto px-4 py-8 md:py-12", children: [(0, jsx_runtime_1.jsxs)("div", { className: "text-center mb-8 md:mb-12", children: [(0, jsx_runtime_1.jsx)("h2", { className: "text-3xl md:text-4xl font-bold mb-4 bg-gradient-to-r from-blue-600 to-purple-600 bg-clip-text text-transparent", children: "Best-in-Class AI Features" }), (0, jsx_runtime_1.jsx)("p", { className: "text-lg text-gray-600 max-w-2xl mx-auto leading-relaxed", children: "Experience the future of customer engagement with our cutting-edge AI technology" })] }), (0, jsx_runtime_1.jsx)("div", { className: `grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 gap-6 ${showBetaOffer ? 'mb-12' : ''}`, children: features.map((feature, index) => ((0, jsx_runtime_1.jsxs)("div", { className: "group bg-white/70 backdrop-blur-sm rounded-xl p-6 border border-gray-100 hover:border-gray-200 hover:shadow-lg hover:-translate-y-1 transition-all duration-300 text-center", children: [(0, jsx_runtime_1.jsx)("div", { className: `w-14 h-14 rounded-full ${feature.bgColor} flex items-center justify-center mx-auto mb-4 text-2xl shadow-lg group-hover:shadow-xl transition-shadow duration-300`, children: feature.emoji }), (0, jsx_runtime_1.jsx)("h3", { className: "text-lg font-semibold text-gray-900 mb-2", children: feature.title }), (0, jsx_runtime_1.jsx)("p", { className: "text-sm text-gray-600 leading-relaxed", children: feature.description })] }, index))) }), showBetaOffer && ((0, jsx_runtime_1.jsxs)("div", { className: "bg-gradient-to-br from-green-50 to-blue-50 rounded-2xl border-2 border-green-200 p-6 md:p-8 text-center relative overflow-hidden", children: [(0, jsx_runtime_1.jsx)("div", { className: "absolute inset-0 bg-gradient-to-r from-green-100/20 to-blue-100/20 animate-pulse" }), (0, jsx_runtime_1.jsxs)("div", { className: "relative z-10", children: [(0, jsx_runtime_1.jsx)("div", { className: "flex justify-center mb-4", children: (0, jsx_runtime_1.jsx)("span", { className: "inline-flex items-center px-3 py-1 rounded-full text-xs font-medium bg-green-500 text-white animate-pulse", children: "LIMITED TIME" }) }), (0, jsx_runtime_1.jsx)("h3", { className: "text-2xl md:text-3xl font-bold text-gray-900 mb-2", children: "\uD83D\uDE80 Beta Launch Special" }), (0, jsx_runtime_1.jsx)("p", { className: "text-xl md:text-2xl font-bold text-green-600 mb-4", children: "50% OFF First Year" }), (0, jsx_runtime_1.jsx)("p", { className: "text-gray-600 mb-6 max-w-lg mx-auto leading-relaxed", children: "Join our exclusive Beta program and save 50% on your first year. Limited spots available for early adopters." }), (0, jsx_runtime_1.jsx)("button", { onClick: handleSubscribeClick, className: "inline-flex items-center px-8 py-3 rounded-lg bg-gradient-to-r from-blue-600 to-purple-600 hover:from-blue-700 hover:to-purple-700 text-white font-semibold text-lg shadow-lg hover:shadow-xl hover:-translate-y-0.5 transition-all duration-300", children: "Subscribe Now" }), (0, jsx_runtime_1.jsx)("p", { className: "text-xs text-gray-500 mt-4 opacity-80", children: "* Billed annually. Offer valid for limited customers only." })] })] }))] })] }));
48
+ }
package/dist/index.d.ts CHANGED
@@ -1 +1,2 @@
1
1
  export { GTMProvider } from './components/gtm/gtm-provider';
2
+ export { default as BetaMarketingBanner } from './components/marketing/BetaMarketingBanner';
package/dist/index.js CHANGED
@@ -1,5 +1,10 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GTMProvider = void 0;
6
+ exports.BetaMarketingBanner = exports.GTMProvider = void 0;
4
7
  var gtm_provider_1 = require("./components/gtm/gtm-provider");
5
8
  Object.defineProperty(exports, "GTMProvider", { enumerable: true, get: function () { return gtm_provider_1.GTMProvider; } });
9
+ var BetaMarketingBanner_1 = require("./components/marketing/BetaMarketingBanner");
10
+ Object.defineProperty(exports, "BetaMarketingBanner", { enumerable: true, get: function () { return __importDefault(BetaMarketingBanner_1).default; } });
package/package.json CHANGED
@@ -1,13 +1,15 @@
1
1
  {
2
2
  "name": "@faskai/ui-commons",
3
3
  "author": "Fask AI <arko@fask.ai>",
4
- "version": "0.0.0-alpha.10",
4
+ "version": "0.0.0-alpha.12",
5
5
  "description": "Common UI components for Fask applications.",
6
6
  "private": false,
7
7
  "main": "dist/index.js",
8
8
  "types": "dist/index.d.ts",
9
9
  "sideEffects": false,
10
- "files": ["dist"],
10
+ "files": [
11
+ "dist"
12
+ ],
11
13
  "scripts": {
12
14
  "build": "tsc"
13
15
  },
@@ -19,5 +21,6 @@
19
21
  "@types/react": "^18.0.0",
20
22
  "next": "^14.0.0",
21
23
  "typescript": "^5.0.0"
22
- }
24
+ },
25
+ "dependencies": {}
23
26
  }