@ziyarago/ui 0.6.1 → 0.8.0
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/CHANGELOG.md +12 -0
- package/README.md +4 -4
- package/dist/llms-full.txt +204 -2
- package/dist/llms.txt +15 -3
- package/dist/manifest.json +2572 -743
- package/package.json +2 -2
- package/src/core/pages.js +13 -1
- package/src/meta/groups.js +1 -1
- package/src/meta/pages.js +148 -0
- package/src/meta/templates.json +1448 -1
- package/src/react/index.js +12 -0
- package/src/vue/index.js +1 -1
- package/types/react.d.ts +659 -0
- package/types/vue-global.d.ts +12 -0
- package/types/vue.d.ts +447 -0
package/src/meta/templates.json
CHANGED
|
@@ -2417,6 +2417,1453 @@
|
|
|
2417
2417
|
"use": "<UiAccordion :items=\"faq\" />"
|
|
2418
2418
|
}
|
|
2419
2419
|
]
|
|
2420
|
+
},
|
|
2421
|
+
{
|
|
2422
|
+
"key": "landing",
|
|
2423
|
+
"route": "landing",
|
|
2424
|
+
"label": "Landing",
|
|
2425
|
+
"icon": "rocket",
|
|
2426
|
+
"desc": "Marketing page: hero, logos, feature grid, social proof, pricing teaser, final call to action and footer.",
|
|
2427
|
+
"component": "PageLanding",
|
|
2428
|
+
"tpl": "TplLanding",
|
|
2429
|
+
"shell": false,
|
|
2430
|
+
"slots": [
|
|
2431
|
+
{
|
|
2432
|
+
"id": "hero",
|
|
2433
|
+
"title": "Hero",
|
|
2434
|
+
"desc": "Headline, subtitle and two buttons on a gradient card.",
|
|
2435
|
+
"accepts": [
|
|
2436
|
+
"HeroBanner",
|
|
2437
|
+
"Card",
|
|
2438
|
+
"Button"
|
|
2439
|
+
],
|
|
2440
|
+
"props": [
|
|
2441
|
+
{
|
|
2442
|
+
"name": "title",
|
|
2443
|
+
"type": "string",
|
|
2444
|
+
"desc": "H1 and a short supporting line"
|
|
2445
|
+
}
|
|
2446
|
+
],
|
|
2447
|
+
"use": "<UiHeroBanner title=\"Plan your Umrah\" cta=\"Get started\" />"
|
|
2448
|
+
},
|
|
2449
|
+
{
|
|
2450
|
+
"id": "logos",
|
|
2451
|
+
"title": "Logo strip",
|
|
2452
|
+
"desc": "Row of partner names under the hero.",
|
|
2453
|
+
"accepts": [
|
|
2454
|
+
"Chip",
|
|
2455
|
+
"Text"
|
|
2456
|
+
],
|
|
2457
|
+
"props": [
|
|
2458
|
+
{
|
|
2459
|
+
"name": "items",
|
|
2460
|
+
"type": "string[]",
|
|
2461
|
+
"desc": "Partner names"
|
|
2462
|
+
}
|
|
2463
|
+
],
|
|
2464
|
+
"use": "<UiChip pill>Hilton</UiChip>"
|
|
2465
|
+
},
|
|
2466
|
+
{
|
|
2467
|
+
"id": "features",
|
|
2468
|
+
"title": "Features",
|
|
2469
|
+
"desc": "Grid of icon, title and text cards.",
|
|
2470
|
+
"accepts": [
|
|
2471
|
+
"Card",
|
|
2472
|
+
"IconTile"
|
|
2473
|
+
],
|
|
2474
|
+
"props": [
|
|
2475
|
+
{
|
|
2476
|
+
"name": "items",
|
|
2477
|
+
"type": "{icon,title,text}[]",
|
|
2478
|
+
"desc": "Three to six features"
|
|
2479
|
+
}
|
|
2480
|
+
],
|
|
2481
|
+
"use": "<UiCard title=\"Offline guides\">…</UiCard>"
|
|
2482
|
+
},
|
|
2483
|
+
{
|
|
2484
|
+
"id": "proof",
|
|
2485
|
+
"title": "Social proof",
|
|
2486
|
+
"desc": "Stats strip and customer quotes.",
|
|
2487
|
+
"accepts": [
|
|
2488
|
+
"StatStrip",
|
|
2489
|
+
"Card",
|
|
2490
|
+
"Avatar"
|
|
2491
|
+
],
|
|
2492
|
+
"props": [
|
|
2493
|
+
{
|
|
2494
|
+
"name": "items",
|
|
2495
|
+
"type": "{value,label}[]",
|
|
2496
|
+
"desc": "Headline numbers"
|
|
2497
|
+
}
|
|
2498
|
+
],
|
|
2499
|
+
"use": "<UiStatStrip :items=\"stats\" />"
|
|
2500
|
+
},
|
|
2501
|
+
{
|
|
2502
|
+
"id": "pricing",
|
|
2503
|
+
"title": "Pricing teaser",
|
|
2504
|
+
"desc": "Two or three plans with a link to the full pricing page.",
|
|
2505
|
+
"accepts": [
|
|
2506
|
+
"PricingCard",
|
|
2507
|
+
"Button"
|
|
2508
|
+
],
|
|
2509
|
+
"props": [
|
|
2510
|
+
{
|
|
2511
|
+
"name": "plans",
|
|
2512
|
+
"type": "Plan[]",
|
|
2513
|
+
"desc": "Name, price, features"
|
|
2514
|
+
}
|
|
2515
|
+
],
|
|
2516
|
+
"use": "<UiPricingCard name=\"Plus\" price=\"$4.99\" />"
|
|
2517
|
+
},
|
|
2518
|
+
{
|
|
2519
|
+
"id": "cta",
|
|
2520
|
+
"title": "Call to action",
|
|
2521
|
+
"desc": "Closing block with one primary button.",
|
|
2522
|
+
"accepts": [
|
|
2523
|
+
"Card",
|
|
2524
|
+
"Button"
|
|
2525
|
+
],
|
|
2526
|
+
"props": [
|
|
2527
|
+
{
|
|
2528
|
+
"name": "cta",
|
|
2529
|
+
"type": "string",
|
|
2530
|
+
"desc": "Button label"
|
|
2531
|
+
}
|
|
2532
|
+
],
|
|
2533
|
+
"use": "<UiCard variant=\"gradient\">…</UiCard>"
|
|
2534
|
+
},
|
|
2535
|
+
{
|
|
2536
|
+
"id": "footer",
|
|
2537
|
+
"title": "Footer",
|
|
2538
|
+
"desc": "Copyright and links.",
|
|
2539
|
+
"accepts": [
|
|
2540
|
+
"Footer"
|
|
2541
|
+
],
|
|
2542
|
+
"props": [
|
|
2543
|
+
{
|
|
2544
|
+
"name": "links",
|
|
2545
|
+
"type": "{label,href}[]",
|
|
2546
|
+
"desc": ""
|
|
2547
|
+
}
|
|
2548
|
+
],
|
|
2549
|
+
"use": "<UiFooter copyright=\"© 2026\" :links=\"links\" />"
|
|
2550
|
+
}
|
|
2551
|
+
]
|
|
2552
|
+
},
|
|
2553
|
+
{
|
|
2554
|
+
"key": "onboarding",
|
|
2555
|
+
"route": "onboarding",
|
|
2556
|
+
"label": "Onboarding",
|
|
2557
|
+
"icon": "list-checks",
|
|
2558
|
+
"desc": "First-run setup: progress, step content, checklist and side tips.",
|
|
2559
|
+
"component": "PageOnboarding",
|
|
2560
|
+
"tpl": "TplOnboarding",
|
|
2561
|
+
"shell": true,
|
|
2562
|
+
"slots": [
|
|
2563
|
+
{
|
|
2564
|
+
"id": "header",
|
|
2565
|
+
"title": "Page heading",
|
|
2566
|
+
"desc": "Breadcrumbs, heading, caption and action buttons on the right.",
|
|
2567
|
+
"accepts": [
|
|
2568
|
+
"PageHeader",
|
|
2569
|
+
"Breadcrumbs",
|
|
2570
|
+
"Button",
|
|
2571
|
+
"SegmentedControl"
|
|
2572
|
+
],
|
|
2573
|
+
"props": [
|
|
2574
|
+
{
|
|
2575
|
+
"name": "title",
|
|
2576
|
+
"type": "string",
|
|
2577
|
+
"desc": "H1, up to 60 characters"
|
|
2578
|
+
},
|
|
2579
|
+
{
|
|
2580
|
+
"name": "subtitle",
|
|
2581
|
+
"type": "string?",
|
|
2582
|
+
"desc": "Gray caption below the heading"
|
|
2583
|
+
},
|
|
2584
|
+
{
|
|
2585
|
+
"name": "crumbs",
|
|
2586
|
+
"type": "{label,href?}[]",
|
|
2587
|
+
"desc": "Breadcrumbs"
|
|
2588
|
+
},
|
|
2589
|
+
{
|
|
2590
|
+
"name": "actions",
|
|
2591
|
+
"type": "VNode",
|
|
2592
|
+
"desc": "Buttons on the right; wrap below on a narrow screen"
|
|
2593
|
+
}
|
|
2594
|
+
],
|
|
2595
|
+
"use": "<UiPageHeader title=\"Dashboard\" :crumbs=\"crumbs\">\n <template #actions><UiButton variant=\"primary\">Export</UiButton></template>\n</UiPageHeader>"
|
|
2596
|
+
},
|
|
2597
|
+
{
|
|
2598
|
+
"id": "progress",
|
|
2599
|
+
"title": "Progress",
|
|
2600
|
+
"desc": "Stepper and overall completion bar.",
|
|
2601
|
+
"accepts": [
|
|
2602
|
+
"Stepper",
|
|
2603
|
+
"Progress"
|
|
2604
|
+
],
|
|
2605
|
+
"props": [
|
|
2606
|
+
{
|
|
2607
|
+
"name": "current",
|
|
2608
|
+
"type": "number",
|
|
2609
|
+
"desc": "Index of the active step"
|
|
2610
|
+
}
|
|
2611
|
+
],
|
|
2612
|
+
"use": "<UiStepper :steps=\"steps\" :current=\"1\" />"
|
|
2613
|
+
},
|
|
2614
|
+
{
|
|
2615
|
+
"id": "steps",
|
|
2616
|
+
"title": "Step content",
|
|
2617
|
+
"desc": "Form or choice for the active step.",
|
|
2618
|
+
"accepts": [
|
|
2619
|
+
"Card",
|
|
2620
|
+
"TextField",
|
|
2621
|
+
"OptionCards",
|
|
2622
|
+
"Button"
|
|
2623
|
+
],
|
|
2624
|
+
"props": [
|
|
2625
|
+
{
|
|
2626
|
+
"name": "step",
|
|
2627
|
+
"type": "number",
|
|
2628
|
+
"desc": "Active step"
|
|
2629
|
+
}
|
|
2630
|
+
],
|
|
2631
|
+
"use": "<UiCard title=\"Your company\">…</UiCard>"
|
|
2632
|
+
},
|
|
2633
|
+
{
|
|
2634
|
+
"id": "checklist",
|
|
2635
|
+
"title": "Checklist",
|
|
2636
|
+
"desc": "Tasks to finish setup with done marks.",
|
|
2637
|
+
"accepts": [
|
|
2638
|
+
"Card",
|
|
2639
|
+
"Checkbox",
|
|
2640
|
+
"Progress"
|
|
2641
|
+
],
|
|
2642
|
+
"props": [
|
|
2643
|
+
{
|
|
2644
|
+
"name": "items",
|
|
2645
|
+
"type": "{id,label,done}[]",
|
|
2646
|
+
"desc": ""
|
|
2647
|
+
}
|
|
2648
|
+
],
|
|
2649
|
+
"use": "<UiCheckbox v-model=\"done\" label=\"Add a hotel\" />"
|
|
2650
|
+
},
|
|
2651
|
+
{
|
|
2652
|
+
"id": "tips",
|
|
2653
|
+
"title": "Tips",
|
|
2654
|
+
"desc": "Side cards with help and a contact link.",
|
|
2655
|
+
"accepts": [
|
|
2656
|
+
"Card",
|
|
2657
|
+
"IconTile",
|
|
2658
|
+
"Button"
|
|
2659
|
+
],
|
|
2660
|
+
"props": [
|
|
2661
|
+
{
|
|
2662
|
+
"name": "tips",
|
|
2663
|
+
"type": "{icon,title,text}[]",
|
|
2664
|
+
"desc": ""
|
|
2665
|
+
}
|
|
2666
|
+
],
|
|
2667
|
+
"use": "<UiCard title=\"Need help?\">…</UiCard>"
|
|
2668
|
+
}
|
|
2669
|
+
]
|
|
2670
|
+
},
|
|
2671
|
+
{
|
|
2672
|
+
"key": "checkout",
|
|
2673
|
+
"route": "checkout",
|
|
2674
|
+
"label": "Checkout",
|
|
2675
|
+
"icon": "shopping-cart",
|
|
2676
|
+
"desc": "Checkout: steps, cart items, address, payment method and an order summary.",
|
|
2677
|
+
"component": "PageCheckout",
|
|
2678
|
+
"tpl": "TplCheckout",
|
|
2679
|
+
"shell": true,
|
|
2680
|
+
"slots": [
|
|
2681
|
+
{
|
|
2682
|
+
"id": "header",
|
|
2683
|
+
"title": "Page heading",
|
|
2684
|
+
"desc": "Breadcrumbs, heading, caption and action buttons on the right.",
|
|
2685
|
+
"accepts": [
|
|
2686
|
+
"PageHeader",
|
|
2687
|
+
"Breadcrumbs",
|
|
2688
|
+
"Button",
|
|
2689
|
+
"SegmentedControl"
|
|
2690
|
+
],
|
|
2691
|
+
"props": [
|
|
2692
|
+
{
|
|
2693
|
+
"name": "title",
|
|
2694
|
+
"type": "string",
|
|
2695
|
+
"desc": "H1, up to 60 characters"
|
|
2696
|
+
},
|
|
2697
|
+
{
|
|
2698
|
+
"name": "subtitle",
|
|
2699
|
+
"type": "string?",
|
|
2700
|
+
"desc": "Gray caption below the heading"
|
|
2701
|
+
},
|
|
2702
|
+
{
|
|
2703
|
+
"name": "crumbs",
|
|
2704
|
+
"type": "{label,href?}[]",
|
|
2705
|
+
"desc": "Breadcrumbs"
|
|
2706
|
+
},
|
|
2707
|
+
{
|
|
2708
|
+
"name": "actions",
|
|
2709
|
+
"type": "VNode",
|
|
2710
|
+
"desc": "Buttons on the right; wrap below on a narrow screen"
|
|
2711
|
+
}
|
|
2712
|
+
],
|
|
2713
|
+
"use": "<UiPageHeader title=\"Dashboard\" :crumbs=\"crumbs\">\n <template #actions><UiButton variant=\"primary\">Export</UiButton></template>\n</UiPageHeader>"
|
|
2714
|
+
},
|
|
2715
|
+
{
|
|
2716
|
+
"id": "steps",
|
|
2717
|
+
"title": "Steps",
|
|
2718
|
+
"desc": "Cart, details, payment, done.",
|
|
2719
|
+
"accepts": [
|
|
2720
|
+
"Stepper"
|
|
2721
|
+
],
|
|
2722
|
+
"props": [
|
|
2723
|
+
{
|
|
2724
|
+
"name": "current",
|
|
2725
|
+
"type": "number",
|
|
2726
|
+
"desc": ""
|
|
2727
|
+
}
|
|
2728
|
+
],
|
|
2729
|
+
"use": "<UiStepper :steps=\"steps\" :current=\"1\" />"
|
|
2730
|
+
},
|
|
2731
|
+
{
|
|
2732
|
+
"id": "items",
|
|
2733
|
+
"title": "Cart items",
|
|
2734
|
+
"desc": "Lines with quantity and price.",
|
|
2735
|
+
"accepts": [
|
|
2736
|
+
"Card",
|
|
2737
|
+
"NumberInput",
|
|
2738
|
+
"IconButton"
|
|
2739
|
+
],
|
|
2740
|
+
"props": [
|
|
2741
|
+
{
|
|
2742
|
+
"name": "items",
|
|
2743
|
+
"type": "{title,qty,price}[]",
|
|
2744
|
+
"desc": ""
|
|
2745
|
+
}
|
|
2746
|
+
],
|
|
2747
|
+
"use": "<UiCard title=\"Your cart\">…</UiCard>"
|
|
2748
|
+
},
|
|
2749
|
+
{
|
|
2750
|
+
"id": "address",
|
|
2751
|
+
"title": "Address",
|
|
2752
|
+
"desc": "Contact and delivery fields.",
|
|
2753
|
+
"accepts": [
|
|
2754
|
+
"Card",
|
|
2755
|
+
"TextField",
|
|
2756
|
+
"Select"
|
|
2757
|
+
],
|
|
2758
|
+
"props": [
|
|
2759
|
+
{
|
|
2760
|
+
"name": "address",
|
|
2761
|
+
"type": "object",
|
|
2762
|
+
"desc": ""
|
|
2763
|
+
}
|
|
2764
|
+
],
|
|
2765
|
+
"use": "<UiCard title=\"Address\">…</UiCard>"
|
|
2766
|
+
},
|
|
2767
|
+
{
|
|
2768
|
+
"id": "payment",
|
|
2769
|
+
"title": "Payment",
|
|
2770
|
+
"desc": "Payment method choice and card fields.",
|
|
2771
|
+
"accepts": [
|
|
2772
|
+
"OptionCards",
|
|
2773
|
+
"TextField"
|
|
2774
|
+
],
|
|
2775
|
+
"props": [
|
|
2776
|
+
{
|
|
2777
|
+
"name": "method",
|
|
2778
|
+
"type": "string",
|
|
2779
|
+
"desc": ""
|
|
2780
|
+
}
|
|
2781
|
+
],
|
|
2782
|
+
"use": "<UiOptionCards v-model=\"method\" :options=\"methods\" />"
|
|
2783
|
+
},
|
|
2784
|
+
{
|
|
2785
|
+
"id": "summary",
|
|
2786
|
+
"title": "Order summary",
|
|
2787
|
+
"desc": "Totals, promo code and the pay button.",
|
|
2788
|
+
"accepts": [
|
|
2789
|
+
"Card",
|
|
2790
|
+
"Descriptions",
|
|
2791
|
+
"Button"
|
|
2792
|
+
],
|
|
2793
|
+
"props": [
|
|
2794
|
+
{
|
|
2795
|
+
"name": "total",
|
|
2796
|
+
"type": "string",
|
|
2797
|
+
"desc": ""
|
|
2798
|
+
}
|
|
2799
|
+
],
|
|
2800
|
+
"use": "<UiCard title=\"Summary\">…</UiCard>"
|
|
2801
|
+
}
|
|
2802
|
+
]
|
|
2803
|
+
},
|
|
2804
|
+
{
|
|
2805
|
+
"key": "inbox",
|
|
2806
|
+
"route": "inbox",
|
|
2807
|
+
"label": "Inbox",
|
|
2808
|
+
"icon": "inbox",
|
|
2809
|
+
"desc": "Conversation list, message thread with composer and a customer panel; stacks on mobile.",
|
|
2810
|
+
"component": "PageInbox",
|
|
2811
|
+
"tpl": "TplInbox",
|
|
2812
|
+
"shell": true,
|
|
2813
|
+
"slots": [
|
|
2814
|
+
{
|
|
2815
|
+
"id": "header",
|
|
2816
|
+
"title": "Page heading",
|
|
2817
|
+
"desc": "Breadcrumbs, heading, caption and action buttons on the right.",
|
|
2818
|
+
"accepts": [
|
|
2819
|
+
"PageHeader",
|
|
2820
|
+
"Breadcrumbs",
|
|
2821
|
+
"Button",
|
|
2822
|
+
"SegmentedControl"
|
|
2823
|
+
],
|
|
2824
|
+
"props": [
|
|
2825
|
+
{
|
|
2826
|
+
"name": "title",
|
|
2827
|
+
"type": "string",
|
|
2828
|
+
"desc": "H1, up to 60 characters"
|
|
2829
|
+
},
|
|
2830
|
+
{
|
|
2831
|
+
"name": "subtitle",
|
|
2832
|
+
"type": "string?",
|
|
2833
|
+
"desc": "Gray caption below the heading"
|
|
2834
|
+
},
|
|
2835
|
+
{
|
|
2836
|
+
"name": "crumbs",
|
|
2837
|
+
"type": "{label,href?}[]",
|
|
2838
|
+
"desc": "Breadcrumbs"
|
|
2839
|
+
},
|
|
2840
|
+
{
|
|
2841
|
+
"name": "actions",
|
|
2842
|
+
"type": "VNode",
|
|
2843
|
+
"desc": "Buttons on the right; wrap below on a narrow screen"
|
|
2844
|
+
}
|
|
2845
|
+
],
|
|
2846
|
+
"use": "<UiPageHeader title=\"Dashboard\" :crumbs=\"crumbs\">\n <template #actions><UiButton variant=\"primary\">Export</UiButton></template>\n</UiPageHeader>"
|
|
2847
|
+
},
|
|
2848
|
+
{
|
|
2849
|
+
"id": "filters",
|
|
2850
|
+
"title": "Filters",
|
|
2851
|
+
"desc": "Search and folder chips above the list.",
|
|
2852
|
+
"accepts": [
|
|
2853
|
+
"SearchInput",
|
|
2854
|
+
"FilterChips"
|
|
2855
|
+
],
|
|
2856
|
+
"props": [
|
|
2857
|
+
{
|
|
2858
|
+
"name": "query",
|
|
2859
|
+
"type": "string",
|
|
2860
|
+
"desc": ""
|
|
2861
|
+
}
|
|
2862
|
+
],
|
|
2863
|
+
"use": "<UiSearchInput v-model=\"q\" />"
|
|
2864
|
+
},
|
|
2865
|
+
{
|
|
2866
|
+
"id": "list",
|
|
2867
|
+
"title": "Conversations",
|
|
2868
|
+
"desc": "List of conversations with unread marks.",
|
|
2869
|
+
"accepts": [
|
|
2870
|
+
"Card",
|
|
2871
|
+
"Avatar",
|
|
2872
|
+
"Badge"
|
|
2873
|
+
],
|
|
2874
|
+
"props": [
|
|
2875
|
+
{
|
|
2876
|
+
"name": "items",
|
|
2877
|
+
"type": "{id,name,preview,time,unread}[]",
|
|
2878
|
+
"desc": ""
|
|
2879
|
+
}
|
|
2880
|
+
],
|
|
2881
|
+
"use": "<UiCard>…</UiCard>"
|
|
2882
|
+
},
|
|
2883
|
+
{
|
|
2884
|
+
"id": "thread",
|
|
2885
|
+
"title": "Thread",
|
|
2886
|
+
"desc": "Messages of the open conversation.",
|
|
2887
|
+
"accepts": [
|
|
2888
|
+
"Card",
|
|
2889
|
+
"Avatar"
|
|
2890
|
+
],
|
|
2891
|
+
"props": [
|
|
2892
|
+
{
|
|
2893
|
+
"name": "messages",
|
|
2894
|
+
"type": "{from,text,time}[]",
|
|
2895
|
+
"desc": ""
|
|
2896
|
+
}
|
|
2897
|
+
],
|
|
2898
|
+
"use": "<UiCard title=\"Aziz Karimov\">…</UiCard>"
|
|
2899
|
+
},
|
|
2900
|
+
{
|
|
2901
|
+
"id": "composer",
|
|
2902
|
+
"title": "Composer",
|
|
2903
|
+
"desc": "Reply field and send button.",
|
|
2904
|
+
"accepts": [
|
|
2905
|
+
"Textarea",
|
|
2906
|
+
"Button"
|
|
2907
|
+
],
|
|
2908
|
+
"props": [
|
|
2909
|
+
{
|
|
2910
|
+
"name": "value",
|
|
2911
|
+
"type": "string",
|
|
2912
|
+
"desc": ""
|
|
2913
|
+
}
|
|
2914
|
+
],
|
|
2915
|
+
"use": "<UiTextarea v-model=\"reply\" />"
|
|
2916
|
+
},
|
|
2917
|
+
{
|
|
2918
|
+
"id": "customer",
|
|
2919
|
+
"title": "Customer",
|
|
2920
|
+
"desc": "Contact details and tags of the person.",
|
|
2921
|
+
"accepts": [
|
|
2922
|
+
"ContactPanel",
|
|
2923
|
+
"Descriptions",
|
|
2924
|
+
"Tag"
|
|
2925
|
+
],
|
|
2926
|
+
"props": [
|
|
2927
|
+
{
|
|
2928
|
+
"name": "name",
|
|
2929
|
+
"type": "string",
|
|
2930
|
+
"desc": ""
|
|
2931
|
+
}
|
|
2932
|
+
],
|
|
2933
|
+
"use": "<UiContactPanel name=\"Aziz Karimov\" />"
|
|
2934
|
+
}
|
|
2935
|
+
]
|
|
2936
|
+
},
|
|
2937
|
+
{
|
|
2938
|
+
"key": "notifications",
|
|
2939
|
+
"route": "notifications",
|
|
2940
|
+
"label": "Notifications",
|
|
2941
|
+
"icon": "bell",
|
|
2942
|
+
"desc": "Activity feed grouped by day with filters, mark all as read and an empty state.",
|
|
2943
|
+
"component": "PageNotifications",
|
|
2944
|
+
"tpl": "TplNotifications",
|
|
2945
|
+
"shell": true,
|
|
2946
|
+
"slots": [
|
|
2947
|
+
{
|
|
2948
|
+
"id": "header",
|
|
2949
|
+
"title": "Page heading",
|
|
2950
|
+
"desc": "Breadcrumbs, heading, caption and action buttons on the right.",
|
|
2951
|
+
"accepts": [
|
|
2952
|
+
"PageHeader",
|
|
2953
|
+
"Breadcrumbs",
|
|
2954
|
+
"Button",
|
|
2955
|
+
"SegmentedControl"
|
|
2956
|
+
],
|
|
2957
|
+
"props": [
|
|
2958
|
+
{
|
|
2959
|
+
"name": "title",
|
|
2960
|
+
"type": "string",
|
|
2961
|
+
"desc": "H1, up to 60 characters"
|
|
2962
|
+
},
|
|
2963
|
+
{
|
|
2964
|
+
"name": "subtitle",
|
|
2965
|
+
"type": "string?",
|
|
2966
|
+
"desc": "Gray caption below the heading"
|
|
2967
|
+
},
|
|
2968
|
+
{
|
|
2969
|
+
"name": "crumbs",
|
|
2970
|
+
"type": "{label,href?}[]",
|
|
2971
|
+
"desc": "Breadcrumbs"
|
|
2972
|
+
},
|
|
2973
|
+
{
|
|
2974
|
+
"name": "actions",
|
|
2975
|
+
"type": "VNode",
|
|
2976
|
+
"desc": "Buttons on the right; wrap below on a narrow screen"
|
|
2977
|
+
}
|
|
2978
|
+
],
|
|
2979
|
+
"use": "<UiPageHeader title=\"Dashboard\" :crumbs=\"crumbs\">\n <template #actions><UiButton variant=\"primary\">Export</UiButton></template>\n</UiPageHeader>"
|
|
2980
|
+
},
|
|
2981
|
+
{
|
|
2982
|
+
"id": "filters",
|
|
2983
|
+
"title": "Filters",
|
|
2984
|
+
"desc": "Filter chips: all, unread, mentions.",
|
|
2985
|
+
"accepts": [
|
|
2986
|
+
"FilterChips",
|
|
2987
|
+
"SegmentedControl"
|
|
2988
|
+
],
|
|
2989
|
+
"props": [
|
|
2990
|
+
{
|
|
2991
|
+
"name": "value",
|
|
2992
|
+
"type": "string",
|
|
2993
|
+
"desc": ""
|
|
2994
|
+
}
|
|
2995
|
+
],
|
|
2996
|
+
"use": "<UiFilterChips v-model=\"f\" :items=\"filters\" />"
|
|
2997
|
+
},
|
|
2998
|
+
{
|
|
2999
|
+
"id": "feed",
|
|
3000
|
+
"title": "Feed",
|
|
3001
|
+
"desc": "Day groups with notification rows.",
|
|
3002
|
+
"accepts": [
|
|
3003
|
+
"Card",
|
|
3004
|
+
"IconTile",
|
|
3005
|
+
"Badge",
|
|
3006
|
+
"Divider"
|
|
3007
|
+
],
|
|
3008
|
+
"props": [
|
|
3009
|
+
{
|
|
3010
|
+
"name": "groups",
|
|
3011
|
+
"type": "{day,items}[]",
|
|
3012
|
+
"desc": ""
|
|
3013
|
+
}
|
|
3014
|
+
],
|
|
3015
|
+
"use": "<UiCard title=\"Today\">…</UiCard>"
|
|
3016
|
+
},
|
|
3017
|
+
{
|
|
3018
|
+
"id": "empty",
|
|
3019
|
+
"title": "Empty state",
|
|
3020
|
+
"desc": "Shown when nothing matches or all is read.",
|
|
3021
|
+
"accepts": [
|
|
3022
|
+
"EmptyState"
|
|
3023
|
+
],
|
|
3024
|
+
"props": [
|
|
3025
|
+
{
|
|
3026
|
+
"name": "title",
|
|
3027
|
+
"type": "string",
|
|
3028
|
+
"desc": ""
|
|
3029
|
+
}
|
|
3030
|
+
],
|
|
3031
|
+
"use": "<UiEmptyState icon=\"bell-off\" title=\"All caught up\" />"
|
|
3032
|
+
}
|
|
3033
|
+
]
|
|
3034
|
+
},
|
|
3035
|
+
{
|
|
3036
|
+
"key": "analytics",
|
|
3037
|
+
"route": "analytics",
|
|
3038
|
+
"label": "Analytics",
|
|
3039
|
+
"icon": "chart-no-axes-combined",
|
|
3040
|
+
"desc": "Reports: period picker, KPI strip, charts, breakdown and a data table with export.",
|
|
3041
|
+
"component": "PageAnalytics",
|
|
3042
|
+
"tpl": "TplAnalytics",
|
|
3043
|
+
"shell": true,
|
|
3044
|
+
"slots": [
|
|
3045
|
+
{
|
|
3046
|
+
"id": "header",
|
|
3047
|
+
"title": "Page heading",
|
|
3048
|
+
"desc": "Breadcrumbs, heading, caption and action buttons on the right.",
|
|
3049
|
+
"accepts": [
|
|
3050
|
+
"PageHeader",
|
|
3051
|
+
"Breadcrumbs",
|
|
3052
|
+
"Button",
|
|
3053
|
+
"SegmentedControl"
|
|
3054
|
+
],
|
|
3055
|
+
"props": [
|
|
3056
|
+
{
|
|
3057
|
+
"name": "title",
|
|
3058
|
+
"type": "string",
|
|
3059
|
+
"desc": "H1, up to 60 characters"
|
|
3060
|
+
},
|
|
3061
|
+
{
|
|
3062
|
+
"name": "subtitle",
|
|
3063
|
+
"type": "string?",
|
|
3064
|
+
"desc": "Gray caption below the heading"
|
|
3065
|
+
},
|
|
3066
|
+
{
|
|
3067
|
+
"name": "crumbs",
|
|
3068
|
+
"type": "{label,href?}[]",
|
|
3069
|
+
"desc": "Breadcrumbs"
|
|
3070
|
+
},
|
|
3071
|
+
{
|
|
3072
|
+
"name": "actions",
|
|
3073
|
+
"type": "VNode",
|
|
3074
|
+
"desc": "Buttons on the right; wrap below on a narrow screen"
|
|
3075
|
+
}
|
|
3076
|
+
],
|
|
3077
|
+
"use": "<UiPageHeader title=\"Dashboard\" :crumbs=\"crumbs\">\n <template #actions><UiButton variant=\"primary\">Export</UiButton></template>\n</UiPageHeader>"
|
|
3078
|
+
},
|
|
3079
|
+
{
|
|
3080
|
+
"id": "period",
|
|
3081
|
+
"title": "Period",
|
|
3082
|
+
"desc": "Range presets and compare toggle.",
|
|
3083
|
+
"accepts": [
|
|
3084
|
+
"SegmentedControl",
|
|
3085
|
+
"Select",
|
|
3086
|
+
"Switch"
|
|
3087
|
+
],
|
|
3088
|
+
"props": [
|
|
3089
|
+
{
|
|
3090
|
+
"name": "value",
|
|
3091
|
+
"type": "string",
|
|
3092
|
+
"desc": ""
|
|
3093
|
+
}
|
|
3094
|
+
],
|
|
3095
|
+
"use": "<UiSegmentedControl v-model=\"p\" :items=\"periods\" />"
|
|
3096
|
+
},
|
|
3097
|
+
{
|
|
3098
|
+
"id": "kpis",
|
|
3099
|
+
"title": "KPI strip",
|
|
3100
|
+
"desc": "Four headline numbers with deltas.",
|
|
3101
|
+
"accepts": [
|
|
3102
|
+
"KpiTile",
|
|
3103
|
+
"StatLine"
|
|
3104
|
+
],
|
|
3105
|
+
"props": [
|
|
3106
|
+
{
|
|
3107
|
+
"name": "items",
|
|
3108
|
+
"type": "{label,value,delta}[]",
|
|
3109
|
+
"desc": ""
|
|
3110
|
+
}
|
|
3111
|
+
],
|
|
3112
|
+
"use": "<UiKpiTile label=\"Revenue\" value=\"$48k\" delta=\"+8%\" />"
|
|
3113
|
+
},
|
|
3114
|
+
{
|
|
3115
|
+
"id": "trend",
|
|
3116
|
+
"title": "Trend chart",
|
|
3117
|
+
"desc": "Main time series.",
|
|
3118
|
+
"accepts": [
|
|
3119
|
+
"ChartCard",
|
|
3120
|
+
"MiniChart"
|
|
3121
|
+
],
|
|
3122
|
+
"props": [
|
|
3123
|
+
{
|
|
3124
|
+
"name": "values",
|
|
3125
|
+
"type": "number[]",
|
|
3126
|
+
"desc": ""
|
|
3127
|
+
}
|
|
3128
|
+
],
|
|
3129
|
+
"use": "<UiChartCard title=\"Revenue\">…</UiChartCard>"
|
|
3130
|
+
},
|
|
3131
|
+
{
|
|
3132
|
+
"id": "breakdown",
|
|
3133
|
+
"title": "Breakdown",
|
|
3134
|
+
"desc": "Split by channel or country.",
|
|
3135
|
+
"accepts": [
|
|
3136
|
+
"SegBar",
|
|
3137
|
+
"CountryRow",
|
|
3138
|
+
"Progress"
|
|
3139
|
+
],
|
|
3140
|
+
"props": [
|
|
3141
|
+
{
|
|
3142
|
+
"name": "segments",
|
|
3143
|
+
"type": "{label,value}[]",
|
|
3144
|
+
"desc": ""
|
|
3145
|
+
}
|
|
3146
|
+
],
|
|
3147
|
+
"use": "<UiSegBar :segments=\"segments\" />"
|
|
3148
|
+
},
|
|
3149
|
+
{
|
|
3150
|
+
"id": "table",
|
|
3151
|
+
"title": "Detail table",
|
|
3152
|
+
"desc": "Rows behind the numbers.",
|
|
3153
|
+
"accepts": [
|
|
3154
|
+
"DataTable"
|
|
3155
|
+
],
|
|
3156
|
+
"props": [
|
|
3157
|
+
{
|
|
3158
|
+
"name": "rows",
|
|
3159
|
+
"type": "object[]",
|
|
3160
|
+
"desc": ""
|
|
3161
|
+
}
|
|
3162
|
+
],
|
|
3163
|
+
"use": "<UiDataTable :columns=\"cols\" :rows=\"rows\" />"
|
|
3164
|
+
}
|
|
3165
|
+
]
|
|
3166
|
+
},
|
|
3167
|
+
{
|
|
3168
|
+
"key": "calendar",
|
|
3169
|
+
"route": "calendar",
|
|
3170
|
+
"label": "Calendar",
|
|
3171
|
+
"icon": "calendar-days",
|
|
3172
|
+
"desc": "Schedule: week, day and month switch, event grid, mini calendar and an event details side panel.",
|
|
3173
|
+
"component": "PageCalendar",
|
|
3174
|
+
"tpl": "TplCalendar",
|
|
3175
|
+
"shell": true,
|
|
3176
|
+
"slots": [
|
|
3177
|
+
{
|
|
3178
|
+
"id": "header",
|
|
3179
|
+
"title": "Page heading",
|
|
3180
|
+
"desc": "Breadcrumbs, heading, caption and action buttons on the right.",
|
|
3181
|
+
"accepts": [
|
|
3182
|
+
"PageHeader",
|
|
3183
|
+
"Breadcrumbs",
|
|
3184
|
+
"Button",
|
|
3185
|
+
"SegmentedControl"
|
|
3186
|
+
],
|
|
3187
|
+
"props": [
|
|
3188
|
+
{
|
|
3189
|
+
"name": "title",
|
|
3190
|
+
"type": "string",
|
|
3191
|
+
"desc": "H1, up to 60 characters"
|
|
3192
|
+
},
|
|
3193
|
+
{
|
|
3194
|
+
"name": "subtitle",
|
|
3195
|
+
"type": "string?",
|
|
3196
|
+
"desc": "Gray caption below the heading"
|
|
3197
|
+
},
|
|
3198
|
+
{
|
|
3199
|
+
"name": "crumbs",
|
|
3200
|
+
"type": "{label,href?}[]",
|
|
3201
|
+
"desc": "Breadcrumbs"
|
|
3202
|
+
},
|
|
3203
|
+
{
|
|
3204
|
+
"name": "actions",
|
|
3205
|
+
"type": "VNode",
|
|
3206
|
+
"desc": "Buttons on the right; wrap below on a narrow screen"
|
|
3207
|
+
}
|
|
3208
|
+
],
|
|
3209
|
+
"use": "<UiPageHeader title=\"Dashboard\" :crumbs=\"crumbs\">\n <template #actions><UiButton variant=\"primary\">Export</UiButton></template>\n</UiPageHeader>"
|
|
3210
|
+
},
|
|
3211
|
+
{
|
|
3212
|
+
"id": "toolbar",
|
|
3213
|
+
"title": "Toolbar",
|
|
3214
|
+
"desc": "View switch, date navigation and filters.",
|
|
3215
|
+
"accepts": [
|
|
3216
|
+
"SegmentedControl",
|
|
3217
|
+
"Button",
|
|
3218
|
+
"IconButton",
|
|
3219
|
+
"Select"
|
|
3220
|
+
],
|
|
3221
|
+
"props": [
|
|
3222
|
+
{
|
|
3223
|
+
"name": "content",
|
|
3224
|
+
"type": "VNode",
|
|
3225
|
+
"desc": ""
|
|
3226
|
+
}
|
|
3227
|
+
],
|
|
3228
|
+
"use": "<UiSegmentedControl v-model=\"view\" :items=\"views\" />"
|
|
3229
|
+
},
|
|
3230
|
+
{
|
|
3231
|
+
"id": "grid",
|
|
3232
|
+
"title": "Event grid",
|
|
3233
|
+
"desc": "Week, day or month grid with events.",
|
|
3234
|
+
"accepts": [
|
|
3235
|
+
"CalendarView",
|
|
3236
|
+
"Card"
|
|
3237
|
+
],
|
|
3238
|
+
"props": [
|
|
3239
|
+
{
|
|
3240
|
+
"name": "content",
|
|
3241
|
+
"type": "VNode",
|
|
3242
|
+
"desc": ""
|
|
3243
|
+
}
|
|
3244
|
+
],
|
|
3245
|
+
"use": "<UiCard padding=\"none\">…grid…</UiCard>"
|
|
3246
|
+
},
|
|
3247
|
+
{
|
|
3248
|
+
"id": "mini",
|
|
3249
|
+
"title": "Mini calendar",
|
|
3250
|
+
"desc": "Small month picker.",
|
|
3251
|
+
"accepts": [
|
|
3252
|
+
"Calendar"
|
|
3253
|
+
],
|
|
3254
|
+
"props": [
|
|
3255
|
+
{
|
|
3256
|
+
"name": "content",
|
|
3257
|
+
"type": "VNode",
|
|
3258
|
+
"desc": ""
|
|
3259
|
+
}
|
|
3260
|
+
],
|
|
3261
|
+
"use": "<UiCalendar v-model=\"day\" />"
|
|
3262
|
+
},
|
|
3263
|
+
{
|
|
3264
|
+
"id": "details",
|
|
3265
|
+
"title": "Event details",
|
|
3266
|
+
"desc": "Selected event with time, place, guests and actions.",
|
|
3267
|
+
"accepts": [
|
|
3268
|
+
"Card",
|
|
3269
|
+
"Descriptions",
|
|
3270
|
+
"Avatar",
|
|
3271
|
+
"Button"
|
|
3272
|
+
],
|
|
3273
|
+
"props": [
|
|
3274
|
+
{
|
|
3275
|
+
"name": "content",
|
|
3276
|
+
"type": "VNode",
|
|
3277
|
+
"desc": ""
|
|
3278
|
+
}
|
|
3279
|
+
],
|
|
3280
|
+
"use": "<UiCard title=\"Hotel check-in\">…</UiCard>"
|
|
3281
|
+
}
|
|
3282
|
+
]
|
|
3283
|
+
},
|
|
3284
|
+
{
|
|
3285
|
+
"key": "kanban",
|
|
3286
|
+
"route": "kanban",
|
|
3287
|
+
"label": "Kanban",
|
|
3288
|
+
"icon": "kanban",
|
|
3289
|
+
"desc": "Task board: columns with cards, filters and a card detail panel.",
|
|
3290
|
+
"component": "PageKanban",
|
|
3291
|
+
"tpl": "TplKanban",
|
|
3292
|
+
"shell": true,
|
|
3293
|
+
"slots": [
|
|
3294
|
+
{
|
|
3295
|
+
"id": "header",
|
|
3296
|
+
"title": "Page heading",
|
|
3297
|
+
"desc": "Breadcrumbs, heading, caption and action buttons on the right.",
|
|
3298
|
+
"accepts": [
|
|
3299
|
+
"PageHeader",
|
|
3300
|
+
"Breadcrumbs",
|
|
3301
|
+
"Button",
|
|
3302
|
+
"SegmentedControl"
|
|
3303
|
+
],
|
|
3304
|
+
"props": [
|
|
3305
|
+
{
|
|
3306
|
+
"name": "title",
|
|
3307
|
+
"type": "string",
|
|
3308
|
+
"desc": "H1, up to 60 characters"
|
|
3309
|
+
},
|
|
3310
|
+
{
|
|
3311
|
+
"name": "subtitle",
|
|
3312
|
+
"type": "string?",
|
|
3313
|
+
"desc": "Gray caption below the heading"
|
|
3314
|
+
},
|
|
3315
|
+
{
|
|
3316
|
+
"name": "crumbs",
|
|
3317
|
+
"type": "{label,href?}[]",
|
|
3318
|
+
"desc": "Breadcrumbs"
|
|
3319
|
+
},
|
|
3320
|
+
{
|
|
3321
|
+
"name": "actions",
|
|
3322
|
+
"type": "VNode",
|
|
3323
|
+
"desc": "Buttons on the right; wrap below on a narrow screen"
|
|
3324
|
+
}
|
|
3325
|
+
],
|
|
3326
|
+
"use": "<UiPageHeader title=\"Dashboard\" :crumbs=\"crumbs\">\n <template #actions><UiButton variant=\"primary\">Export</UiButton></template>\n</UiPageHeader>"
|
|
3327
|
+
},
|
|
3328
|
+
{
|
|
3329
|
+
"id": "filters",
|
|
3330
|
+
"title": "Filters",
|
|
3331
|
+
"desc": "Search, assignee and label filters.",
|
|
3332
|
+
"accepts": [
|
|
3333
|
+
"SearchInput",
|
|
3334
|
+
"FilterChips",
|
|
3335
|
+
"Select"
|
|
3336
|
+
],
|
|
3337
|
+
"props": [
|
|
3338
|
+
{
|
|
3339
|
+
"name": "content",
|
|
3340
|
+
"type": "VNode",
|
|
3341
|
+
"desc": ""
|
|
3342
|
+
}
|
|
3343
|
+
],
|
|
3344
|
+
"use": "<UiFilterChips v-model=\"f\" :items=\"labels\" />"
|
|
3345
|
+
},
|
|
3346
|
+
{
|
|
3347
|
+
"id": "board",
|
|
3348
|
+
"title": "Board",
|
|
3349
|
+
"desc": "Task columns with cards.",
|
|
3350
|
+
"accepts": [
|
|
3351
|
+
"KanbanColumn",
|
|
3352
|
+
"KanbanCard"
|
|
3353
|
+
],
|
|
3354
|
+
"props": [
|
|
3355
|
+
{
|
|
3356
|
+
"name": "content",
|
|
3357
|
+
"type": "VNode",
|
|
3358
|
+
"desc": ""
|
|
3359
|
+
}
|
|
3360
|
+
],
|
|
3361
|
+
"use": "<UiKanbanColumn title=\"To do\" :count=\"3\">…</UiKanbanColumn>"
|
|
3362
|
+
},
|
|
3363
|
+
{
|
|
3364
|
+
"id": "detail",
|
|
3365
|
+
"title": "Card detail",
|
|
3366
|
+
"desc": "Side panel for the selected card.",
|
|
3367
|
+
"accepts": [
|
|
3368
|
+
"Card",
|
|
3369
|
+
"Descriptions",
|
|
3370
|
+
"Timeline",
|
|
3371
|
+
"Checkbox"
|
|
3372
|
+
],
|
|
3373
|
+
"props": [
|
|
3374
|
+
{
|
|
3375
|
+
"name": "content",
|
|
3376
|
+
"type": "VNode",
|
|
3377
|
+
"desc": ""
|
|
3378
|
+
}
|
|
3379
|
+
],
|
|
3380
|
+
"use": "<UiCard title=\"Task\">…</UiCard>"
|
|
3381
|
+
}
|
|
3382
|
+
]
|
|
3383
|
+
},
|
|
3384
|
+
{
|
|
3385
|
+
"key": "billing",
|
|
3386
|
+
"route": "billing",
|
|
3387
|
+
"label": "Billing",
|
|
3388
|
+
"icon": "credit-card",
|
|
3389
|
+
"desc": "Billing: current plan, usage meters, invoices table, payment methods and upgrade.",
|
|
3390
|
+
"component": "PageBilling",
|
|
3391
|
+
"tpl": "TplBilling",
|
|
3392
|
+
"shell": true,
|
|
3393
|
+
"slots": [
|
|
3394
|
+
{
|
|
3395
|
+
"id": "header",
|
|
3396
|
+
"title": "Page heading",
|
|
3397
|
+
"desc": "Breadcrumbs, heading, caption and action buttons on the right.",
|
|
3398
|
+
"accepts": [
|
|
3399
|
+
"PageHeader",
|
|
3400
|
+
"Breadcrumbs",
|
|
3401
|
+
"Button",
|
|
3402
|
+
"SegmentedControl"
|
|
3403
|
+
],
|
|
3404
|
+
"props": [
|
|
3405
|
+
{
|
|
3406
|
+
"name": "title",
|
|
3407
|
+
"type": "string",
|
|
3408
|
+
"desc": "H1, up to 60 characters"
|
|
3409
|
+
},
|
|
3410
|
+
{
|
|
3411
|
+
"name": "subtitle",
|
|
3412
|
+
"type": "string?",
|
|
3413
|
+
"desc": "Gray caption below the heading"
|
|
3414
|
+
},
|
|
3415
|
+
{
|
|
3416
|
+
"name": "crumbs",
|
|
3417
|
+
"type": "{label,href?}[]",
|
|
3418
|
+
"desc": "Breadcrumbs"
|
|
3419
|
+
},
|
|
3420
|
+
{
|
|
3421
|
+
"name": "actions",
|
|
3422
|
+
"type": "VNode",
|
|
3423
|
+
"desc": "Buttons on the right; wrap below on a narrow screen"
|
|
3424
|
+
}
|
|
3425
|
+
],
|
|
3426
|
+
"use": "<UiPageHeader title=\"Dashboard\" :crumbs=\"crumbs\">\n <template #actions><UiButton variant=\"primary\">Export</UiButton></template>\n</UiPageHeader>"
|
|
3427
|
+
},
|
|
3428
|
+
{
|
|
3429
|
+
"id": "plan",
|
|
3430
|
+
"title": "Current plan",
|
|
3431
|
+
"desc": "Plan name, price, renewal date and actions.",
|
|
3432
|
+
"accepts": [
|
|
3433
|
+
"Card",
|
|
3434
|
+
"Badge",
|
|
3435
|
+
"Button"
|
|
3436
|
+
],
|
|
3437
|
+
"props": [
|
|
3438
|
+
{
|
|
3439
|
+
"name": "content",
|
|
3440
|
+
"type": "VNode",
|
|
3441
|
+
"desc": ""
|
|
3442
|
+
}
|
|
3443
|
+
],
|
|
3444
|
+
"use": "<UiCard title=\"Pro plan\">…</UiCard>"
|
|
3445
|
+
},
|
|
3446
|
+
{
|
|
3447
|
+
"id": "usage",
|
|
3448
|
+
"title": "Usage",
|
|
3449
|
+
"desc": "Meters for seats, storage and requests.",
|
|
3450
|
+
"accepts": [
|
|
3451
|
+
"Progress",
|
|
3452
|
+
"Card"
|
|
3453
|
+
],
|
|
3454
|
+
"props": [
|
|
3455
|
+
{
|
|
3456
|
+
"name": "content",
|
|
3457
|
+
"type": "VNode",
|
|
3458
|
+
"desc": ""
|
|
3459
|
+
}
|
|
3460
|
+
],
|
|
3461
|
+
"use": "<UiProgress :value=\"72\" label=\"Seats\" />"
|
|
3462
|
+
},
|
|
3463
|
+
{
|
|
3464
|
+
"id": "invoices",
|
|
3465
|
+
"title": "Invoices",
|
|
3466
|
+
"desc": "Past invoices with status and download.",
|
|
3467
|
+
"accepts": [
|
|
3468
|
+
"DataTable",
|
|
3469
|
+
"Badge"
|
|
3470
|
+
],
|
|
3471
|
+
"props": [
|
|
3472
|
+
{
|
|
3473
|
+
"name": "content",
|
|
3474
|
+
"type": "VNode",
|
|
3475
|
+
"desc": ""
|
|
3476
|
+
}
|
|
3477
|
+
],
|
|
3478
|
+
"use": "<UiDataTable :columns=\"cols\" :rows=\"rows\" />"
|
|
3479
|
+
},
|
|
3480
|
+
{
|
|
3481
|
+
"id": "methods",
|
|
3482
|
+
"title": "Payment methods",
|
|
3483
|
+
"desc": "Saved cards with default marker.",
|
|
3484
|
+
"accepts": [
|
|
3485
|
+
"Card",
|
|
3486
|
+
"IconTile",
|
|
3487
|
+
"Badge"
|
|
3488
|
+
],
|
|
3489
|
+
"props": [
|
|
3490
|
+
{
|
|
3491
|
+
"name": "content",
|
|
3492
|
+
"type": "VNode",
|
|
3493
|
+
"desc": ""
|
|
3494
|
+
}
|
|
3495
|
+
],
|
|
3496
|
+
"use": "<UiCard title=\"Payment methods\">…</UiCard>"
|
|
3497
|
+
},
|
|
3498
|
+
{
|
|
3499
|
+
"id": "upgrade",
|
|
3500
|
+
"title": "Upgrade",
|
|
3501
|
+
"desc": "Upsell card for the next plan.",
|
|
3502
|
+
"accepts": [
|
|
3503
|
+
"Card",
|
|
3504
|
+
"PricingCard",
|
|
3505
|
+
"Button"
|
|
3506
|
+
],
|
|
3507
|
+
"props": [
|
|
3508
|
+
{
|
|
3509
|
+
"name": "content",
|
|
3510
|
+
"type": "VNode",
|
|
3511
|
+
"desc": ""
|
|
3512
|
+
}
|
|
3513
|
+
],
|
|
3514
|
+
"use": "<UiCard variant=\"inverse\">…</UiCard>"
|
|
3515
|
+
}
|
|
3516
|
+
]
|
|
3517
|
+
},
|
|
3518
|
+
{
|
|
3519
|
+
"key": "team",
|
|
3520
|
+
"route": "team",
|
|
3521
|
+
"label": "Team",
|
|
3522
|
+
"icon": "users-round",
|
|
3523
|
+
"desc": "Team: members table, invite form and a roles and permissions matrix.",
|
|
3524
|
+
"component": "PageTeam",
|
|
3525
|
+
"tpl": "TplTeam",
|
|
3526
|
+
"shell": true,
|
|
3527
|
+
"slots": [
|
|
3528
|
+
{
|
|
3529
|
+
"id": "header",
|
|
3530
|
+
"title": "Page heading",
|
|
3531
|
+
"desc": "Breadcrumbs, heading, caption and action buttons on the right.",
|
|
3532
|
+
"accepts": [
|
|
3533
|
+
"PageHeader",
|
|
3534
|
+
"Breadcrumbs",
|
|
3535
|
+
"Button",
|
|
3536
|
+
"SegmentedControl"
|
|
3537
|
+
],
|
|
3538
|
+
"props": [
|
|
3539
|
+
{
|
|
3540
|
+
"name": "title",
|
|
3541
|
+
"type": "string",
|
|
3542
|
+
"desc": "H1, up to 60 characters"
|
|
3543
|
+
},
|
|
3544
|
+
{
|
|
3545
|
+
"name": "subtitle",
|
|
3546
|
+
"type": "string?",
|
|
3547
|
+
"desc": "Gray caption below the heading"
|
|
3548
|
+
},
|
|
3549
|
+
{
|
|
3550
|
+
"name": "crumbs",
|
|
3551
|
+
"type": "{label,href?}[]",
|
|
3552
|
+
"desc": "Breadcrumbs"
|
|
3553
|
+
},
|
|
3554
|
+
{
|
|
3555
|
+
"name": "actions",
|
|
3556
|
+
"type": "VNode",
|
|
3557
|
+
"desc": "Buttons on the right; wrap below on a narrow screen"
|
|
3558
|
+
}
|
|
3559
|
+
],
|
|
3560
|
+
"use": "<UiPageHeader title=\"Dashboard\" :crumbs=\"crumbs\">\n <template #actions><UiButton variant=\"primary\">Export</UiButton></template>\n</UiPageHeader>"
|
|
3561
|
+
},
|
|
3562
|
+
{
|
|
3563
|
+
"id": "stats",
|
|
3564
|
+
"title": "Summary",
|
|
3565
|
+
"desc": "Seats, pending invites and admins.",
|
|
3566
|
+
"accepts": [
|
|
3567
|
+
"StatsCard",
|
|
3568
|
+
"KpiTile"
|
|
3569
|
+
],
|
|
3570
|
+
"props": [
|
|
3571
|
+
{
|
|
3572
|
+
"name": "content",
|
|
3573
|
+
"type": "VNode",
|
|
3574
|
+
"desc": ""
|
|
3575
|
+
}
|
|
3576
|
+
],
|
|
3577
|
+
"use": "<UiKpiTile label=\"Members\" value=\"12\" />"
|
|
3578
|
+
},
|
|
3579
|
+
{
|
|
3580
|
+
"id": "members",
|
|
3581
|
+
"title": "Members",
|
|
3582
|
+
"desc": "Members table with role and status.",
|
|
3583
|
+
"accepts": [
|
|
3584
|
+
"DataTable",
|
|
3585
|
+
"UserCell",
|
|
3586
|
+
"Select",
|
|
3587
|
+
"Badge"
|
|
3588
|
+
],
|
|
3589
|
+
"props": [
|
|
3590
|
+
{
|
|
3591
|
+
"name": "content",
|
|
3592
|
+
"type": "VNode",
|
|
3593
|
+
"desc": ""
|
|
3594
|
+
}
|
|
3595
|
+
],
|
|
3596
|
+
"use": "<UiDataTable :columns=\"cols\" :rows=\"rows\" />"
|
|
3597
|
+
},
|
|
3598
|
+
{
|
|
3599
|
+
"id": "roles",
|
|
3600
|
+
"title": "Roles and permissions",
|
|
3601
|
+
"desc": "Matrix of permissions per role.",
|
|
3602
|
+
"accepts": [
|
|
3603
|
+
"DataTable",
|
|
3604
|
+
"Checkbox",
|
|
3605
|
+
"Switch"
|
|
3606
|
+
],
|
|
3607
|
+
"props": [
|
|
3608
|
+
{
|
|
3609
|
+
"name": "content",
|
|
3610
|
+
"type": "VNode",
|
|
3611
|
+
"desc": ""
|
|
3612
|
+
}
|
|
3613
|
+
],
|
|
3614
|
+
"use": "<UiDataTable :columns=\"roleCols\" :rows=\"perms\" />"
|
|
3615
|
+
},
|
|
3616
|
+
{
|
|
3617
|
+
"id": "invite",
|
|
3618
|
+
"title": "Invite",
|
|
3619
|
+
"desc": "Email, role and send button.",
|
|
3620
|
+
"accepts": [
|
|
3621
|
+
"Card",
|
|
3622
|
+
"TextField",
|
|
3623
|
+
"Select",
|
|
3624
|
+
"Button"
|
|
3625
|
+
],
|
|
3626
|
+
"props": [
|
|
3627
|
+
{
|
|
3628
|
+
"name": "content",
|
|
3629
|
+
"type": "VNode",
|
|
3630
|
+
"desc": ""
|
|
3631
|
+
}
|
|
3632
|
+
],
|
|
3633
|
+
"use": "<UiCard title=\"Invite\">…</UiCard>"
|
|
3634
|
+
}
|
|
3635
|
+
]
|
|
3636
|
+
},
|
|
3637
|
+
{
|
|
3638
|
+
"key": "integrations",
|
|
3639
|
+
"route": "integrations",
|
|
3640
|
+
"label": "Integrations",
|
|
3641
|
+
"icon": "plug",
|
|
3642
|
+
"desc": "Integrations: connection cards with status, API keys table with reveal, copy and revoke, and a webhooks list.",
|
|
3643
|
+
"component": "PageIntegrations",
|
|
3644
|
+
"tpl": "TplIntegrations",
|
|
3645
|
+
"shell": true,
|
|
3646
|
+
"slots": [
|
|
3647
|
+
{
|
|
3648
|
+
"id": "header",
|
|
3649
|
+
"title": "Page heading",
|
|
3650
|
+
"desc": "Breadcrumbs, heading, caption and action buttons on the right.",
|
|
3651
|
+
"accepts": [
|
|
3652
|
+
"PageHeader",
|
|
3653
|
+
"Breadcrumbs",
|
|
3654
|
+
"Button",
|
|
3655
|
+
"SegmentedControl"
|
|
3656
|
+
],
|
|
3657
|
+
"props": [
|
|
3658
|
+
{
|
|
3659
|
+
"name": "title",
|
|
3660
|
+
"type": "string",
|
|
3661
|
+
"desc": "H1, up to 60 characters"
|
|
3662
|
+
},
|
|
3663
|
+
{
|
|
3664
|
+
"name": "subtitle",
|
|
3665
|
+
"type": "string?",
|
|
3666
|
+
"desc": "Gray caption below the heading"
|
|
3667
|
+
},
|
|
3668
|
+
{
|
|
3669
|
+
"name": "crumbs",
|
|
3670
|
+
"type": "{label,href?}[]",
|
|
3671
|
+
"desc": "Breadcrumbs"
|
|
3672
|
+
},
|
|
3673
|
+
{
|
|
3674
|
+
"name": "actions",
|
|
3675
|
+
"type": "VNode",
|
|
3676
|
+
"desc": "Buttons on the right; wrap below on a narrow screen"
|
|
3677
|
+
}
|
|
3678
|
+
],
|
|
3679
|
+
"use": "<UiPageHeader title=\"Dashboard\" :crumbs=\"crumbs\">\n <template #actions><UiButton variant=\"primary\">Export</UiButton></template>\n</UiPageHeader>"
|
|
3680
|
+
},
|
|
3681
|
+
{
|
|
3682
|
+
"id": "filters",
|
|
3683
|
+
"title": "Filters",
|
|
3684
|
+
"desc": "Search and category filter.",
|
|
3685
|
+
"accepts": [
|
|
3686
|
+
"SearchInput",
|
|
3687
|
+
"FilterChips"
|
|
3688
|
+
],
|
|
3689
|
+
"props": [
|
|
3690
|
+
{
|
|
3691
|
+
"name": "content",
|
|
3692
|
+
"type": "VNode",
|
|
3693
|
+
"desc": ""
|
|
3694
|
+
}
|
|
3695
|
+
],
|
|
3696
|
+
"use": "<UiSearchInput v-model=\"q\" />"
|
|
3697
|
+
},
|
|
3698
|
+
{
|
|
3699
|
+
"id": "connections",
|
|
3700
|
+
"title": "Connections",
|
|
3701
|
+
"desc": "Cards with connected, error or off status.",
|
|
3702
|
+
"accepts": [
|
|
3703
|
+
"IntegrationCard"
|
|
3704
|
+
],
|
|
3705
|
+
"props": [
|
|
3706
|
+
{
|
|
3707
|
+
"name": "content",
|
|
3708
|
+
"type": "VNode",
|
|
3709
|
+
"desc": ""
|
|
3710
|
+
}
|
|
3711
|
+
],
|
|
3712
|
+
"use": "<UiIntegrationCard name=\"Telegram\" status=\"connected\" />"
|
|
3713
|
+
},
|
|
3714
|
+
{
|
|
3715
|
+
"id": "keys",
|
|
3716
|
+
"title": "API keys",
|
|
3717
|
+
"desc": "Keys with reveal, copy and revoke.",
|
|
3718
|
+
"accepts": [
|
|
3719
|
+
"DataTable",
|
|
3720
|
+
"CopyButton",
|
|
3721
|
+
"IconButton"
|
|
3722
|
+
],
|
|
3723
|
+
"props": [
|
|
3724
|
+
{
|
|
3725
|
+
"name": "content",
|
|
3726
|
+
"type": "VNode",
|
|
3727
|
+
"desc": ""
|
|
3728
|
+
}
|
|
3729
|
+
],
|
|
3730
|
+
"use": "<UiDataTable :columns=\"cols\" :rows=\"keys\" />"
|
|
3731
|
+
},
|
|
3732
|
+
{
|
|
3733
|
+
"id": "webhooks",
|
|
3734
|
+
"title": "Webhooks",
|
|
3735
|
+
"desc": "Endpoints with event types and on/off switch.",
|
|
3736
|
+
"accepts": [
|
|
3737
|
+
"Card",
|
|
3738
|
+
"Switch",
|
|
3739
|
+
"Chip"
|
|
3740
|
+
],
|
|
3741
|
+
"props": [
|
|
3742
|
+
{
|
|
3743
|
+
"name": "content",
|
|
3744
|
+
"type": "VNode",
|
|
3745
|
+
"desc": ""
|
|
3746
|
+
}
|
|
3747
|
+
],
|
|
3748
|
+
"use": "<UiCard title=\"Webhooks\">…</UiCard>"
|
|
3749
|
+
}
|
|
3750
|
+
]
|
|
3751
|
+
},
|
|
3752
|
+
{
|
|
3753
|
+
"key": "search",
|
|
3754
|
+
"route": "search",
|
|
3755
|
+
"label": "Search results",
|
|
3756
|
+
"icon": "search",
|
|
3757
|
+
"desc": "Search results: query field, filters, grouped results and an empty state.",
|
|
3758
|
+
"component": "PageSearch",
|
|
3759
|
+
"tpl": "TplSearch",
|
|
3760
|
+
"shell": true,
|
|
3761
|
+
"slots": [
|
|
3762
|
+
{
|
|
3763
|
+
"id": "header",
|
|
3764
|
+
"title": "Page heading",
|
|
3765
|
+
"desc": "Breadcrumbs, heading, caption and action buttons on the right.",
|
|
3766
|
+
"accepts": [
|
|
3767
|
+
"PageHeader",
|
|
3768
|
+
"Breadcrumbs",
|
|
3769
|
+
"Button",
|
|
3770
|
+
"SegmentedControl"
|
|
3771
|
+
],
|
|
3772
|
+
"props": [
|
|
3773
|
+
{
|
|
3774
|
+
"name": "title",
|
|
3775
|
+
"type": "string",
|
|
3776
|
+
"desc": "H1, up to 60 characters"
|
|
3777
|
+
},
|
|
3778
|
+
{
|
|
3779
|
+
"name": "subtitle",
|
|
3780
|
+
"type": "string?",
|
|
3781
|
+
"desc": "Gray caption below the heading"
|
|
3782
|
+
},
|
|
3783
|
+
{
|
|
3784
|
+
"name": "crumbs",
|
|
3785
|
+
"type": "{label,href?}[]",
|
|
3786
|
+
"desc": "Breadcrumbs"
|
|
3787
|
+
},
|
|
3788
|
+
{
|
|
3789
|
+
"name": "actions",
|
|
3790
|
+
"type": "VNode",
|
|
3791
|
+
"desc": "Buttons on the right; wrap below on a narrow screen"
|
|
3792
|
+
}
|
|
3793
|
+
],
|
|
3794
|
+
"use": "<UiPageHeader title=\"Dashboard\" :crumbs=\"crumbs\">\n <template #actions><UiButton variant=\"primary\">Export</UiButton></template>\n</UiPageHeader>"
|
|
3795
|
+
},
|
|
3796
|
+
{
|
|
3797
|
+
"id": "search",
|
|
3798
|
+
"title": "Search field",
|
|
3799
|
+
"desc": "Large query field with tabs for result types.",
|
|
3800
|
+
"accepts": [
|
|
3801
|
+
"SearchInput",
|
|
3802
|
+
"Tabs"
|
|
3803
|
+
],
|
|
3804
|
+
"props": [
|
|
3805
|
+
{
|
|
3806
|
+
"name": "content",
|
|
3807
|
+
"type": "VNode",
|
|
3808
|
+
"desc": ""
|
|
3809
|
+
}
|
|
3810
|
+
],
|
|
3811
|
+
"use": "<UiSearchInput v-model=\"q\" />"
|
|
3812
|
+
},
|
|
3813
|
+
{
|
|
3814
|
+
"id": "filters",
|
|
3815
|
+
"title": "Filters",
|
|
3816
|
+
"desc": "Sidebar with checkboxes, range and select.",
|
|
3817
|
+
"accepts": [
|
|
3818
|
+
"Card",
|
|
3819
|
+
"Checkbox",
|
|
3820
|
+
"RangeSlider",
|
|
3821
|
+
"Select"
|
|
3822
|
+
],
|
|
3823
|
+
"props": [
|
|
3824
|
+
{
|
|
3825
|
+
"name": "content",
|
|
3826
|
+
"type": "VNode",
|
|
3827
|
+
"desc": ""
|
|
3828
|
+
}
|
|
3829
|
+
],
|
|
3830
|
+
"use": "<UiCard title=\"Filters\">…</UiCard>"
|
|
3831
|
+
},
|
|
3832
|
+
{
|
|
3833
|
+
"id": "results",
|
|
3834
|
+
"title": "Results",
|
|
3835
|
+
"desc": "Result groups with titles and counts.",
|
|
3836
|
+
"accepts": [
|
|
3837
|
+
"Card",
|
|
3838
|
+
"Chip",
|
|
3839
|
+
"Divider"
|
|
3840
|
+
],
|
|
3841
|
+
"props": [
|
|
3842
|
+
{
|
|
3843
|
+
"name": "content",
|
|
3844
|
+
"type": "VNode",
|
|
3845
|
+
"desc": ""
|
|
3846
|
+
}
|
|
3847
|
+
],
|
|
3848
|
+
"use": "<UiCard padding=\"none\">…</UiCard>"
|
|
3849
|
+
},
|
|
3850
|
+
{
|
|
3851
|
+
"id": "empty",
|
|
3852
|
+
"title": "Empty state",
|
|
3853
|
+
"desc": "Shown when nothing matches.",
|
|
3854
|
+
"accepts": [
|
|
3855
|
+
"EmptyState"
|
|
3856
|
+
],
|
|
3857
|
+
"props": [
|
|
3858
|
+
{
|
|
3859
|
+
"name": "content",
|
|
3860
|
+
"type": "VNode",
|
|
3861
|
+
"desc": ""
|
|
3862
|
+
}
|
|
3863
|
+
],
|
|
3864
|
+
"use": "<UiEmptyState icon=\"search-x\" title=\"No results\" />"
|
|
3865
|
+
}
|
|
3866
|
+
]
|
|
2420
3867
|
}
|
|
2421
3868
|
]
|
|
2422
|
-
}
|
|
3869
|
+
}
|