jigsaw_engine 0.4.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.
- checksums.yaml +7 -0
- data/README.md +18 -0
- data/Rakefile +6 -0
- data/app/assets/stylesheets/jigsaw/grid_resize.css +21 -0
- data/app/assets/stylesheets/jigsaw/layout_editor.css +356 -0
- data/app/components/custom_module_component.rb +38 -0
- data/app/controllers/jigsaw/application_controller.rb +5 -0
- data/app/controllers/jigsaw/dashboard_controller.rb +8 -0
- data/app/controllers/jigsaw/layout_templates_controller.rb +73 -0
- data/app/controllers/jigsaw/pages_controller.rb +114 -0
- data/app/controllers/jigsaw/slot_templates_controller.rb +71 -0
- data/app/controllers/jigsaw/slots_controller.rb +54 -0
- data/app/helpers/jigsaw/custom_module_helper.rb +7 -0
- data/app/helpers/jigsaw/pages_helper.rb +7 -0
- data/app/javascript/jigsaw/components/ui/button.js +53 -0
- data/app/javascript/jigsaw/components/ui/dropdown-menu.js +157 -0
- data/app/javascript/jigsaw/components/ui/sheet.js +122 -0
- data/app/javascript/jigsaw/components/ui/utils.js +8 -0
- data/app/javascript/jigsaw/controllers/custom_module_controller.js +75 -0
- data/app/javascript/jigsaw/controllers/custom_page_controller.js +23 -0
- data/app/javascript/jigsaw/controllers/flyout_resize_controller.js +60 -0
- data/app/javascript/jigsaw/controllers/grid_resize_controller.js +228 -0
- data/app/javascript/jigsaw/controllers/layout_editor_controller.js +502 -0
- data/app/javascript/jigsaw/controllers/module_editor_controller.js +146 -0
- data/app/javascript/jigsaw/controllers/monaco_editor_controller.js +49 -0
- data/app/javascript/jigsaw/lib/generate_layout_css.js +52 -0
- data/app/javascript/seeds/blocks/authentication-forms-1/config.json +1 -0
- data/app/javascript/seeds/blocks/authentication-forms-1/data.js +1 -0
- data/app/javascript/seeds/blocks/authentication-forms-1/render.jsx +80 -0
- data/app/javascript/seeds/blocks/authentication-forms-2/config.json +1 -0
- data/app/javascript/seeds/blocks/authentication-forms-2/data.js +1 -0
- data/app/javascript/seeds/blocks/authentication-forms-2/render.jsx +90 -0
- data/app/javascript/seeds/blocks/authentication-forms-3/config.json +1 -0
- data/app/javascript/seeds/blocks/authentication-forms-3/data.js +1 -0
- data/app/javascript/seeds/blocks/authentication-forms-3/render.jsx +94 -0
- data/app/javascript/seeds/blocks/authentication-forms-4/config.json +1 -0
- data/app/javascript/seeds/blocks/authentication-forms-4/data.js +1 -0
- data/app/javascript/seeds/blocks/authentication-forms-4/render.jsx +97 -0
- data/app/javascript/seeds/blocks/authentication-forms-5/config.json +1 -0
- data/app/javascript/seeds/blocks/authentication-forms-5/data.js +1 -0
- data/app/javascript/seeds/blocks/authentication-forms-5/render.jsx +82 -0
- data/app/javascript/seeds/blocks/authentication-forms-6/config.json +1 -0
- data/app/javascript/seeds/blocks/authentication-forms-6/data.js +1 -0
- data/app/javascript/seeds/blocks/authentication-forms-6/render.jsx +34 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-1/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-1/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-1/render.jsx +98 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-10/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-10/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-10/render.jsx +181 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-11/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-11/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-11/render.jsx +184 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-12/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-12/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-12/render.jsx +180 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-13/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-13/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-13/render.jsx +151 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-14/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-14/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-14/render.jsx +169 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-15/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-15/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-15/render.jsx +115 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-16/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-16/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-16/render.jsx +128 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-17/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-17/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-17/render.jsx +84 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-18/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-18/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-18/render.jsx +139 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-19/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-19/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-19/render.jsx +146 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-2/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-2/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-2/render.jsx +163 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-20/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-20/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-20/render.jsx +71 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-3/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-3/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-3/render.jsx +122 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-4/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-4/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-4/render.jsx +136 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-5/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-5/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-5/render.jsx +294 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-6/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-6/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-6/render.jsx +139 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-7/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-7/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-7/render.jsx +219 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-8/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-8/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-8/render.jsx +249 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-9/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-9/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/charts-9/render.jsx +213 -0
- data/app/javascript/seeds/blocks/dashboard-ui/form-layouts-1/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/form-layouts-1/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/form-layouts-1/render.jsx +434 -0
- data/app/javascript/seeds/blocks/dashboard-ui/form-layouts-2/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/form-layouts-2/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/form-layouts-2/render.jsx +332 -0
- data/app/javascript/seeds/blocks/dashboard-ui/modal-dialogs-1/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/modal-dialogs-1/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/modal-dialogs-1/render.jsx +121 -0
- data/app/javascript/seeds/blocks/dashboard-ui/modal-dialogs-2/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/modal-dialogs-2/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/modal-dialogs-2/render.jsx +99 -0
- data/app/javascript/seeds/blocks/dashboard-ui/modal-dialogs-3/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/modal-dialogs-3/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/modal-dialogs-3/render.jsx +176 -0
- data/app/javascript/seeds/blocks/dashboard-ui/page-layouts-1/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/page-layouts-1/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/page-layouts-1/render.jsx +20 -0
- data/app/javascript/seeds/blocks/dashboard-ui/page-layouts-2/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/page-layouts-2/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/page-layouts-2/render.jsx +22 -0
- data/app/javascript/seeds/blocks/dashboard-ui/page-layouts-3/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/page-layouts-3/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/page-layouts-3/render.jsx +22 -0
- data/app/javascript/seeds/blocks/dashboard-ui/sidebar-layouts-1/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/sidebar-layouts-1/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/sidebar-layouts-1/render.jsx +20 -0
- data/app/javascript/seeds/blocks/dashboard-ui/sign-in-forms-1/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/sign-in-forms-1/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/sign-in-forms-1/render.jsx +98 -0
- data/app/javascript/seeds/blocks/dashboard-ui/sign-in-forms-2/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/sign-in-forms-2/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/sign-in-forms-2/render.jsx +116 -0
- data/app/javascript/seeds/blocks/dashboard-ui/sign-in-forms-3/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/sign-in-forms-3/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/sign-in-forms-3/render.jsx +104 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-1/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-1/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-1/render.jsx +147 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-2/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-2/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-2/render.jsx +120 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-3/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-3/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-3/render.jsx +62 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-4/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-4/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-4/render.jsx +49 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-5/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-5/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-5/render.jsx +106 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-6/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-6/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-6/render.jsx +79 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-7/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-7/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-7/render.jsx +57 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-8/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-8/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/stat-cards-8/render.jsx +234 -0
- data/app/javascript/seeds/blocks/dashboard-ui/tables-1/config.json +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/tables-1/data.js +1 -0
- data/app/javascript/seeds/blocks/dashboard-ui/tables-1/render.jsx +295 -0
- data/app/javascript/seeds/blocks/datepicker-1/config.json +1 -0
- data/app/javascript/seeds/blocks/datepicker-1/data.js +1 -0
- data/app/javascript/seeds/blocks/datepicker-1/render.jsx +14 -0
- data/app/javascript/seeds/blocks/datepicker-2/config.json +1 -0
- data/app/javascript/seeds/blocks/datepicker-2/data.js +1 -0
- data/app/javascript/seeds/blocks/datepicker-2/render.jsx +29 -0
- data/app/javascript/seeds/blocks/datepicker-3/config.json +1 -0
- data/app/javascript/seeds/blocks/datepicker-3/data.js +1 -0
- data/app/javascript/seeds/blocks/datepicker-3/render.jsx +163 -0
- data/app/javascript/seeds/blocks/datepicker-4/config.json +1 -0
- data/app/javascript/seeds/blocks/datepicker-4/data.js +1 -0
- data/app/javascript/seeds/blocks/datepicker-4/render.jsx +192 -0
- data/app/javascript/seeds/blocks/ecommerce/checkout-page-1/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/checkout-page-1/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/checkout-page-1/render.jsx +723 -0
- data/app/javascript/seeds/blocks/ecommerce/checkout-page-2/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/checkout-page-2/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/checkout-page-2/render.jsx +508 -0
- data/app/javascript/seeds/blocks/ecommerce/checkout-page-3/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/checkout-page-3/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/checkout-page-3/render.jsx +632 -0
- data/app/javascript/seeds/blocks/ecommerce/checkout-page-4/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/checkout-page-4/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/checkout-page-4/render.jsx +1013 -0
- data/app/javascript/seeds/blocks/ecommerce/checkout-page-5/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/checkout-page-5/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/checkout-page-5/render.jsx +520 -0
- data/app/javascript/seeds/blocks/ecommerce/product-category-1/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-category-1/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-category-1/render.jsx +121 -0
- data/app/javascript/seeds/blocks/ecommerce/product-category-2/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-category-2/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-category-2/render.jsx +126 -0
- data/app/javascript/seeds/blocks/ecommerce/product-category-3/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-category-3/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-category-3/render.jsx +81 -0
- data/app/javascript/seeds/blocks/ecommerce/product-category-4/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-category-4/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-category-4/render.jsx +85 -0
- data/app/javascript/seeds/blocks/ecommerce/product-detail-1/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-detail-1/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-detail-1/render.jsx +80 -0
- data/app/javascript/seeds/blocks/ecommerce/product-detail-2/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-detail-2/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-detail-2/render.jsx +226 -0
- data/app/javascript/seeds/blocks/ecommerce/product-detail-3/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-detail-3/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-detail-3/render.jsx +315 -0
- data/app/javascript/seeds/blocks/ecommerce/product-detail-4/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-detail-4/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-detail-4/render.jsx +269 -0
- data/app/javascript/seeds/blocks/ecommerce/product-detail-5/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-detail-5/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-detail-5/render.jsx +265 -0
- data/app/javascript/seeds/blocks/ecommerce/product-detail-6/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-detail-6/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-detail-6/render.jsx +477 -0
- data/app/javascript/seeds/blocks/ecommerce/product-detail-7/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-detail-7/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-detail-7/render.jsx +405 -0
- data/app/javascript/seeds/blocks/ecommerce/product-features-1/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-features-1/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-features-1/render.jsx +71 -0
- data/app/javascript/seeds/blocks/ecommerce/product-features-2/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-features-2/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-features-2/render.jsx +135 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-1/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-1/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-1/render.jsx +87 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-2/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-2/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-2/render.jsx +151 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-3/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-3/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-3/render.jsx +313 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-4/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-4/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-4/render.jsx +223 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-5/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-5/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-5/render.jsx +200 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-6/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-6/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-6/render.jsx +177 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-7/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-7/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-7/render.jsx +175 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-8/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-8/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-list-8/render.jsx +231 -0
- data/app/javascript/seeds/blocks/ecommerce/product-quickview-1/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-quickview-1/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-quickview-1/render.jsx +64 -0
- data/app/javascript/seeds/blocks/ecommerce/product-quickview-2/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-quickview-2/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/product-quickview-2/render.jsx +62 -0
- data/app/javascript/seeds/blocks/ecommerce/promo-sections-1/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/promo-sections-1/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/promo-sections-1/render.jsx +75 -0
- data/app/javascript/seeds/blocks/ecommerce/shopping-cart-1/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/shopping-cart-1/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/shopping-cart-1/render.jsx +197 -0
- data/app/javascript/seeds/blocks/ecommerce/shopping-cart-2/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/shopping-cart-2/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/shopping-cart-2/render.jsx +143 -0
- data/app/javascript/seeds/blocks/ecommerce/shopping-cart-3/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/shopping-cart-3/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/shopping-cart-3/render.jsx +225 -0
- data/app/javascript/seeds/blocks/ecommerce/shopping-cart-4/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/shopping-cart-4/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/shopping-cart-4/render.jsx +93 -0
- data/app/javascript/seeds/blocks/ecommerce/store-navigation-1/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce/store-navigation-1/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce/store-navigation-1/render.jsx +290 -0
- data/app/javascript/seeds/blocks/ecommerce-charts-1/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce-charts-1/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce-charts-1/render.jsx +86 -0
- data/app/javascript/seeds/blocks/ecommerce-charts-2/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce-charts-2/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce-charts-2/render.jsx +119 -0
- data/app/javascript/seeds/blocks/ecommerce-charts-3/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce-charts-3/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce-charts-3/render.jsx +97 -0
- data/app/javascript/seeds/blocks/ecommerce-charts-4/config.json +1 -0
- data/app/javascript/seeds/blocks/ecommerce-charts-4/data.js +1 -0
- data/app/javascript/seeds/blocks/ecommerce-charts-4/render.jsx +108 -0
- data/app/javascript/seeds/blocks/line-charts-1/config.json +1 -0
- data/app/javascript/seeds/blocks/line-charts-1/data.js +1 -0
- data/app/javascript/seeds/blocks/line-charts-1/render.jsx +230 -0
- data/app/javascript/seeds/blocks/line-charts-2/config.json +1 -0
- data/app/javascript/seeds/blocks/line-charts-2/data.js +1 -0
- data/app/javascript/seeds/blocks/line-charts-2/render.jsx +118 -0
- data/app/javascript/seeds/blocks/line-charts-3/config.json +1 -0
- data/app/javascript/seeds/blocks/line-charts-3/data.js +1 -0
- data/app/javascript/seeds/blocks/line-charts-3/render.jsx +134 -0
- data/app/javascript/seeds/blocks/line-charts-4/config.json +1 -0
- data/app/javascript/seeds/blocks/line-charts-4/data.js +1 -0
- data/app/javascript/seeds/blocks/line-charts-4/render.jsx +115 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-1/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-1/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-1/render.jsx +31 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-10/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-10/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-10/render.jsx +76 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-2/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-2/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-2/render.jsx +78 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-3/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-3/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-3/render.jsx +50 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-4/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-4/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-4/render.jsx +24 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-5/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-5/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-5/render.jsx +66 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-6/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-6/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-6/render.jsx +69 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-7/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-7/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-7/render.jsx +43 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-8/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-8/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-8/render.jsx +63 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-9/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-9/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/call-to-action-9/render.jsx +27 -0
- data/app/javascript/seeds/blocks/marketing/changelog-1/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/changelog-1/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/changelog-1/render.jsx +106 -0
- data/app/javascript/seeds/blocks/marketing/changelog-2/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/changelog-2/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/changelog-2/render.jsx +157 -0
- data/app/javascript/seeds/blocks/marketing/changelog-3/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/changelog-3/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/changelog-3/render.jsx +204 -0
- data/app/javascript/seeds/blocks/marketing/changelog-4/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/changelog-4/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/changelog-4/render.jsx +199 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-1/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-1/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-1/render.jsx +155 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-10/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-10/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-10/render.jsx +83 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-11/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-11/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-11/render.jsx +338 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-12/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-12/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-12/render.jsx +96 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-13/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-13/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-13/render.jsx +77 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-2/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-2/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-2/render.jsx +117 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-3/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-3/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-3/render.jsx +105 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-4/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-4/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-4/render.jsx +127 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-5/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-5/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-5/render.jsx +78 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-6/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-6/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-6/render.jsx +79 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-7/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-7/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-7/render.jsx +138 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-8/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-8/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-8/render.jsx +215 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-9/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-9/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/feature-section-9/render.jsx +81 -0
- data/app/javascript/seeds/blocks/marketing/footers-1/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/footers-1/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/footers-1/render.jsx +106 -0
- data/app/javascript/seeds/blocks/marketing/footers-2/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/footers-2/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/footers-2/render.jsx +76 -0
- data/app/javascript/seeds/blocks/marketing/footers-3/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/footers-3/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/footers-3/render.jsx +160 -0
- data/app/javascript/seeds/blocks/marketing/footers-4/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/footers-4/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/footers-4/render.jsx +167 -0
- data/app/javascript/seeds/blocks/marketing/footers-5/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/footers-5/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/footers-5/render.jsx +223 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-1/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-1/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-1/render.jsx +49 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-10/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-10/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-10/render.jsx +147 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-11/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-11/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-11/render.jsx +218 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-12/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-12/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-12/render.jsx +287 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-13/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-13/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-13/render.jsx +113 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-14/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-14/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-14/render.jsx +249 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-2/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-2/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-2/render.jsx +94 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-3/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-3/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-3/render.jsx +51 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-4/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-4/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-4/render.jsx +153 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-5/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-5/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-5/render.jsx +210 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-6/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-6/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-6/render.jsx +191 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-7/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-7/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-7/render.jsx +306 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-8/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-8/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-8/render.jsx +103 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-9/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-9/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/hero-section-9/render.jsx +354 -0
- data/app/javascript/seeds/blocks/marketing/integrations-1/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/integrations-1/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/integrations-1/render.jsx +483 -0
- data/app/javascript/seeds/blocks/marketing/integrations-2/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/integrations-2/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/integrations-2/render.jsx +468 -0
- data/app/javascript/seeds/blocks/marketing/integrations-3/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/integrations-3/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/integrations-3/render.jsx +441 -0
- data/app/javascript/seeds/blocks/marketing/integrations-4/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/integrations-4/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/integrations-4/render.jsx +433 -0
- data/app/javascript/seeds/blocks/marketing/integrations-5/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/integrations-5/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/integrations-5/render.jsx +477 -0
- data/app/javascript/seeds/blocks/marketing/integrations-6/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/integrations-6/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/integrations-6/render.jsx +468 -0
- data/app/javascript/seeds/blocks/marketing/navbars-1/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/navbars-1/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/navbars-1/render.jsx +133 -0
- data/app/javascript/seeds/blocks/marketing/navbars-2/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/navbars-2/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/navbars-2/render.jsx +95 -0
- data/app/javascript/seeds/blocks/marketing/navbars-3/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/navbars-3/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/navbars-3/render.jsx +246 -0
- data/app/javascript/seeds/blocks/marketing/newsletter-sections-1/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/newsletter-sections-1/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/newsletter-sections-1/render.jsx +45 -0
- data/app/javascript/seeds/blocks/marketing/newsletter-sections-2/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/newsletter-sections-2/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/newsletter-sections-2/render.jsx +55 -0
- data/app/javascript/seeds/blocks/marketing/newsletter-sections-3/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/newsletter-sections-3/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/newsletter-sections-3/render.jsx +29 -0
- data/app/javascript/seeds/blocks/marketing/pricing-table-1/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/pricing-table-1/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/pricing-table-1/render.jsx +110 -0
- data/app/javascript/seeds/blocks/marketing/pricing-table-2/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/pricing-table-2/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/pricing-table-2/render.jsx +71 -0
- data/app/javascript/seeds/blocks/marketing/pricing-table-3/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/pricing-table-3/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/pricing-table-3/render.jsx +124 -0
- data/app/javascript/seeds/blocks/marketing/pricing-table-4/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/pricing-table-4/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/pricing-table-4/render.jsx +205 -0
- data/app/javascript/seeds/blocks/marketing/pricing-table-5/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/pricing-table-5/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/pricing-table-5/render.jsx +143 -0
- data/app/javascript/seeds/blocks/marketing/pricing-table-6/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/pricing-table-6/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/pricing-table-6/render.jsx +195 -0
- data/app/javascript/seeds/blocks/marketing/pricing-table-7/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/pricing-table-7/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/pricing-table-7/render.jsx +351 -0
- data/app/javascript/seeds/blocks/marketing/team-sections-1/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/team-sections-1/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/team-sections-1/render.jsx +71 -0
- data/app/javascript/seeds/blocks/marketing/team-sections-2/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/team-sections-2/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/team-sections-2/render.jsx +125 -0
- data/app/javascript/seeds/blocks/marketing/team-sections-3/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/team-sections-3/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/team-sections-3/render.jsx +136 -0
- data/app/javascript/seeds/blocks/marketing/team-sections-4/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/team-sections-4/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/team-sections-4/render.jsx +107 -0
- data/app/javascript/seeds/blocks/marketing/team-sections-5/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/team-sections-5/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/team-sections-5/render.jsx +124 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-1/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-1/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-1/render.jsx +112 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-10/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-10/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-10/render.jsx +106 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-11/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-11/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-11/render.jsx +79 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-12/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-12/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-12/render.jsx +173 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-13/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-13/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-13/render.jsx +121 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-14/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-14/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-14/render.jsx +158 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-15/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-15/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-15/render.jsx +109 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-2/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-2/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-2/render.jsx +81 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-3/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-3/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-3/render.jsx +149 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-4/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-4/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-4/render.jsx +148 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-5/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-5/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-5/render.jsx +153 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-6/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-6/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-6/render.jsx +155 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-7/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-7/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-7/render.jsx +102 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-8/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-8/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-8/render.jsx +161 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-9/config.json +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-9/data.js +1 -0
- data/app/javascript/seeds/blocks/marketing/testimonials-9/render.jsx +195 -0
- data/app/javascript/seeds/blocks/project-management-charts-1/config.json +1 -0
- data/app/javascript/seeds/blocks/project-management-charts-1/data.js +1 -0
- data/app/javascript/seeds/blocks/project-management-charts-1/render.jsx +172 -0
- data/app/javascript/seeds/blocks/project-management-charts-2/config.json +1 -0
- data/app/javascript/seeds/blocks/project-management-charts-2/data.js +1 -0
- data/app/javascript/seeds/blocks/project-management-charts-2/render.jsx +147 -0
- data/app/javascript/seeds/blocks/switch-cards-1/config.json +1 -0
- data/app/javascript/seeds/blocks/switch-cards-1/data.js +1 -0
- data/app/javascript/seeds/blocks/switch-cards-1/render.jsx +116 -0
- data/app/javascript/seeds/blocks/theme-switchers-1/config.json +1 -0
- data/app/javascript/seeds/blocks/theme-switchers-1/data.js +1 -0
- data/app/javascript/seeds/blocks/theme-switchers-1/render.jsx +22 -0
- data/app/javascript/seeds/blocks/theme-switchers-2/config.json +1 -0
- data/app/javascript/seeds/blocks/theme-switchers-2/data.js +1 -0
- data/app/javascript/seeds/blocks/theme-switchers-2/render.jsx +51 -0
- data/app/javascript/seeds/blocks/theme-switchers-3/config.json +1 -0
- data/app/javascript/seeds/blocks/theme-switchers-3/data.js +1 -0
- data/app/javascript/seeds/blocks/theme-switchers-3/render.jsx +37 -0
- data/app/javascript/seeds/examples/blog-cards-1/config.json +1 -0
- data/app/javascript/seeds/examples/blog-cards-1/data.js +1 -0
- data/app/javascript/seeds/examples/blog-cards-1/render.jsx +81 -0
- data/app/javascript/seeds/examples/blog-cards-2/config.json +1 -0
- data/app/javascript/seeds/examples/blog-cards-2/data.js +1 -0
- data/app/javascript/seeds/examples/blog-cards-2/render.jsx +78 -0
- data/app/javascript/seeds/examples/blog-cards-3/config.json +1 -0
- data/app/javascript/seeds/examples/blog-cards-3/data.js +1 -0
- data/app/javascript/seeds/examples/blog-cards-3/render.jsx +80 -0
- data/app/javascript/seeds/examples/blog-cards-4/config.json +1 -0
- data/app/javascript/seeds/examples/blog-cards-4/data.js +1 -0
- data/app/javascript/seeds/examples/blog-cards-4/render.jsx +32 -0
- data/app/javascript/seeds/examples/chat-bubbles-1/config.json +1 -0
- data/app/javascript/seeds/examples/chat-bubbles-1/data.js +1 -0
- data/app/javascript/seeds/examples/chat-bubbles-1/render.jsx +154 -0
- data/app/javascript/seeds/examples/chat-bubbles-2/config.json +1 -0
- data/app/javascript/seeds/examples/chat-bubbles-2/data.js +1 -0
- data/app/javascript/seeds/examples/chat-bubbles-2/render.jsx +88 -0
- data/app/javascript/seeds/examples/chat-bubbles-3/config.json +1 -0
- data/app/javascript/seeds/examples/chat-bubbles-3/data.js +1 -0
- data/app/javascript/seeds/examples/chat-bubbles-3/render.jsx +90 -0
- data/app/javascript/seeds/examples/chat-bubbles-4/config.json +1 -0
- data/app/javascript/seeds/examples/chat-bubbles-4/data.js +1 -0
- data/app/javascript/seeds/examples/chat-bubbles-4/render.jsx +169 -0
- data/app/javascript/seeds/examples/payment-methods-1/config.json +1 -0
- data/app/javascript/seeds/examples/payment-methods-1/data.js +1 -0
- data/app/javascript/seeds/examples/payment-methods-1/render.jsx +128 -0
- data/app/javascript/seeds/examples/payment-methods-2/config.json +1 -0
- data/app/javascript/seeds/examples/payment-methods-2/data.js +1 -0
- data/app/javascript/seeds/examples/payment-methods-2/render.jsx +80 -0
- data/app/javascript/seeds/examples/payment-methods-3/config.json +1 -0
- data/app/javascript/seeds/examples/payment-methods-3/data.js +1 -0
- data/app/javascript/seeds/examples/payment-methods-3/render.jsx +1 -0
- data/app/javascript/seeds/examples/product-cards-1/config.json +1 -0
- data/app/javascript/seeds/examples/product-cards-1/data.js +1 -0
- data/app/javascript/seeds/examples/product-cards-1/render.jsx +48 -0
- data/app/javascript/seeds/examples/product-cards-2/config.json +1 -0
- data/app/javascript/seeds/examples/product-cards-2/data.js +1 -0
- data/app/javascript/seeds/examples/product-cards-2/render.jsx +53 -0
- data/app/javascript/seeds/examples/product-cards-3/config.json +1 -0
- data/app/javascript/seeds/examples/product-cards-3/data.js +1 -0
- data/app/javascript/seeds/examples/product-cards-3/render.jsx +102 -0
- data/app/javascript/seeds/examples/product-cards-4/config.json +1 -0
- data/app/javascript/seeds/examples/product-cards-4/data.js +1 -0
- data/app/javascript/seeds/examples/product-cards-4/render.jsx +40 -0
- data/app/javascript/seeds/examples/product-cards-5/config.json +1 -0
- data/app/javascript/seeds/examples/product-cards-5/data.js +1 -0
- data/app/javascript/seeds/examples/product-cards-5/render.jsx +79 -0
- data/app/javascript/seeds/examples/product-cards-6/config.json +1 -0
- data/app/javascript/seeds/examples/product-cards-6/data.js +1 -0
- data/app/javascript/seeds/examples/product-cards-6/render.jsx +180 -0
- data/app/javascript/seeds/examples/product-cards-7/config.json +1 -0
- data/app/javascript/seeds/examples/product-cards-7/data.js +1 -0
- data/app/javascript/seeds/examples/product-cards-7/render.jsx +181 -0
- data/app/javascript/seeds/examples/product-list-1/config.json +1 -0
- data/app/javascript/seeds/examples/product-list-1/data.js +1 -0
- data/app/javascript/seeds/examples/product-list-1/render.jsx +114 -0
- data/app/javascript/seeds/examples/review-cards-1/config.json +1 -0
- data/app/javascript/seeds/examples/review-cards-1/data.js +1 -0
- data/app/javascript/seeds/examples/review-cards-1/render.jsx +54 -0
- data/app/javascript/seeds/examples/review-cards-2/config.json +1 -0
- data/app/javascript/seeds/examples/review-cards-2/data.js +1 -0
- data/app/javascript/seeds/examples/review-cards-2/render.jsx +68 -0
- data/app/javascript/seeds/examples/review-cards-3/config.json +1 -0
- data/app/javascript/seeds/examples/review-cards-3/data.js +1 -0
- data/app/javascript/seeds/examples/review-cards-3/render.jsx +101 -0
- data/app/javascript/seeds/examples/social-media-post-1/config.json +1 -0
- data/app/javascript/seeds/examples/social-media-post-1/data.js +1 -0
- data/app/javascript/seeds/examples/social-media-post-1/render.jsx +162 -0
- data/app/javascript/seeds/examples/social-media-post-2/config.json +1 -0
- data/app/javascript/seeds/examples/social-media-post-2/data.js +1 -0
- data/app/javascript/seeds/examples/social-media-post-2/render.jsx +172 -0
- data/app/javascript/seeds/examples/social-media-post-3/config.json +1 -0
- data/app/javascript/seeds/examples/social-media-post-3/data.js +1 -0
- data/app/javascript/seeds/examples/social-media-post-3/render.jsx +270 -0
- data/app/javascript/seeds/examples/social-media-post-4/config.json +1 -0
- data/app/javascript/seeds/examples/social-media-post-4/data.js +1 -0
- data/app/javascript/seeds/examples/social-media-post-4/render.jsx +188 -0
- data/app/javascript/seeds/examples/stat-cards-1/config.json +1 -0
- data/app/javascript/seeds/examples/stat-cards-1/data.js +1 -0
- data/app/javascript/seeds/examples/stat-cards-1/render.jsx +31 -0
- data/app/javascript/seeds/examples/stat-cards-2/config.json +1 -0
- data/app/javascript/seeds/examples/stat-cards-2/data.js +1 -0
- data/app/javascript/seeds/examples/stat-cards-2/render.jsx +42 -0
- data/app/javascript/seeds/examples/stat-cards-3/config.json +1 -0
- data/app/javascript/seeds/examples/stat-cards-3/data.js +1 -0
- data/app/javascript/seeds/examples/stat-cards-3/render.jsx +114 -0
- data/app/javascript/seeds/examples/stat-cards-4/config.json +1 -0
- data/app/javascript/seeds/examples/stat-cards-4/data.js +1 -0
- data/app/javascript/seeds/examples/stat-cards-4/render.jsx +117 -0
- data/app/javascript/seeds/examples/task-cards-1/config.json +1 -0
- data/app/javascript/seeds/examples/task-cards-1/data.js +1 -0
- data/app/javascript/seeds/examples/task-cards-1/render.jsx +133 -0
- data/app/javascript/seeds/examples/task-cards-2/config.json +1 -0
- data/app/javascript/seeds/examples/task-cards-2/data.js +1 -0
- data/app/javascript/seeds/examples/task-cards-2/render.jsx +122 -0
- data/app/javascript/seeds/examples/welcome-cards-1/config.json +1 -0
- data/app/javascript/seeds/examples/welcome-cards-1/data.js +1 -0
- data/app/javascript/seeds/examples/welcome-cards-1/render.jsx +40 -0
- data/app/javascript/seeds/examples/welcome-cards-2/config.json +1 -0
- data/app/javascript/seeds/examples/welcome-cards-2/data.js +1 -0
- data/app/javascript/seeds/examples/welcome-cards-2/render.jsx +58 -0
- data/app/javascript/seeds/examples/welcome-cards-3/config.json +1 -0
- data/app/javascript/seeds/examples/welcome-cards-3/data.js +1 -0
- data/app/javascript/seeds/examples/welcome-cards-3/render.jsx +91 -0
- data/app/javascript/seeds/ide-editor/config.json +4 -0
- data/app/javascript/seeds/ide-editor/data.js +16 -0
- data/app/javascript/seeds/ide-editor/render.jsx +132 -0
- data/app/javascript/seeds/ide-file-tree/config.json +4 -0
- data/app/javascript/seeds/ide-file-tree/data.js +50 -0
- data/app/javascript/seeds/ide-file-tree/render.jsx +426 -0
- data/app/javascript/seeds/ide-preview/config.json +4 -0
- data/app/javascript/seeds/ide-preview/data.js +4 -0
- data/app/javascript/seeds/ide-preview/render.jsx +49 -0
- data/app/javascript/seeds/ide-terminal/config.json +4 -0
- data/app/javascript/seeds/ide-terminal/data.js +4 -0
- data/app/javascript/seeds/ide-terminal/render.jsx +247 -0
- data/app/javascript/seeds/main-menu/config.json +9 -0
- data/app/javascript/seeds/main-menu/data.js +6 -0
- data/app/javascript/seeds/main-menu/render.jsx +70 -0
- data/app/models/concerns/jigsaw/grid_configurable.rb +89 -0
- data/app/models/concerns/jigsaw/slot_compilable.rb +69 -0
- data/app/models/jigsaw/application_record.rb +5 -0
- data/app/models/jigsaw/layout.rb +61 -0
- data/app/models/jigsaw/layout_template.rb +16 -0
- data/app/models/jigsaw/page.rb +35 -0
- data/app/models/jigsaw/schemas/layout_config.json +54 -0
- data/app/models/jigsaw/slot.rb +109 -0
- data/app/models/jigsaw/slot_template.rb +29 -0
- data/app/views/jigsaw/dashboard/index.html.ruby +23 -0
- data/app/views/jigsaw/layout_templates/_form.html.ruby +69 -0
- data/app/views/jigsaw/layout_templates/edit.html.ruby +72 -0
- data/app/views/jigsaw/layout_templates/index.html.ruby +48 -0
- data/app/views/jigsaw/layout_templates/new.html.ruby +19 -0
- data/app/views/jigsaw/pages/_form.html.ruby +75 -0
- data/app/views/jigsaw/pages/edit.html.ruby +104 -0
- data/app/views/jigsaw/pages/index.html.ruby +65 -0
- data/app/views/jigsaw/pages/new.html.ruby +34 -0
- data/app/views/jigsaw/pages/show.html.ruby +28 -0
- data/app/views/jigsaw/slot_templates/edit.html.ruby +42 -0
- data/app/views/jigsaw/slot_templates/index.html.ruby +73 -0
- data/app/views/jigsaw/slot_templates/new.html.ruby +21 -0
- data/app/views/jigsaw/slot_templates/show.html.ruby +38 -0
- data/app/views/jigsaw/slots/_shared/_menu.html.ruby +7 -0
- data/app/views/jigsaw/slots/edit.html.ruby +52 -0
- data/app/views/jigsaw/slots/index.html.ruby +17 -0
- data/app/views/layouts/jigsaw/application.html.ruby +31 -0
- data/config/importmap.rb +35 -0
- data/config/routes.rb +27 -0
- data/db/migrate/20260505185636_create_jigsaw_custom_pages.rb +12 -0
- data/db/migrate/20260505185637_create_jigsaw_data_functions.rb +15 -0
- data/db/migrate/20260505185638_create_jigsaw_render_functions.rb +15 -0
- data/db/migrate/20260505185639_create_jigsaw_page_modules.rb +15 -0
- data/db/migrate/20260505185640_create_jigsaw_layouts.rb +14 -0
- data/db/migrate/20260506000001_remove_slot_from_jigsaw_page_modules.rb +5 -0
- data/db/migrate/20260506000002_make_page_module_functions_optional.rb +6 -0
- data/db/migrate/20260506000003_inline_functions_on_page_modules.rb +55 -0
- data/db/migrate/20260507000001_move_layout_fk_to_layouts_table.rb +30 -0
- data/db/migrate/20260507000002_move_page_modules_to_layouts.rb +30 -0
- data/db/migrate/20260508000001_rename_custom_pages_to_pages.rb +18 -0
- data/db/migrate/20260508000002_rename_page_modules_to_slots.rb +7 -0
- data/db/migrate/20260509000001_create_jigsaw_templates.rb +13 -0
- data/db/migrate/20260509000002_create_jigsaw_template_layouts.rb +12 -0
- data/db/migrate/20260509000003_create_jigsaw_template_slots.rb +22 -0
- data/db/migrate/20260509000004_add_template_linking_to_layouts.rb +6 -0
- data/db/migrate/20260509000005_add_linked_to_template_to_slots.rb +5 -0
- data/db/migrate/20260510000001_refactor_templates_to_layout_and_slot_templates.rb +104 -0
- data/db/seeds/01_pages.rb +69 -0
- data/db/seeds/02_main_menu_slot.rb +15 -0
- data/db/seeds/03_webcontainer_ide.rb +51 -0
- data/db/seeds.rb +120 -0
- data/lib/jigsaw/engine.rb +29 -0
- data/lib/jigsaw/grid_layout_generator.rb +55 -0
- data/lib/jigsaw/jsx_compiler.rb +21 -0
- data/lib/jigsaw/version.rb +3 -0
- data/lib/jigsaw/version.rb.erb +3 -0
- data/lib/jigsaw.rb +11 -0
- data/lib/jigsaw_engine.rb +4 -0
- data/lib/tasks/kube_tasks.rake +4 -0
- data/lib/tasks/shadcn.rake +171 -0
- metadata +1033 -0
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
import Image from "next/image";
|
|
2
|
+
|
|
3
|
+
import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs";
|
|
4
|
+
import { Card, CardContent } from "@/components/ui/card";
|
|
5
|
+
|
|
6
|
+
const tabContent = {
|
|
7
|
+
"workflow-automation": {
|
|
8
|
+
description:
|
|
9
|
+
"Transform your business operations with powerful automation capabilities. Our platform enables seamless workflow management, real-time process optimization, and intelligent task delegation. Experience enhanced efficiency and productivity through automated solutions that adapt to your business needs.",
|
|
10
|
+
image:
|
|
11
|
+
"https://images.unsplash.com/photo-1522071820081-009f0129c71c?q=80&w=500&auto=format&fit=crop&ixlib=rb-4.1.0",
|
|
12
|
+
features: [
|
|
13
|
+
{
|
|
14
|
+
title: "Intelligent Task Routing",
|
|
15
|
+
description:
|
|
16
|
+
"Automatically assign tasks to the right team members using smart algorithms.",
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
title: "Performance Metrics",
|
|
20
|
+
description:
|
|
21
|
+
"Track productivity and measure outcomes with comprehensive analytics.",
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
title: "Real-Time Updates",
|
|
25
|
+
description:
|
|
26
|
+
"Stay synchronized with instant notifications and live status updates.",
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
title: "Schedule Management",
|
|
30
|
+
description:
|
|
31
|
+
"Organize and manage timelines with intelligent scheduling capabilities.",
|
|
32
|
+
},
|
|
33
|
+
],
|
|
34
|
+
},
|
|
35
|
+
"team-collaboration": {
|
|
36
|
+
description:
|
|
37
|
+
"Build stronger teams with our comprehensive collaboration platform. Enable real-time communication, shared workspaces, and collaborative project management. Break down silos and create a unified work environment where ideas flow freely and productivity soars.",
|
|
38
|
+
image:
|
|
39
|
+
"https://images.unsplash.com/photo-1543269865-cbf427effbad?q=80&w=500&auto=format&fit=crop&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D",
|
|
40
|
+
features: [
|
|
41
|
+
{
|
|
42
|
+
title: "Unified Workspaces",
|
|
43
|
+
description:
|
|
44
|
+
"Create shared spaces where teams can collaborate in real-time.",
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
title: "Team Analytics",
|
|
48
|
+
description:
|
|
49
|
+
"Understand team dynamics and collaboration patterns with detailed insights.",
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
title: "Instant Communication",
|
|
53
|
+
description:
|
|
54
|
+
"Connect instantly with integrated messaging and video conferencing.",
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
title: "Task Completion",
|
|
58
|
+
description:
|
|
59
|
+
"Track and manage task completion with automated workflows and notifications.",
|
|
60
|
+
},
|
|
61
|
+
],
|
|
62
|
+
},
|
|
63
|
+
"data-analytics": {
|
|
64
|
+
description:
|
|
65
|
+
"Unlock the power of your data with advanced analytics capabilities. Transform raw information into actionable insights through intuitive dashboards, custom reports, and predictive analytics. Drive strategic decisions with confidence using data-driven intelligence.",
|
|
66
|
+
image:
|
|
67
|
+
"https://images.unsplash.com/photo-1603201667141-5a2d4c673378?q=80&w=500&auto=format&fit=crop&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D",
|
|
68
|
+
features: [
|
|
69
|
+
{
|
|
70
|
+
title: "Custom Dashboards",
|
|
71
|
+
description:
|
|
72
|
+
"Build personalized dashboards tailored to your specific business needs.",
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
title: "Advanced Reporting",
|
|
76
|
+
description:
|
|
77
|
+
"Generate comprehensive reports with automated data collection and analysis.",
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
title: "Predictive Insights",
|
|
81
|
+
description:
|
|
82
|
+
"Forecast trends and opportunities using machine learning algorithms.",
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
title: "Growth Analytics",
|
|
86
|
+
description:
|
|
87
|
+
"Identify growth opportunities and track key performance indicators over time.",
|
|
88
|
+
},
|
|
89
|
+
],
|
|
90
|
+
},
|
|
91
|
+
"project-management": {
|
|
92
|
+
description:
|
|
93
|
+
"Take control of your projects with end-to-end management solutions. From initial planning to final delivery, our platform provides the tools you need to stay organized, meet deadlines, and exceed expectations. Manage resources, track progress, and ensure successful project completion.",
|
|
94
|
+
image:
|
|
95
|
+
"https://images.unsplash.com/photo-1517048676732-d65bc937f952?q=80&w=500&auto=format&fit=crop&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D",
|
|
96
|
+
features: [
|
|
97
|
+
{
|
|
98
|
+
title: "Strategic Planning",
|
|
99
|
+
description:
|
|
100
|
+
"Create detailed project plans with milestones and resource allocation.",
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
title: "Progress Tracking",
|
|
104
|
+
description:
|
|
105
|
+
"Monitor project status and performance with real-time updates and metrics.",
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
title: "Resource Optimization",
|
|
109
|
+
description:
|
|
110
|
+
"Maximize efficiency by allocating resources based on project priorities.",
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
title: "Custom Configuration",
|
|
114
|
+
description:
|
|
115
|
+
"Tailor project settings and workflows to match your team's specific needs.",
|
|
116
|
+
},
|
|
117
|
+
],
|
|
118
|
+
},
|
|
119
|
+
};
|
|
120
|
+
|
|
121
|
+
export default function FeatureSectionEight() {
|
|
122
|
+
return (
|
|
123
|
+
<section className="py-14 sm:py-16">
|
|
124
|
+
<div className="mx-auto max-w-7xl px-4 sm:px-6 lg:px-8">
|
|
125
|
+
<div className="mx-auto max-w-3xl space-y-4 text-center">
|
|
126
|
+
<h2 className="text-3xl leading-tight font-bold lg:text-4xl">
|
|
127
|
+
Productivity Solutions
|
|
128
|
+
</h2>
|
|
129
|
+
<p className="text-muted-foreground text-lg/relaxed">
|
|
130
|
+
Empower your team with intelligent tools for workflow automation,
|
|
131
|
+
team collaboration, data analytics, and project management.
|
|
132
|
+
Streamline operations and drive growth with comprehensive
|
|
133
|
+
productivity solutions.
|
|
134
|
+
</p>
|
|
135
|
+
</div>
|
|
136
|
+
|
|
137
|
+
<div className="mt-8 lg:mt-12">
|
|
138
|
+
<Tabs defaultValue="workflow-automation" className="w-full">
|
|
139
|
+
<div className="flex justify-center">
|
|
140
|
+
<TabsList className="inline-flex h-auto w-full flex-col md:h-12 md:flex-row">
|
|
141
|
+
<TabsTrigger
|
|
142
|
+
className="w-full md:w-auto"
|
|
143
|
+
value="workflow-automation"
|
|
144
|
+
>
|
|
145
|
+
Workflow Automation
|
|
146
|
+
</TabsTrigger>
|
|
147
|
+
<TabsTrigger
|
|
148
|
+
className="w-full md:w-auto"
|
|
149
|
+
value="team-collaboration"
|
|
150
|
+
>
|
|
151
|
+
Team Collaboration
|
|
152
|
+
</TabsTrigger>
|
|
153
|
+
<TabsTrigger
|
|
154
|
+
className="w-full md:w-auto"
|
|
155
|
+
value="data-analytics"
|
|
156
|
+
>
|
|
157
|
+
Data Analytics
|
|
158
|
+
</TabsTrigger>
|
|
159
|
+
<TabsTrigger
|
|
160
|
+
className="w-full md:w-auto"
|
|
161
|
+
value="project-management"
|
|
162
|
+
>
|
|
163
|
+
Project Management
|
|
164
|
+
</TabsTrigger>
|
|
165
|
+
</TabsList>
|
|
166
|
+
</div>
|
|
167
|
+
|
|
168
|
+
{Object.entries(tabContent).map(([key, content]) => (
|
|
169
|
+
<TabsContent key={key} value={key} className="mt-8">
|
|
170
|
+
<div className="grid gap-8 lg:grid-cols-2 lg:items-start">
|
|
171
|
+
<div className="relative aspect-4/3 w-full overflow-hidden rounded-lg">
|
|
172
|
+
<Image
|
|
173
|
+
src={content.image}
|
|
174
|
+
alt={"Productivity Solutions"}
|
|
175
|
+
fill
|
|
176
|
+
className="object-cover"
|
|
177
|
+
/>
|
|
178
|
+
</div>
|
|
179
|
+
|
|
180
|
+
<div className="space-y-6 lg:space-y-10">
|
|
181
|
+
<div className="space-y-4">
|
|
182
|
+
<p className="text-muted-foreground leading-relaxed">
|
|
183
|
+
{content.description}
|
|
184
|
+
</p>
|
|
185
|
+
</div>
|
|
186
|
+
|
|
187
|
+
<div className="grid gap-4 sm:grid-cols-2">
|
|
188
|
+
{content.features.map((feature) => {
|
|
189
|
+
return (
|
|
190
|
+
<Card
|
|
191
|
+
key={feature.title}
|
|
192
|
+
className="bg-muted/50 border-0 shadow-none"
|
|
193
|
+
>
|
|
194
|
+
<CardContent>
|
|
195
|
+
<h5 className="mb-2 font-medium">
|
|
196
|
+
{feature.title}
|
|
197
|
+
</h5>
|
|
198
|
+
<p className="text-muted-foreground text-sm leading-relaxed">
|
|
199
|
+
{feature.description}
|
|
200
|
+
</p>
|
|
201
|
+
</CardContent>
|
|
202
|
+
</Card>
|
|
203
|
+
);
|
|
204
|
+
})}
|
|
205
|
+
</div>
|
|
206
|
+
</div>
|
|
207
|
+
</div>
|
|
208
|
+
</TabsContent>
|
|
209
|
+
))}
|
|
210
|
+
</Tabs>
|
|
211
|
+
</div>
|
|
212
|
+
</div>
|
|
213
|
+
</section>
|
|
214
|
+
);
|
|
215
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export default function(shared, config) { return config }
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { ArrowUpRight } from "lucide-react";
|
|
2
|
+
import { Button } from "@/components/ui/button";
|
|
3
|
+
import Image from "next/image";
|
|
4
|
+
|
|
5
|
+
export default function FeatureSectionNine() {
|
|
6
|
+
return (
|
|
7
|
+
<section className="py-12 sm:py-16 lg:py-20">
|
|
8
|
+
<div className="mx-auto max-w-7xl space-y-8 px-4 sm:px-6 lg:space-y-4 lg:px-8">
|
|
9
|
+
<div className="grid items-start gap-4 sm:gap-4 lg:grid-cols-2 lg:gap-10">
|
|
10
|
+
<figure className="relative aspect-4/3 w-full overflow-hidden">
|
|
11
|
+
<Image
|
|
12
|
+
src="https://images.unsplash.com/photo-1708559348128-3cde89847e2b?q=80&w=1000&auto=format&fit=crop&ixlib=rb-4.1.0"
|
|
13
|
+
fill
|
|
14
|
+
className="object-cover"
|
|
15
|
+
alt="Productivity tracking dashboard"
|
|
16
|
+
/>
|
|
17
|
+
</figure>
|
|
18
|
+
|
|
19
|
+
<div className="space-y-4 lg:space-y-6">
|
|
20
|
+
<div className="space-y-2">
|
|
21
|
+
<div className="text-muted-foreground text-xs tracking-wider uppercase">
|
|
22
|
+
<span className="me-2 inline-block size-2 rounded-full bg-blue-500"></span>
|
|
23
|
+
Track Productivity
|
|
24
|
+
</div>
|
|
25
|
+
|
|
26
|
+
<h3 className="text-2xl leading-tight font-bold text-balance sm:text-3xl lg:text-4xl/tight">
|
|
27
|
+
Easily monitor what your team is working on
|
|
28
|
+
</h3>
|
|
29
|
+
</div>
|
|
30
|
+
|
|
31
|
+
<p className="text-muted-foreground text-sm leading-relaxed sm:text-base lg:text-lg">
|
|
32
|
+
Easily monitor team activities with built-in progress tracking and
|
|
33
|
+
real-time updates — giving you clarity, control, and peace of mind
|
|
34
|
+
over every project milestone.
|
|
35
|
+
</p>
|
|
36
|
+
|
|
37
|
+
<Button variant="outline" size="lg">
|
|
38
|
+
Get Started
|
|
39
|
+
<ArrowUpRight />
|
|
40
|
+
</Button>
|
|
41
|
+
</div>
|
|
42
|
+
</div>
|
|
43
|
+
|
|
44
|
+
<div className="grid items-end gap-4 sm:gap-4 lg:grid-cols-2 lg:gap-10">
|
|
45
|
+
<div className="order-2 space-y-4 lg:order-1 lg:space-y-6">
|
|
46
|
+
<div className="space-y-2">
|
|
47
|
+
<div className="text-muted-foreground text-xs tracking-wider uppercase">
|
|
48
|
+
<span className="me-2 inline-block size-2 rounded-full bg-blue-500"></span>
|
|
49
|
+
Analytics & Insights
|
|
50
|
+
</div>
|
|
51
|
+
|
|
52
|
+
<h3 className="text-2xl leading-tight font-bold text-balance sm:text-3xl lg:text-4xl/tight">
|
|
53
|
+
Get detailed insights into your team's performance
|
|
54
|
+
</h3>
|
|
55
|
+
</div>
|
|
56
|
+
|
|
57
|
+
<p className="text-muted-foreground text-sm leading-relaxed sm:text-base lg:text-lg">
|
|
58
|
+
Access comprehensive analytics and performance metrics that help
|
|
59
|
+
you make data-driven decisions. Track key indicators, identify
|
|
60
|
+
trends, and optimize your workflow for better results.
|
|
61
|
+
</p>
|
|
62
|
+
|
|
63
|
+
<Button variant="outline" size="lg">
|
|
64
|
+
Learn More
|
|
65
|
+
<ArrowUpRight />
|
|
66
|
+
</Button>
|
|
67
|
+
</div>
|
|
68
|
+
|
|
69
|
+
<figure className="relative order-1 aspect-4/3 w-full overflow-hidden lg:order-2">
|
|
70
|
+
<Image
|
|
71
|
+
src="https://images.unsplash.com/photo-1763986665850-6e66549aa8e0?q=80&w=1000&auto=format&fit=crop&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D"
|
|
72
|
+
fill
|
|
73
|
+
className="object-cover"
|
|
74
|
+
alt="Team productivity dashboard"
|
|
75
|
+
/>
|
|
76
|
+
</figure>
|
|
77
|
+
</div>
|
|
78
|
+
</div>
|
|
79
|
+
</section>
|
|
80
|
+
);
|
|
81
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export default function(shared, config) { return config }
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
export default function Footer1() {
|
|
2
|
+
return (
|
|
3
|
+
<footer className="font-medium">
|
|
4
|
+
<div className="mx-auto grid max-w-7xl grid-cols-2 gap-10 px-4 py-16 md:grid-cols-5">
|
|
5
|
+
<nav className="col-span-2 md:col-span-1">
|
|
6
|
+
<a href="/">
|
|
7
|
+
<h4 className="text-foreground text-xl mb-2">Shadcn UI Kit</h4>
|
|
8
|
+
</a>
|
|
9
|
+
</nav>
|
|
10
|
+
<nav className="text-muted-foreground flex flex-col items-start space-y-2.5 md:space-y-1.5 [&_a]:text-sm">
|
|
11
|
+
<h4 className="text-foreground mb-2">Products</h4>
|
|
12
|
+
<a href="#" className="hover:text-foreground transition">
|
|
13
|
+
Todo List
|
|
14
|
+
</a>
|
|
15
|
+
<a href="#" className="hover:text-foreground transition">
|
|
16
|
+
Product Management
|
|
17
|
+
</a>
|
|
18
|
+
<a href="#" className="hover:text-foreground transition">
|
|
19
|
+
Git Manager
|
|
20
|
+
</a>
|
|
21
|
+
<a href="#" className="hover:text-foreground transition">
|
|
22
|
+
Status Reporter
|
|
23
|
+
</a>
|
|
24
|
+
<a href="#" className="hover:text-foreground transition">
|
|
25
|
+
Email Management
|
|
26
|
+
</a>
|
|
27
|
+
<a href="#" className="hover:text-foreground transition">
|
|
28
|
+
Responsibilities
|
|
29
|
+
</a>
|
|
30
|
+
<a href="#" className="hover:text-foreground transition">
|
|
31
|
+
Teams
|
|
32
|
+
</a>
|
|
33
|
+
</nav>
|
|
34
|
+
<nav className="text-muted-foreground flex flex-col items-start space-y-2.5 md:space-y-1.5 [&_a]:text-sm">
|
|
35
|
+
<h4 className="text-foreground mb-2">Resources</h4>
|
|
36
|
+
<a href="#" className="hover:text-foreground transition">
|
|
37
|
+
Technical Support
|
|
38
|
+
</a>
|
|
39
|
+
<a href="#" className="hover:text-foreground transition">
|
|
40
|
+
Licensing
|
|
41
|
+
</a>
|
|
42
|
+
<a href="#" className="hover:text-foreground transition">
|
|
43
|
+
Community
|
|
44
|
+
</a>
|
|
45
|
+
<a href="#" className="hover:text-foreground transition">
|
|
46
|
+
Knowledge Base
|
|
47
|
+
</a>
|
|
48
|
+
<a href="#" className="hover:text-foreground transition">
|
|
49
|
+
Marketplace
|
|
50
|
+
</a>
|
|
51
|
+
<a href="#" className="hover:text-foreground transition">
|
|
52
|
+
My Account
|
|
53
|
+
</a>
|
|
54
|
+
<a href="#" className="hover:text-foreground transition">
|
|
55
|
+
Support Ticket
|
|
56
|
+
</a>
|
|
57
|
+
</nav>
|
|
58
|
+
<nav className="text-muted-foreground flex flex-col items-start space-y-2.5 md:space-y-1.5 [&_a]:text-sm">
|
|
59
|
+
<h4 className="text-foreground mb-2">Learn</h4>
|
|
60
|
+
<a href="#" className="hover:text-foreground transition">
|
|
61
|
+
Certification
|
|
62
|
+
</a>
|
|
63
|
+
<a href="#" className="hover:text-foreground transition">
|
|
64
|
+
Partners
|
|
65
|
+
</a>
|
|
66
|
+
<a href="#" className="hover:text-foreground transition">
|
|
67
|
+
Documentation
|
|
68
|
+
</a>
|
|
69
|
+
<a href="#" className="hover:text-foreground transition">
|
|
70
|
+
Developer Resources
|
|
71
|
+
</a>
|
|
72
|
+
<a href="#" className="hover:text-foreground transition">
|
|
73
|
+
Purchasing FAQ
|
|
74
|
+
</a>
|
|
75
|
+
<a href="#" className="hover:text-foreground transition">
|
|
76
|
+
Enterprise services
|
|
77
|
+
</a>
|
|
78
|
+
</nav>
|
|
79
|
+
<nav className="text-muted-foreground flex flex-col items-start space-y-2.5 md:space-y-1.5 [&_a]:text-sm">
|
|
80
|
+
<h4 className="text-foreground mb-2">About Us</h4>
|
|
81
|
+
<a href="#" className="hover:text-foreground transition">
|
|
82
|
+
Company
|
|
83
|
+
</a>
|
|
84
|
+
<a href="#" className="hover:text-foreground transition">
|
|
85
|
+
Careers
|
|
86
|
+
</a>
|
|
87
|
+
<a href="#" className="hover:text-foreground transition">
|
|
88
|
+
Events
|
|
89
|
+
</a>
|
|
90
|
+
<a href="#" className="hover:text-foreground transition">
|
|
91
|
+
Blogs
|
|
92
|
+
</a>
|
|
93
|
+
<a href="#" className="hover:text-foreground transition">
|
|
94
|
+
Contact
|
|
95
|
+
</a>
|
|
96
|
+
<a href="#" className="hover:text-foreground transition">
|
|
97
|
+
Security
|
|
98
|
+
</a>
|
|
99
|
+
<a href="#" className="hover:text-foreground transition">
|
|
100
|
+
Privacy
|
|
101
|
+
</a>
|
|
102
|
+
</nav>
|
|
103
|
+
</div>
|
|
104
|
+
</footer>
|
|
105
|
+
);
|
|
106
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export default function(shared, config) { return config }
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import Link from "next/link";
|
|
2
|
+
import { Separator } from "@/components/ui/separator";
|
|
3
|
+
import { Facebook, Twitter, Instagram, Linkedin, Github } from "lucide-react";
|
|
4
|
+
|
|
5
|
+
export default function Footer() {
|
|
6
|
+
return (
|
|
7
|
+
<footer className="py-12">
|
|
8
|
+
<div className="mx-auto max-w-7xl space-y-6 px-4">
|
|
9
|
+
<div className="flex flex-col items-center justify-between lg:flex-row space-y-4 lg:space-y-0">
|
|
10
|
+
{/* Logo */}
|
|
11
|
+
<Link href="/" className="text-center">
|
|
12
|
+
<h4 className="text-foreground text-xl">Shadcn UI Kit</h4>
|
|
13
|
+
</Link>
|
|
14
|
+
|
|
15
|
+
{/* Navigation Links */}
|
|
16
|
+
<nav className="text-muted-foreground [&_a]:hover:text-primary flex flex-wrap justify-center gap-4 [&_a]:text-sm">
|
|
17
|
+
<Link href="#">About</Link>
|
|
18
|
+
<Link href="#">Services</Link>
|
|
19
|
+
<Link href="#">Products</Link>
|
|
20
|
+
<Link href="#">Contact</Link>
|
|
21
|
+
<Link href="#">Blog</Link>
|
|
22
|
+
</nav>
|
|
23
|
+
|
|
24
|
+
<div className="text-muted-foreground [&_a]:hover:text-primary flex justify-center space-x-6 [&_a]:text-sm">
|
|
25
|
+
<Link href="https://facebook.com" aria-label="Facebook">
|
|
26
|
+
<Facebook className="size-4" />
|
|
27
|
+
</Link>
|
|
28
|
+
<Link href="https://twitter.com" aria-label="Twitter">
|
|
29
|
+
<Twitter className="size-4" />
|
|
30
|
+
</Link>
|
|
31
|
+
<Link href="https://instagram.com" aria-label="Instagram">
|
|
32
|
+
<Instagram className="size-4" />
|
|
33
|
+
</Link>
|
|
34
|
+
<Link href="https://linkedin.com" aria-label="LinkedIn">
|
|
35
|
+
<Linkedin className="size-4" />
|
|
36
|
+
</Link>
|
|
37
|
+
<Link href="https://github.com" aria-label="GitHub">
|
|
38
|
+
<Github className="size-4" />
|
|
39
|
+
</Link>
|
|
40
|
+
</div>
|
|
41
|
+
</div>
|
|
42
|
+
|
|
43
|
+
<Separator />
|
|
44
|
+
|
|
45
|
+
<div className="flex flex-col items-center justify-between space-y-4 md:flex-row md:space-y-0">
|
|
46
|
+
{/* Copyright */}
|
|
47
|
+
<p className="text-muted-foreground text-xs">
|
|
48
|
+
© {new Date().getFullYear()} Shadcn UI Kit. All rights reserved.
|
|
49
|
+
</p>
|
|
50
|
+
|
|
51
|
+
{/* Legal Links */}
|
|
52
|
+
<div className="flex gap-4">
|
|
53
|
+
<Link
|
|
54
|
+
href="#"
|
|
55
|
+
className="text-muted-foreground hover:text-primary text-xs hover:underline"
|
|
56
|
+
>
|
|
57
|
+
Privacy Policy
|
|
58
|
+
</Link>
|
|
59
|
+
<Link
|
|
60
|
+
href="#"
|
|
61
|
+
className="text-muted-foreground hover:text-primary text-xs hover:underline"
|
|
62
|
+
>
|
|
63
|
+
Terms of Service
|
|
64
|
+
</Link>
|
|
65
|
+
<Link
|
|
66
|
+
href="#"
|
|
67
|
+
className="text-muted-foreground hover:text-primary text-xs hover:underline"
|
|
68
|
+
>
|
|
69
|
+
Cookie Settings
|
|
70
|
+
</Link>
|
|
71
|
+
</div>
|
|
72
|
+
</div>
|
|
73
|
+
</div>
|
|
74
|
+
</footer>
|
|
75
|
+
);
|
|
76
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export default function(shared, config) { return config }
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import Link from "next/link";
|
|
2
|
+
import { Facebook, Instagram, Twitter, Linkedin, Youtube } from "lucide-react";
|
|
3
|
+
import { Button } from "@/components/ui/button";
|
|
4
|
+
import { Input } from "@/components/ui/input";
|
|
5
|
+
import { Separator } from "@/components/ui/separator";
|
|
6
|
+
|
|
7
|
+
export default function Footer() {
|
|
8
|
+
return (
|
|
9
|
+
<footer>
|
|
10
|
+
<div className="mx-auto max-w-7xl space-y-4 py-10 lg:py-16 lg:space-y-8 px-4">
|
|
11
|
+
<div className="flex flex-col items-start justify-between md:flex-row md:items-center">
|
|
12
|
+
<div className="mb-8 lg:mb-0 lg:max-w-md">
|
|
13
|
+
<h3 className="text-foreground mb-2 text-xl">
|
|
14
|
+
Join our newsletter
|
|
15
|
+
</h3>
|
|
16
|
+
<p className="text-muted-foreground text-sm text-balance">
|
|
17
|
+
Stay updated with the latest news, insights, and exclusive offers
|
|
18
|
+
delivered straight to your inbox.
|
|
19
|
+
</p>
|
|
20
|
+
</div>
|
|
21
|
+
|
|
22
|
+
<div className="w-full lg:w-auto">
|
|
23
|
+
<div className="mb-2 flex flex-col gap-3 sm:flex-row">
|
|
24
|
+
<Input
|
|
25
|
+
type="email"
|
|
26
|
+
placeholder="Enter your email"
|
|
27
|
+
className="min-w-[280px] flex-1"
|
|
28
|
+
/>
|
|
29
|
+
<Button className="whitespace-nowrap">Subscribe</Button>
|
|
30
|
+
</div>
|
|
31
|
+
</div>
|
|
32
|
+
</div>
|
|
33
|
+
|
|
34
|
+
<Separator />
|
|
35
|
+
|
|
36
|
+
<div className="grid grid-cols-2 gap-8 lg:grid-cols-5">
|
|
37
|
+
<div className="col-span-2 lg:col-span-1">
|
|
38
|
+
<h2 className="text-foreground mb-6 text-xl">Shadcn UI Kit</h2>
|
|
39
|
+
</div>
|
|
40
|
+
|
|
41
|
+
<div>
|
|
42
|
+
<h5 className="text-foreground mb-3 font-semibold">Company</h5>
|
|
43
|
+
<ul className="text-muted-foreground [&_a]:hover:text-foreground space-y-1 [&_a]:text-sm [&_a]:hover:underline">
|
|
44
|
+
<li>
|
|
45
|
+
<Link href="/about">About Us</Link>
|
|
46
|
+
</li>
|
|
47
|
+
<li>
|
|
48
|
+
<Link href="/careers">Careers</Link>
|
|
49
|
+
</li>
|
|
50
|
+
<li>
|
|
51
|
+
<Link href="/team">Our Team</Link>
|
|
52
|
+
</li>
|
|
53
|
+
<li>
|
|
54
|
+
<Link href="/investors">Investors</Link>
|
|
55
|
+
</li>
|
|
56
|
+
<li>
|
|
57
|
+
<Link href="/news">News</Link>
|
|
58
|
+
</li>
|
|
59
|
+
</ul>
|
|
60
|
+
</div>
|
|
61
|
+
|
|
62
|
+
<div>
|
|
63
|
+
<h5 className="text-foreground mb-3 font-semibold">Products</h5>
|
|
64
|
+
<ul className="text-muted-foreground [&_a]:hover:text-foreground space-y-1 [&_a]:text-sm [&_a]:hover:underline">
|
|
65
|
+
<li>
|
|
66
|
+
<Link href="/platform">Platform</Link>
|
|
67
|
+
</li>
|
|
68
|
+
<li>
|
|
69
|
+
<Link href="/analytics">Analytics</Link>
|
|
70
|
+
</li>
|
|
71
|
+
<li>
|
|
72
|
+
<Link href="/automation">Automation</Link>
|
|
73
|
+
</li>
|
|
74
|
+
<li>
|
|
75
|
+
<Link href="/integrations">Integrations</Link>
|
|
76
|
+
</li>
|
|
77
|
+
<li>
|
|
78
|
+
<Link href="/api">API</Link>
|
|
79
|
+
</li>
|
|
80
|
+
</ul>
|
|
81
|
+
</div>
|
|
82
|
+
|
|
83
|
+
<div>
|
|
84
|
+
<h5 className="text-foreground mb-3 font-semibold">Resources</h5>
|
|
85
|
+
<ul className="text-muted-foreground [&_a]:hover:text-foreground space-y-1 [&_a]:text-sm [&_a]:hover:underline">
|
|
86
|
+
<li>
|
|
87
|
+
<Link href="/blog">Blog</Link>
|
|
88
|
+
</li>
|
|
89
|
+
<li>
|
|
90
|
+
<Link href="/documentation">Documentation</Link>
|
|
91
|
+
</li>
|
|
92
|
+
<li>
|
|
93
|
+
<Link href="/tutorials">Tutorials</Link>
|
|
94
|
+
</li>
|
|
95
|
+
<li>
|
|
96
|
+
<Link href="/case-studies">Case Studies</Link>
|
|
97
|
+
</li>
|
|
98
|
+
<li>
|
|
99
|
+
<Link href="/webinars">Webinars</Link>
|
|
100
|
+
</li>
|
|
101
|
+
</ul>
|
|
102
|
+
</div>
|
|
103
|
+
|
|
104
|
+
<div>
|
|
105
|
+
<h5 className="text-foreground mb-4 font-semibold">Support</h5>
|
|
106
|
+
<ul className="text-muted-foreground [&_a]:hover:text-foreground space-y-1 [&_a]:text-sm [&_a]:hover:underline">
|
|
107
|
+
<li>
|
|
108
|
+
<Link href="/help">Help Center</Link>
|
|
109
|
+
</li>
|
|
110
|
+
<li>
|
|
111
|
+
<Link href="/contact">Contact Us</Link>
|
|
112
|
+
</li>
|
|
113
|
+
<li>
|
|
114
|
+
<Link href="/community">Community</Link>
|
|
115
|
+
</li>
|
|
116
|
+
<li>
|
|
117
|
+
<Link href="/status">System Status</Link>
|
|
118
|
+
</li>
|
|
119
|
+
<li>
|
|
120
|
+
<Link href="/feedback">Feedback</Link>
|
|
121
|
+
</li>
|
|
122
|
+
</ul>
|
|
123
|
+
</div>
|
|
124
|
+
</div>
|
|
125
|
+
|
|
126
|
+
<Separator />
|
|
127
|
+
|
|
128
|
+
<div className="flex flex-col items-center justify-between space-y-4 md:flex-row md:space-y-0">
|
|
129
|
+
<p className="text-muted-foreground text-xs">
|
|
130
|
+
© {new Date().getFullYear()} Shadcn UI Kit. All rights reserved.
|
|
131
|
+
</p>
|
|
132
|
+
|
|
133
|
+
<div className="[&_a]:text-muted-foreground flex space-x-4 [&_a]:text-xs [&_a]:hover:underline">
|
|
134
|
+
<Link href="/privacy">Privacy Policy</Link>
|
|
135
|
+
<Link href="/terms">Terms of Service</Link>
|
|
136
|
+
<Link href="/cookies">Cookies Settings</Link>
|
|
137
|
+
</div>
|
|
138
|
+
|
|
139
|
+
<div className="[&_a]:hover:text-foreground [&_a]:text-muted-foreground flex space-x-4 [&_a]:text-sm [&_a]:hover:transition-colors">
|
|
140
|
+
<Link href="https://facebook.com" aria-label="Facebook">
|
|
141
|
+
<Facebook className="size-4" />
|
|
142
|
+
</Link>
|
|
143
|
+
<Link href="https://instagram.com" aria-label="Instagram">
|
|
144
|
+
<Instagram className="size-4" />
|
|
145
|
+
</Link>
|
|
146
|
+
<Link href="https://twitter.com" aria-label="Twitter">
|
|
147
|
+
<Twitter className="size-4" />
|
|
148
|
+
</Link>
|
|
149
|
+
<Link href="https://linkedin.com" aria-label="LinkedIn">
|
|
150
|
+
<Linkedin className="size-4" />
|
|
151
|
+
</Link>
|
|
152
|
+
<Link href="https://youtube.com" aria-label="YouTube">
|
|
153
|
+
<Youtube className="size-4" />
|
|
154
|
+
</Link>
|
|
155
|
+
</div>
|
|
156
|
+
</div>
|
|
157
|
+
</div>
|
|
158
|
+
</footer>
|
|
159
|
+
);
|
|
160
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export default function(shared, config) { return config }
|