@omega.js/extension 0.1.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/LICENSE +98 -0
- package/README.md +194 -0
- package/bin/omega +2 -0
- package/bin/omega-extension +2 -0
- package/bin/omg +2 -0
- package/dist/assets/css/bundles/.gitkeep +0 -0
- package/dist/assets/css/components/content/index.scss +5 -0
- package/dist/assets/css/components/options/index.scss +9 -0
- package/dist/assets/css/components/pages/index.scss +5 -0
- package/dist/assets/css/components/popup/index.scss +9 -0
- package/dist/assets/css/core/_animations.scss +64 -0
- package/dist/assets/css/core/_fontawesome.scss +146 -0
- package/dist/assets/css/core/_initialize.scss +23 -0
- package/dist/assets/css/core/_utilities.scss +80 -0
- package/dist/assets/css/omega-extension.scss +43 -0
- package/dist/assets/css/shell/_index.scss +207 -0
- package/dist/assets/css/tokens/_index.scss +166 -0
- package/dist/assets/js/core/app-shell.js +136 -0
- package/dist/assets/js/libs/initialize-tooltips.js +31 -0
- package/dist/assets/js/libs/recaptcha.js +94 -0
- package/dist/assets/js/main.js +4 -0
- package/dist/assets/themes/_template/README.md +115 -0
- package/dist/assets/themes/_template/_config.scss +60 -0
- package/dist/assets/themes/_template/_theme.js +14 -0
- package/dist/assets/themes/_template/_theme.scss +28 -0
- package/dist/assets/themes/_template/css/base/_root.scss +19 -0
- package/dist/assets/themes/_template/css/components/_components.scss +23 -0
- package/dist/assets/themes/base/README.md +5 -0
- package/dist/assets/themes/base/_components/data/org-chart/component.html +33 -0
- package/dist/assets/themes/base/_components/data/org-chart/component.json5 +33 -0
- package/dist/assets/themes/base/_components/data/org-chart/component.scss +183 -0
- package/dist/assets/themes/base/_components/heading/masthead/component.html +22 -0
- package/dist/assets/themes/base/_components/heading/masthead/component.json5 +30 -0
- package/dist/assets/themes/base/_components/heading/section-head/component.html +18 -0
- package/dist/assets/themes/base/_components/heading/section-head/component.json5 +27 -0
- package/dist/assets/themes/base/_components/pricing/features/component.html +29 -0
- package/dist/assets/themes/base/_components/pricing/features/component.json5 +30 -0
- package/dist/assets/themes/base/_hero/orbit/index.html +30 -0
- package/dist/assets/themes/base/_hero/orbit/script.js +33 -0
- package/dist/assets/themes/base/_hero/orbit/style.scss +133 -0
- package/dist/assets/themes/base/_includes/admin/sections/sidebar.html +3 -0
- package/dist/assets/themes/base/_includes/admin/sections/topbar.html +3 -0
- package/dist/assets/themes/base/_includes/backend/sections/sidebar.html +3 -0
- package/dist/assets/themes/base/_includes/backend/sections/topbar.html +3 -0
- package/dist/assets/themes/base/_includes/frontend/components/connection-card.html +49 -0
- package/dist/assets/themes/base/_includes/frontend/components/post-card.html +54 -0
- package/dist/assets/themes/base/_includes/frontend/sections/account-connections.html +42 -0
- package/dist/assets/themes/base/_includes/frontend/sections/account-section-header.html +11 -0
- package/dist/assets/themes/base/_includes/frontend/sections/footer.html +154 -0
- package/dist/assets/themes/base/_includes/frontend/sections/nav.html +276 -0
- package/dist/assets/themes/base/_includes/global/sections/account.html +72 -0
- package/dist/assets/themes/base/_includes/global/sections/app-sidebar.html +248 -0
- package/dist/assets/themes/base/_includes/global/sections/app-topbar.html +228 -0
- package/dist/assets/themes/base/_includes/global/sections/page-header.html +99 -0
- package/dist/assets/themes/base/_layouts/admin/core/minimal-viewport-locked.html +22 -0
- package/dist/assets/themes/base/_layouts/admin/core/minimal.html +23 -0
- package/dist/assets/themes/base/_layouts/backend/core/base.html +57 -0
- package/dist/assets/themes/base/_layouts/backend/core/minimal-viewport-locked.html +32 -0
- package/dist/assets/themes/base/_layouts/backend/core/minimal.html +32 -0
- package/dist/assets/themes/base/_layouts/backend/pages/dashboard/index.html +230 -0
- package/dist/assets/themes/base/_layouts/frontend/core/base.html +31 -0
- package/dist/assets/themes/base/_layouts/frontend/core/cover.html +40 -0
- package/dist/assets/themes/base/_layouts/frontend/core/minimal.html +47 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/404.html +54 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/about.html +144 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/account/index.html +2104 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/alternatives/alternative.html +319 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/alternatives/index.html +186 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/app.html +142 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/auth/reset.html +53 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/auth/signin.html +90 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/auth/signup.html +141 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/auth/token.html +44 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/blog/categories/category.html +88 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/blog/categories/index.html +88 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/blog/index.html +255 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/blog/post.html +261 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/blog/tags/index.html +84 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/blog/tags/tag.html +88 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/collection/category.html +72 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/collection/document.html +54 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/collection/index.html +84 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/connections/callback.html +55 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/contact.html +214 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/download.html +793 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/extension/index.html +253 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/extension/installed.html +198 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/feedback.html +171 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/index.html +66 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/legal/document.html +78 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/payment/checkout.html +459 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/payment/confirmation.html +131 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/portal/email-preferences.html +104 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/pricing.html +596 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/status.html +361 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/team/index.html +210 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/team/member.html +125 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/updates/index.html +119 -0
- package/dist/assets/themes/base/_layouts/frontend/pages/updates/update.html +118 -0
- package/dist/assets/themes/base/_sections/about/hero/section.html +68 -0
- package/dist/assets/themes/base/_sections/about/hero/section.json5 +58 -0
- package/dist/assets/themes/base/_sections/about/letter/section.html +60 -0
- package/dist/assets/themes/base/_sections/about/letter/section.json5 +56 -0
- package/dist/assets/themes/base/_sections/about/photo-band/section.html +24 -0
- package/dist/assets/themes/base/_sections/about/photo-band/section.json5 +23 -0
- package/dist/assets/themes/base/_sections/about/principles/section.html +17 -0
- package/dist/assets/themes/base/_sections/about/principles/section.json5 +34 -0
- package/dist/assets/themes/base/_sections/about/timeline/section.html +20 -0
- package/dist/assets/themes/base/_sections/about/timeline/section.json5 +34 -0
- package/dist/assets/themes/base/_sections/marketing/bento/section.html +91 -0
- package/dist/assets/themes/base/_sections/marketing/bento/section.json5 +152 -0
- package/dist/assets/themes/base/_sections/marketing/cta/section.html +44 -0
- package/dist/assets/themes/base/_sections/marketing/cta/section.json5 +47 -0
- package/dist/assets/themes/base/_sections/marketing/faq/section.html +52 -0
- package/dist/assets/themes/base/_sections/marketing/faq/section.json5 +68 -0
- package/dist/assets/themes/base/_sections/marketing/hero/section.html +349 -0
- package/dist/assets/themes/base/_sections/marketing/hero/section.json5 +335 -0
- package/dist/assets/themes/base/_sections/marketing/newsletter-cta/section.html +38 -0
- package/dist/assets/themes/base/_sections/marketing/newsletter-cta/section.js +86 -0
- package/dist/assets/themes/base/_sections/marketing/newsletter-cta/section.json5 +29 -0
- package/dist/assets/themes/base/_sections/marketing/pricing-cards/section.html +115 -0
- package/dist/assets/themes/base/_sections/marketing/pricing-cards/section.json5 +72 -0
- package/dist/assets/themes/base/_sections/marketing/product-demo/section.html +62 -0
- package/dist/assets/themes/base/_sections/marketing/product-demo/section.js +44 -0
- package/dist/assets/themes/base/_sections/marketing/product-demo/section.json5 +52 -0
- package/dist/assets/themes/base/_sections/marketing/prose/section.html +22 -0
- package/dist/assets/themes/base/_sections/marketing/prose/section.json5 +41 -0
- package/dist/assets/themes/base/_sections/marketing/showcase/section.html +35 -0
- package/dist/assets/themes/base/_sections/marketing/showcase/section.json5 +52 -0
- package/dist/assets/themes/base/_sections/marketing/stats/section.html +32 -0
- package/dist/assets/themes/base/_sections/marketing/stats/section.json5 +44 -0
- package/dist/assets/themes/base/_sections/marketing/testimonials/section.html +54 -0
- package/dist/assets/themes/base/_sections/marketing/testimonials/section.json5 +70 -0
- package/dist/assets/themes/base/_sections/marketing/trusted-by/section.html +30 -0
- package/dist/assets/themes/base/_sections/marketing/trusted-by/section.json5 +38 -0
- package/dist/assets/themes/base/_sections/verts/unit/section.html +7 -0
- package/dist/assets/themes/base/_sections/verts/unit/section.js +22 -0
- package/dist/assets/themes/base/_sections/verts/unit/section.json5 +24 -0
- package/dist/assets/themes/base/_sections/verts/unit/section.scss +24 -0
- package/dist/assets/themes/base/_theme.js +13 -0
- package/dist/assets/themes/base/_theme.scss +4 -0
- package/dist/assets/themes/bootstrap/_theme.js +16 -0
- package/dist/assets/themes/bootstrap/_theme.scss +11 -0
- package/dist/assets/themes/bootstrap/js/index.esm.js +19 -0
- package/dist/assets/themes/bootstrap/js/index.umd.js +34 -0
- package/dist/assets/themes/bootstrap/js/src/alert.js +87 -0
- package/dist/assets/themes/bootstrap/js/src/base-component.js +86 -0
- package/dist/assets/themes/bootstrap/js/src/button.js +72 -0
- package/dist/assets/themes/bootstrap/js/src/carousel.js +474 -0
- package/dist/assets/themes/bootstrap/js/src/collapse.js +297 -0
- package/dist/assets/themes/bootstrap/js/src/dom/data.js +55 -0
- package/dist/assets/themes/bootstrap/js/src/dom/event-handler.js +317 -0
- package/dist/assets/themes/bootstrap/js/src/dom/manipulator.js +71 -0
- package/dist/assets/themes/bootstrap/js/src/dom/selector-engine.js +126 -0
- package/dist/assets/themes/bootstrap/js/src/dropdown.js +458 -0
- package/dist/assets/themes/bootstrap/js/src/modal.js +378 -0
- package/dist/assets/themes/bootstrap/js/src/offcanvas.js +282 -0
- package/dist/assets/themes/bootstrap/js/src/popover.js +97 -0
- package/dist/assets/themes/bootstrap/js/src/scrollspy.js +296 -0
- package/dist/assets/themes/bootstrap/js/src/tab.js +315 -0
- package/dist/assets/themes/bootstrap/js/src/toast.js +224 -0
- package/dist/assets/themes/bootstrap/js/src/tooltip.js +632 -0
- package/dist/assets/themes/bootstrap/js/src/util/backdrop.js +151 -0
- package/dist/assets/themes/bootstrap/js/src/util/component-functions.js +35 -0
- package/dist/assets/themes/bootstrap/js/src/util/config.js +65 -0
- package/dist/assets/themes/bootstrap/js/src/util/focustrap.js +115 -0
- package/dist/assets/themes/bootstrap/js/src/util/index.js +306 -0
- package/dist/assets/themes/bootstrap/js/src/util/sanitizer.js +117 -0
- package/dist/assets/themes/bootstrap/js/src/util/scrollbar.js +114 -0
- package/dist/assets/themes/bootstrap/js/src/util/swipe.js +146 -0
- package/dist/assets/themes/bootstrap/js/src/util/template-factory.js +160 -0
- package/dist/assets/themes/bootstrap/overrides/_accordion.scss +21 -0
- package/dist/assets/themes/bootstrap/overrides/_avatars.scss +51 -0
- package/dist/assets/themes/bootstrap/overrides/_blog-images.scss +45 -0
- package/dist/assets/themes/bootstrap/overrides/_buttons-adaptive.scss +141 -0
- package/dist/assets/themes/bootstrap/overrides/_color-shades.scss +25 -0
- package/dist/assets/themes/bootstrap/overrides/_cursor-utilities.scss +13 -0
- package/dist/assets/themes/bootstrap/overrides/_index.scss +30 -0
- package/dist/assets/themes/bootstrap/overrides/_links.scss +26 -0
- package/dist/assets/themes/bootstrap/overrides/_soft-colors.scss +99 -0
- package/dist/assets/themes/bootstrap/overrides/_spacing-extended.scss +74 -0
- package/dist/assets/themes/bootstrap/overrides/_spinners.scss +22 -0
- package/dist/assets/themes/bootstrap/overrides/_typography-utilities.scss +40 -0
- package/dist/assets/themes/bootstrap/scss/_accordion.scss +153 -0
- package/dist/assets/themes/bootstrap/scss/_alert.scss +68 -0
- package/dist/assets/themes/bootstrap/scss/_badge.scss +38 -0
- package/dist/assets/themes/bootstrap/scss/_breadcrumb.scss +40 -0
- package/dist/assets/themes/bootstrap/scss/_button-group.scss +147 -0
- package/dist/assets/themes/bootstrap/scss/_buttons.scss +216 -0
- package/dist/assets/themes/bootstrap/scss/_card.scss +238 -0
- package/dist/assets/themes/bootstrap/scss/_carousel.scss +226 -0
- package/dist/assets/themes/bootstrap/scss/_close.scss +66 -0
- package/dist/assets/themes/bootstrap/scss/_containers.scss +41 -0
- package/dist/assets/themes/bootstrap/scss/_dropdown.scss +250 -0
- package/dist/assets/themes/bootstrap/scss/_forms.scss +9 -0
- package/dist/assets/themes/bootstrap/scss/_functions.scss +302 -0
- package/dist/assets/themes/bootstrap/scss/_grid.scss +39 -0
- package/dist/assets/themes/bootstrap/scss/_helpers.scss +12 -0
- package/dist/assets/themes/bootstrap/scss/_images.scss +42 -0
- package/dist/assets/themes/bootstrap/scss/_list-group.scss +199 -0
- package/dist/assets/themes/bootstrap/scss/_maps.scss +174 -0
- package/dist/assets/themes/bootstrap/scss/_mixins.scss +42 -0
- package/dist/assets/themes/bootstrap/scss/_modal.scss +240 -0
- package/dist/assets/themes/bootstrap/scss/_nav.scss +197 -0
- package/dist/assets/themes/bootstrap/scss/_navbar.scss +289 -0
- package/dist/assets/themes/bootstrap/scss/_offcanvas.scss +147 -0
- package/dist/assets/themes/bootstrap/scss/_pagination.scss +109 -0
- package/dist/assets/themes/bootstrap/scss/_placeholders.scss +51 -0
- package/dist/assets/themes/bootstrap/scss/_popover.scss +196 -0
- package/dist/assets/themes/bootstrap/scss/_progress.scss +68 -0
- package/dist/assets/themes/bootstrap/scss/_reboot.scss +611 -0
- package/dist/assets/themes/bootstrap/scss/_root.scss +187 -0
- package/dist/assets/themes/bootstrap/scss/_spinners.scss +85 -0
- package/dist/assets/themes/bootstrap/scss/_tables.scss +171 -0
- package/dist/assets/themes/bootstrap/scss/_toasts.scss +73 -0
- package/dist/assets/themes/bootstrap/scss/_tooltip.scss +119 -0
- package/dist/assets/themes/bootstrap/scss/_transitions.scss +27 -0
- package/dist/assets/themes/bootstrap/scss/_type.scss +106 -0
- package/dist/assets/themes/bootstrap/scss/_utilities.scss +806 -0
- package/dist/assets/themes/bootstrap/scss/_variables-dark.scss +102 -0
- package/dist/assets/themes/bootstrap/scss/_variables.scss +1753 -0
- package/dist/assets/themes/bootstrap/scss/bootstrap-grid.scss +62 -0
- package/dist/assets/themes/bootstrap/scss/bootstrap-reboot.scss +10 -0
- package/dist/assets/themes/bootstrap/scss/bootstrap-utilities.scss +19 -0
- package/dist/assets/themes/bootstrap/scss/bootstrap.scss +52 -0
- package/dist/assets/themes/bootstrap/scss/forms/_floating-labels.scss +97 -0
- package/dist/assets/themes/bootstrap/scss/forms/_form-check.scss +189 -0
- package/dist/assets/themes/bootstrap/scss/forms/_form-control.scss +214 -0
- package/dist/assets/themes/bootstrap/scss/forms/_form-range.scss +91 -0
- package/dist/assets/themes/bootstrap/scss/forms/_form-select.scss +80 -0
- package/dist/assets/themes/bootstrap/scss/forms/_form-text.scss +11 -0
- package/dist/assets/themes/bootstrap/scss/forms/_input-group.scss +132 -0
- package/dist/assets/themes/bootstrap/scss/forms/_labels.scss +36 -0
- package/dist/assets/themes/bootstrap/scss/forms/_validation.scss +12 -0
- package/dist/assets/themes/bootstrap/scss/helpers/_clearfix.scss +3 -0
- package/dist/assets/themes/bootstrap/scss/helpers/_color-bg.scss +7 -0
- package/dist/assets/themes/bootstrap/scss/helpers/_colored-links.scss +30 -0
- package/dist/assets/themes/bootstrap/scss/helpers/_focus-ring.scss +5 -0
- package/dist/assets/themes/bootstrap/scss/helpers/_icon-link.scss +25 -0
- package/dist/assets/themes/bootstrap/scss/helpers/_position.scss +36 -0
- package/dist/assets/themes/bootstrap/scss/helpers/_ratio.scss +26 -0
- package/dist/assets/themes/bootstrap/scss/helpers/_stacks.scss +15 -0
- package/dist/assets/themes/bootstrap/scss/helpers/_stretched-link.scss +15 -0
- package/dist/assets/themes/bootstrap/scss/helpers/_text-truncation.scss +7 -0
- package/dist/assets/themes/bootstrap/scss/helpers/_visually-hidden.scss +8 -0
- package/dist/assets/themes/bootstrap/scss/helpers/_vr.scss +8 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_alert.scss +18 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_backdrop.scss +14 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_banner.scss +7 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_border-radius.scss +78 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_box-shadow.scss +18 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_breakpoints.scss +127 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_buttons.scss +70 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_caret.scss +69 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_clearfix.scss +9 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_color-mode.scss +21 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_color-scheme.scss +7 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_container.scss +11 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_deprecate.scss +10 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_forms.scss +163 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_gradients.scss +47 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_grid.scss +151 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_image.scss +16 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_list-group.scss +26 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_lists.scss +7 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_pagination.scss +10 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_reset-text.scss +17 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_resize.scss +6 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_table-variants.scss +24 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_text-truncate.scss +8 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_transition.scss +26 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_utilities.scss +97 -0
- package/dist/assets/themes/bootstrap/scss/mixins/_visually-hidden.scss +38 -0
- package/dist/assets/themes/bootstrap/scss/tests/jasmine.js +16 -0
- package/dist/assets/themes/bootstrap/scss/tests/mixins/_auto-import-of-variables-dark.test.scss +7 -0
- package/dist/assets/themes/bootstrap/scss/tests/mixins/_color-modes.test.scss +69 -0
- package/dist/assets/themes/bootstrap/scss/tests/mixins/_media-query-color-mode-full.test.scss +8 -0
- package/dist/assets/themes/bootstrap/scss/tests/mixins/_utilities.test.scss +393 -0
- package/dist/assets/themes/bootstrap/scss/tests/sass-true/register.js +14 -0
- package/dist/assets/themes/bootstrap/scss/tests/sass-true/runner.js +17 -0
- package/dist/assets/themes/bootstrap/scss/tests/utilities/_api.test.scss +75 -0
- package/dist/assets/themes/bootstrap/scss/utilities/_api.scss +47 -0
- package/dist/assets/themes/bootstrap/scss/vendor/_rfs.scss +348 -0
- package/dist/assets/themes/classy/README.md +89 -0
- package/dist/assets/themes/classy/_config.scss +245 -0
- package/dist/assets/themes/classy/_theme.js +31 -0
- package/dist/assets/themes/classy/_theme.scss +57 -0
- package/dist/assets/themes/classy/css/app/_panels.scss +183 -0
- package/dist/assets/themes/classy/css/base/_fonts.scss +79 -0
- package/dist/assets/themes/classy/css/base/_no-raise.scss +49 -0
- package/dist/assets/themes/classy/css/base/_root.scss +113 -0
- package/dist/assets/themes/classy/css/base/_typography.scss +154 -0
- package/dist/assets/themes/classy/css/base/_utilities.scss +284 -0
- package/dist/assets/themes/classy/css/components/_alerts.scss +51 -0
- package/dist/assets/themes/classy/css/components/_badges.scss +46 -0
- package/dist/assets/themes/classy/css/components/_buttons.scss +175 -0
- package/dist/assets/themes/classy/css/components/_cards.scss +41 -0
- package/dist/assets/themes/classy/css/components/_dropdowns.scss +48 -0
- package/dist/assets/themes/classy/css/components/_forms.scss +171 -0
- package/dist/assets/themes/classy/css/components/_receipt.scss +45 -0
- package/dist/assets/themes/classy/css/layout/_footer.scss +298 -0
- package/dist/assets/themes/classy/css/layout/_general.scss +209 -0
- package/dist/assets/themes/classy/css/layout/_nav.scss +154 -0
- package/dist/assets/themes/classy/css/layout/_shell.scss +458 -0
- package/dist/assets/themes/classy/css/marketing/_bento.scss +238 -0
- package/dist/assets/themes/classy/css/marketing/_content.scss +1328 -0
- package/dist/assets/themes/classy/css/marketing/_downloads.scss +246 -0
- package/dist/assets/themes/classy/css/marketing/_hero.scss +311 -0
- package/dist/assets/themes/classy/css/marketing/_sections.scss +649 -0
- package/dist/assets/themes/classy/css/pages/404/index.scss +67 -0
- package/dist/assets/themes/classy/css/pages/_auth.scss +235 -0
- package/dist/assets/themes/classy/css/pages/admin/firebase/index.scss +22 -0
- package/dist/assets/themes/classy/css/pages/blog/[slug].scss +56 -0
- package/dist/assets/themes/classy/css/pages/cookies.scss +2 -0
- package/dist/assets/themes/classy/css/pages/dashboard/account/index.scss +31 -0
- package/dist/assets/themes/classy/css/pages/feedback/index.scss +39 -0
- package/dist/assets/themes/classy/css/pages/legal/_document.scss +192 -0
- package/dist/assets/themes/classy/css/pages/payment/checkout/index.scss +585 -0
- package/dist/assets/themes/classy/css/pages/payment/confirmation/index.scss +9 -0
- package/dist/assets/themes/classy/css/pages/privacy.scss +2 -0
- package/dist/assets/themes/classy/css/pages/status/index.scss +164 -0
- package/dist/assets/themes/classy/css/pages/terms.scss +2 -0
- package/dist/assets/themes/classy/css/pages/updates/index.scss +128 -0
- package/dist/assets/themes/classy/fonts/inter-italic-latin-ext.woff2 +0 -0
- package/dist/assets/themes/classy/fonts/inter-italic-latin.woff2 +0 -0
- package/dist/assets/themes/classy/fonts/inter-normal-latin-ext.woff2 +0 -0
- package/dist/assets/themes/classy/fonts/inter-normal-latin.woff2 +0 -0
- package/dist/assets/themes/classy/fonts/newsreader-italic-latin-ext.woff2 +0 -0
- package/dist/assets/themes/classy/fonts/newsreader-italic-latin.woff2 +0 -0
- package/dist/assets/themes/classy/fonts/newsreader-normal-latin-ext.woff2 +0 -0
- package/dist/assets/themes/classy/fonts/newsreader-normal-latin.woff2 +0 -0
- package/dist/assets/themes/classy/js/hero-demo-form.js +56 -0
- package/dist/assets/themes/neobrutalism/README.md +118 -0
- package/dist/assets/themes/neobrutalism/_config.scss +139 -0
- package/dist/assets/themes/neobrutalism/_layouts/frontend/core/base.html +30 -0
- package/dist/assets/themes/neobrutalism/_layouts/frontend/pages/index.html +275 -0
- package/dist/assets/themes/neobrutalism/_theme.js +24 -0
- package/dist/assets/themes/neobrutalism/_theme.scss +61 -0
- package/dist/assets/themes/neobrutalism/css/base/_mixins.scss +46 -0
- package/dist/assets/themes/neobrutalism/css/base/_root.scss +169 -0
- package/dist/assets/themes/neobrutalism/css/base/_typography.scss +61 -0
- package/dist/assets/themes/neobrutalism/css/base/_utilities.scss +89 -0
- package/dist/assets/themes/neobrutalism/css/components/_billing-toggle.scss +74 -0
- package/dist/assets/themes/neobrutalism/css/components/_buttons.scss +148 -0
- package/dist/assets/themes/neobrutalism/css/components/_cards.scss +47 -0
- package/dist/assets/themes/neobrutalism/css/components/_forms.scss +88 -0
- package/dist/assets/themes/neobrutalism/css/components/_marketing.scss +244 -0
- package/dist/assets/themes/neobrutalism/css/layout/_general.scss +213 -0
- package/dist/assets/themes/neobrutalism/css/layout/_navigation.scss +171 -0
- package/dist/assets/themes/neobrutalism/css/pages/index.scss +203 -0
- package/dist/assets/themes/neobrutalism/css/pages/pricing/index.scss +58 -0
- package/dist/assets/themes/neobrutalism/css/pages/test/libraries/layers/index.scss +7 -0
- package/dist/assets/themes/neobrutalism/js/pages/test/libraries/layers/index.js +9 -0
- package/dist/assets/themes/newsflash/README.md +117 -0
- package/dist/assets/themes/newsflash/_components/heading/lede/component.html +14 -0
- package/dist/assets/themes/newsflash/_components/heading/lede/component.json5 +23 -0
- package/dist/assets/themes/newsflash/_components/heading/rule-head/component.html +17 -0
- package/dist/assets/themes/newsflash/_components/heading/rule-head/component.json5 +23 -0
- package/dist/assets/themes/newsflash/_components/news/byline/component.html +12 -0
- package/dist/assets/themes/newsflash/_components/news/byline/component.json5 +18 -0
- package/dist/assets/themes/newsflash/_components/news/story-card/component.html +25 -0
- package/dist/assets/themes/newsflash/_components/news/story-card/component.json5 +21 -0
- package/dist/assets/themes/newsflash/_config.scss +147 -0
- package/dist/assets/themes/newsflash/_layouts/frontend/core/base.html +51 -0
- package/dist/assets/themes/newsflash/_layouts/frontend/pages/blog/index.html +299 -0
- package/dist/assets/themes/newsflash/_layouts/frontend/pages/blog/post.html +235 -0
- package/dist/assets/themes/newsflash/_layouts/frontend/pages/index.html +328 -0
- package/dist/assets/themes/newsflash/_sections/marketing/desks/section.html +39 -0
- package/dist/assets/themes/newsflash/_sections/marketing/desks/section.json5 +49 -0
- package/dist/assets/themes/newsflash/_sections/marketing/newsletter-cta/section.html +103 -0
- package/dist/assets/themes/newsflash/_sections/marketing/newsletter-cta/section.json5 +50 -0
- package/dist/assets/themes/newsflash/_sections/marketing/rundown/section.html +28 -0
- package/dist/assets/themes/newsflash/_sections/marketing/rundown/section.json5 +40 -0
- package/dist/assets/themes/newsflash/_theme.js +24 -0
- package/dist/assets/themes/newsflash/_theme.scss +70 -0
- package/dist/assets/themes/newsflash/css/base/_fonts.scss +80 -0
- package/dist/assets/themes/newsflash/css/base/_mixins.scss +51 -0
- package/dist/assets/themes/newsflash/css/base/_root.scss +257 -0
- package/dist/assets/themes/newsflash/css/base/_typography.scss +49 -0
- package/dist/assets/themes/newsflash/css/base/_utilities.scss +122 -0
- package/dist/assets/themes/newsflash/css/components/_badges.scss +65 -0
- package/dist/assets/themes/newsflash/css/components/_billing-toggle.scss +61 -0
- package/dist/assets/themes/newsflash/css/components/_buttons.scss +139 -0
- package/dist/assets/themes/newsflash/css/components/_cards.scss +47 -0
- package/dist/assets/themes/newsflash/css/components/_editorial.scss +173 -0
- package/dist/assets/themes/newsflash/css/components/_forms.scss +75 -0
- package/dist/assets/themes/newsflash/css/components/_infinite-scroll.scss +102 -0
- package/dist/assets/themes/newsflash/css/components/_panels.scss +156 -0
- package/dist/assets/themes/newsflash/css/components/_ticker.scss +67 -0
- package/dist/assets/themes/newsflash/css/layout/_general.scss +330 -0
- package/dist/assets/themes/newsflash/css/layout/_navigation.scss +168 -0
- package/dist/assets/themes/newsflash/css/pages/404/index.scss +79 -0
- package/dist/assets/themes/newsflash/css/pages/blog/[slug].scss +186 -0
- package/dist/assets/themes/newsflash/css/pages/blog/index.scss +17 -0
- package/dist/assets/themes/newsflash/css/pages/index.scss +157 -0
- package/dist/assets/themes/newsflash/css/pages/pricing/index.scss +55 -0
- package/dist/assets/themes/newsflash/css/pages/test/libraries/layers/index.scss +7 -0
- package/dist/assets/themes/newsflash/fonts/fraunces-italic-latin-ext.woff2 +0 -0
- package/dist/assets/themes/newsflash/fonts/fraunces-italic-latin.woff2 +0 -0
- package/dist/assets/themes/newsflash/fonts/fraunces-normal-latin-ext.woff2 +0 -0
- package/dist/assets/themes/newsflash/fonts/fraunces-normal-latin.woff2 +0 -0
- package/dist/assets/themes/newsflash/fonts/schibsted-grotesk-italic-latin-ext.woff2 +0 -0
- package/dist/assets/themes/newsflash/fonts/schibsted-grotesk-italic-latin.woff2 +0 -0
- package/dist/assets/themes/newsflash/fonts/schibsted-grotesk-normal-latin-ext.woff2 +0 -0
- package/dist/assets/themes/newsflash/fonts/schibsted-grotesk-normal-latin.woff2 +0 -0
- package/dist/assets/themes/newsflash/js/pages/blog/[slug].js +29 -0
- package/dist/assets/themes/newsflash/js/pages/test/libraries/layers/index.js +9 -0
- package/dist/background.js +684 -0
- package/dist/build.js +268 -0
- package/dist/cli-run.js +25 -0
- package/dist/cli.js +30 -0
- package/dist/commands/build.js +67 -0
- package/dist/commands/clean.js +29 -0
- package/dist/commands/deploy.js +97 -0
- package/dist/commands/install.js +58 -0
- package/dist/commands/lib/dependencies.js +33 -0
- package/dist/commands/lib/deploy-precheck.js +57 -0
- package/dist/commands/lib/ensure-target.js +151 -0
- package/dist/commands/lib/push-secrets.js +60 -0
- package/dist/commands/migrate.js +77 -0
- package/dist/commands/test.js +110 -0
- package/dist/commands/update.js +21 -0
- package/dist/commands/version.js +12 -0
- package/dist/config/manifest.json +117 -0
- package/dist/config/page-template.html +21 -0
- package/dist/content.js +37 -0
- package/dist/defaults/.github/workflows/publish.yml +86 -0
- package/dist/defaults/.nvmrc +1 -0
- package/dist/defaults/.vscode/settings.json +8 -0
- package/dist/defaults/AGENTS.md +113 -0
- package/dist/defaults/CHANGELOG.md +15 -0
- package/dist/defaults/CLAUDE.md +1 -0
- package/dist/defaults/_.gitignore +75 -0
- package/dist/defaults/config/description.md +46 -0
- package/dist/defaults/config/messages.json +20 -0
- package/dist/defaults/config/omega.json5 +64 -0
- package/dist/defaults/docs/README.md +17 -0
- package/dist/defaults/gulpfile.js +6 -0
- package/dist/defaults/hooks/build/post.js +8 -0
- package/dist/defaults/hooks/build/pre.js +8 -0
- package/dist/defaults/src/assets/css/bundles/.gitkeep +0 -0
- package/dist/defaults/src/assets/css/components/content/index.scss +11 -0
- package/dist/defaults/src/assets/css/components/offscreen/index.scss +4 -0
- package/dist/defaults/src/assets/css/components/options/index.scss +14 -0
- package/dist/defaults/src/assets/css/components/pages/index.scss +10 -0
- package/dist/defaults/src/assets/css/components/popup/index.scss +10 -0
- package/dist/defaults/src/assets/css/components/sidepanel/index.scss +6 -0
- package/dist/defaults/src/assets/css/main.scss +32 -0
- package/dist/defaults/src/assets/images/.gitkeep +0 -0
- package/dist/defaults/src/assets/js/components/background/index.js +25 -0
- package/dist/defaults/src/assets/js/components/content/index.js +22 -0
- package/dist/defaults/src/assets/js/components/offscreen/index.js +25 -0
- package/dist/defaults/src/assets/js/components/options/index.js +22 -0
- package/dist/defaults/src/assets/js/components/pages/index.js +22 -0
- package/dist/defaults/src/assets/js/components/popup/index.js +22 -0
- package/dist/defaults/src/assets/js/components/sidepanel/index.js +20 -0
- package/dist/defaults/src/assets/vendor/.gitkeep +0 -0
- package/dist/defaults/src/manifest.json +131 -0
- package/dist/defaults/src/views/offscreen/index.html +3 -0
- package/dist/defaults/src/views/options/index.html +8 -0
- package/dist/defaults/src/views/pages/index.html +10 -0
- package/dist/defaults/src/views/popup/index.html +4 -0
- package/dist/defaults/src/views/sidepanel/index.html +4 -0
- package/dist/defaults/test/README.md +41 -0
- package/dist/defaults/test/_init.js +10 -0
- package/dist/defaults/test/boot/externally-connectable.test.js +28 -0
- package/dist/gulp/config/locales.js +12 -0
- package/dist/gulp/main.js +78 -0
- package/dist/gulp/tasks/_.js +18 -0
- package/dist/gulp/tasks/audit.js +222 -0
- package/dist/gulp/tasks/bundle.js +687 -0
- package/dist/gulp/tasks/defaults.js +281 -0
- package/dist/gulp/tasks/distribute.js +172 -0
- package/dist/gulp/tasks/fontawesome.js +25 -0
- package/dist/gulp/tasks/html.js +163 -0
- package/dist/gulp/tasks/icons.js +126 -0
- package/dist/gulp/tasks/package.js +742 -0
- package/dist/gulp/tasks/publish.js +417 -0
- package/dist/gulp/tasks/sass.js +252 -0
- package/dist/gulp/tasks/serve.js +103 -0
- package/dist/gulp/tasks/translate.js +252 -0
- package/dist/gulp/tasks/utils/build-json.js +43 -0
- package/dist/gulp/tasks/utils/template-transform.js +50 -0
- package/dist/gulp/templates/BUILD_INSTRUCTIONS.md +69 -0
- package/dist/index.js +46 -0
- package/dist/lib/affiliatizer.js +224 -0
- package/dist/lib/analytics.js +26 -0
- package/dist/lib/auth-helpers.js +213 -0
- package/dist/lib/extension.js +116 -0
- package/dist/lib/icons.js +36 -0
- package/dist/lib/logger-lite.js +35 -0
- package/dist/lib/logger.js +4 -0
- package/dist/lib/messaging.js +48 -0
- package/dist/lib/safe-install.js +4 -0
- package/dist/lib/theme.js +73 -0
- package/dist/lib/verts.js +68 -0
- package/dist/offscreen.js +31 -0
- package/dist/omega-bin.js +6 -0
- package/dist/options.js +80 -0
- package/dist/page.js +80 -0
- package/dist/popup.js +80 -0
- package/dist/sidepanel.js +80 -0
- package/dist/test/assert.js +4 -0
- package/dist/test/fixtures/consumer-extension/dist/background.js +23 -0
- package/dist/test/fixtures/consumer-extension/dist/manifest.json +20 -0
- package/dist/test/fixtures/consumer-extension/dist/options.html +10 -0
- package/dist/test/fixtures/consumer-extension/dist/popup.bundle.js +5 -0
- package/dist/test/fixtures/consumer-extension/dist/popup.html +12 -0
- package/dist/test/harness/extension/background.js +26 -0
- package/dist/test/harness/extension/manifest.json +27 -0
- package/dist/test/harness/extension/options.html +12 -0
- package/dist/test/harness/extension/popup.html +12 -0
- package/dist/test/harness/extension/sidepanel.html +12 -0
- package/dist/test/index.js +63 -0
- package/dist/test/runner.js +99 -0
- package/dist/test/runners/boot.js +221 -0
- package/dist/test/runners/chromium.js +391 -0
- package/dist/test/runners/helpers.js +24 -0
- package/dist/test/suites/background/messaging.test.js +44 -0
- package/dist/test/suites/background/storage.test.js +46 -0
- package/dist/test/suites/background/sw-context.test.js +49 -0
- package/dist/test/suites/boot/build-json-bake.test.js +80 -0
- package/dist/test/suites/boot/extension-loads.test.js +58 -0
- package/dist/test/suites/build/affiliatizer.test.js +64 -0
- package/dist/test/suites/build/app-launch.test.js +65 -0
- package/dist/test/suites/build/attach-log-file.test.js +99 -0
- package/dist/test/suites/build/auth-emulator-gate.test.js +118 -0
- package/dist/test/suites/build/auth-triggers.test.js +71 -0
- package/dist/test/suites/build/boot-discovery.test.js +134 -0
- package/dist/test/suites/build/boot-timeout.test.js +92 -0
- package/dist/test/suites/build/build-error-notification.test.js +122 -0
- package/dist/test/suites/build/build-json-bake.test.js +302 -0
- package/dist/test/suites/build/build-verb.test.js +138 -0
- package/dist/test/suites/build/bundle-targets.test.js +66 -0
- package/dist/test/suites/build/cache-warming.test.js +44 -0
- package/dist/test/suites/build/cli.test.js +150 -0
- package/dist/test/suites/build/default-boot-test.test.js +100 -0
- package/dist/test/suites/build/defaults-scaffold.test.js +287 -0
- package/dist/test/suites/build/deploy-dispatch.test.js +76 -0
- package/dist/test/suites/build/distribute-task.test.js +111 -0
- package/dist/test/suites/build/ensure-target.test.js +141 -0
- package/dist/test/suites/build/env-delivery.test.js +239 -0
- package/dist/test/suites/build/env-watch.test.js +86 -0
- package/dist/test/suites/build/expect.test.js +48 -0
- package/dist/test/suites/build/exports.test.js +53 -0
- package/dist/test/suites/build/extension-fallback.test.js +82 -0
- package/dist/test/suites/build/framework-deps.test.js +176 -0
- package/dist/test/suites/build/global-handlers.test.js +70 -0
- package/dist/test/suites/build/icon-sheet.test.js +74 -0
- package/dist/test/suites/build/logger-lite.test.js +61 -0
- package/dist/test/suites/build/manager.test.js +249 -0
- package/dist/test/suites/build/mode-helpers.test.js +136 -0
- package/dist/test/suites/build/omega-shell.test.js +103 -0
- package/dist/test/suites/build/omega-tokens.test.js +76 -0
- package/dist/test/suites/build/package-task.test.js +831 -0
- package/dist/test/suites/build/setup-scripts.test.js +172 -0
- package/dist/test/suites/build/strip-dev-blocks.test.js +122 -0
- package/dist/test/suites/build/template-replace.test.js +116 -0
- package/dist/test/suites/build/test-discovery.test.js +64 -0
- package/dist/test/suites/build/test-target-no-match.test.js +119 -0
- package/dist/test/suites/build/theme-resolve.test.js +115 -0
- package/dist/test/suites/build/translate.test.js +85 -0
- package/dist/test/suites/build/url-helpers.test.js +119 -0
- package/dist/test/suites/build/verb-logs.test.js +43 -0
- package/dist/test/suites/build/verts-binding.test.js +67 -0
- package/dist/test/suites/build/wakeup-ping.test.js +90 -0
- package/dist/test/suites/build/wave5-messenger.test.js +80 -0
- package/dist/test/suites/view/options-and-sidepanel.test.js +16 -0
- package/dist/test/suites/view/popup-context.test.js +53 -0
- package/dist/test/suites/view/sidepanel.test.js +16 -0
- package/dist/test/utils/extended-mode-warning.js +13 -0
- package/dist/utils/attach-log-file.js +4 -0
- package/dist/utils/mode-helpers.js +117 -0
- package/dist/utils/url-helpers.js +69 -0
- package/dist/vendor/account/engine.js +182 -0
- package/dist/vendor/account/features.js +220 -0
- package/dist/vendor/account/index.js +53 -0
- package/dist/vendor/account/schema.js +272 -0
- package/dist/vendor/account/subscription.js +38 -0
- package/dist/vendor/config/company.js +31 -0
- package/dist/vendor/config/defaults.js +173 -0
- package/dist/vendor/config/demo.js +18 -0
- package/dist/vendor/config/desktop-artifacts.js +110 -0
- package/dist/vendor/config/edit.js +769 -0
- package/dist/vendor/config/env-delivery.js +145 -0
- package/dist/vendor/config/env-rules.js +93 -0
- package/dist/vendor/config/env-schema.js +1078 -0
- package/dist/vendor/config/env.js +445 -0
- package/dist/vendor/config/hooks.js +97 -0
- package/dist/vendor/config/index.js +237 -0
- package/dist/vendor/config/instances.js +208 -0
- package/dist/vendor/config/load.js +490 -0
- package/dist/vendor/config/merge.js +68 -0
- package/dist/vendor/config/order.js +139 -0
- package/dist/vendor/config/ports.js +374 -0
- package/dist/vendor/config/providers.js +32 -0
- package/dist/vendor/config/repo.js +142 -0
- package/dist/vendor/config/retired-keys.js +430 -0
- package/dist/vendor/config/schema.js +1610 -0
- package/dist/vendor/config/secrets.js +50 -0
- package/dist/vendor/config/seed.js +34 -0
- package/dist/vendor/config/site-global.js +205 -0
- package/dist/vendor/config/validate.js +554 -0
- package/dist/vendor/config/winback.js +61 -0
- package/dist/vendor/devkit/actions-secrets.js +145 -0
- package/dist/vendor/devkit/attach-log-file.js +262 -0
- package/dist/vendor/devkit/bundle.js +292 -0
- package/dist/vendor/devkit/ci-workflows.js +520 -0
- package/dist/vendor/devkit/clean-dirs.js +28 -0
- package/dist/vendor/devkit/cli-router.js +156 -0
- package/dist/vendor/devkit/defaults-engine.js +372 -0
- package/dist/vendor/devkit/deploy-precheck.js +54 -0
- package/dist/vendor/devkit/deploy-record.js +180 -0
- package/dist/vendor/devkit/deploy.js +286 -0
- package/dist/vendor/devkit/empty-modules-plugin.js +64 -0
- package/dist/vendor/devkit/env-watch.js +132 -0
- package/dist/vendor/devkit/framework-deps.js +46 -0
- package/dist/vendor/devkit/icons.js +178 -0
- package/dist/vendor/devkit/license.js +155 -0
- package/dist/vendor/devkit/local.js +1905 -0
- package/dist/vendor/devkit/logger.js +128 -0
- package/dist/vendor/devkit/merge-line-files.js +296 -0
- package/dist/vendor/devkit/npm-registry.js +52 -0
- package/dist/vendor/devkit/omega-bin.js +345 -0
- package/dist/vendor/devkit/safe-install.js +18 -0
- package/dist/vendor/devkit/scaffold-guard.js +96 -0
- package/dist/vendor/devkit/strip-dev-blocks-plugin.js +29 -0
- package/dist/vendor/devkit/strip-dev-blocks.js +32 -0
- package/dist/vendor/devkit/target-dependencies.js +137 -0
- package/dist/vendor/devkit/target-secrets.js +165 -0
- package/dist/vendor/devkit/test/assert.js +120 -0
- package/dist/vendor/devkit/test/define-cases.js +104 -0
- package/dist/vendor/devkit/test/extended-mode-warning.js +22 -0
- package/dist/vendor/devkit/test/runner-core.js +554 -0
- package/dist/vendor/devkit/test/scope.js +162 -0
- package/dist/vendor/devkit/translate/cache.js +84 -0
- package/dist/vendor/devkit/translate/engine.js +243 -0
- package/dist/vendor/devkit/translate/index.js +49 -0
- package/dist/vendor/devkit/translate/languages.js +134 -0
- package/dist/vendor/devkit/translate/providers.js +188 -0
- package/dist/vendor/devkit/update.js +569 -0
- package/docs/affiliatizer.md +81 -0
- package/docs/audit.md +67 -0
- package/docs/auth.md +149 -0
- package/docs/build-system.md +176 -0
- package/docs/cdp-debugging.md +42 -0
- package/docs/cli.md +73 -0
- package/docs/common-mistakes.md +10 -0
- package/docs/components.md +87 -0
- package/docs/css.md +133 -0
- package/docs/defaults.md +72 -0
- package/docs/environment-detection.md +79 -0
- package/docs/extension.md +93 -0
- package/docs/hooks.md +111 -0
- package/docs/icons.md +47 -0
- package/docs/index.md +291 -0
- package/docs/logging.md +33 -0
- package/docs/managers.md +100 -0
- package/docs/offscreen.md +57 -0
- package/docs/publishing.md +182 -0
- package/docs/shared/agent-docs.md +89 -0
- package/docs/shared/analytics.md +612 -0
- package/docs/shared/brands.md +51 -0
- package/docs/shared/breaking-changes.md +497 -0
- package/docs/shared/config.md +1387 -0
- package/docs/shared/deploys.md +215 -0
- package/docs/shared/icons.md +201 -0
- package/docs/shared/local-dev.md +147 -0
- package/docs/shared/logging.md +202 -0
- package/docs/shared/monitoring.md +153 -0
- package/docs/shared/publishing.md +183 -0
- package/docs/shared/rulings.md +34 -0
- package/docs/shared/testing.md +147 -0
- package/docs/shared/theming.md +604 -0
- package/docs/shared/translation.md +291 -0
- package/docs/shared/updates.md +61 -0
- package/docs/templating.md +66 -0
- package/docs/test-boot-layer.md +143 -0
- package/docs/test-framework.md +411 -0
- package/docs/themes.md +89 -0
- package/docs/translations.md +73 -0
- package/docs/verts.md +67 -0
- package/docs/xss-prevention.md +95 -0
- package/package.json +159 -0
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
# Newsflash Theme
|
|
2
|
+
|
|
3
|
+
An editorial news theme: warm paper surfaces, ink text and hairline frames,
|
|
4
|
+
vermilion accents with volt highlights, optical-sized serif headlines
|
|
5
|
+
(Fraunces) over a clean grotesk (Schibsted Grotesk). Signature elements: the
|
|
6
|
+
live news ticker above the masthead, framed editorial images, kickers,
|
|
7
|
+
section rules, drop caps, and pill controls that lift off small hard shadows.
|
|
8
|
+
|
|
9
|
+
## Skin + bounded forks
|
|
10
|
+
|
|
11
|
+
Newsflash follows the base/skin/fork convention
|
|
12
|
+
(`docs/web/sections.md` "Markup convention"): it is a SKIN over the base
|
|
13
|
+
theme's shared markup, plus a short list of identity forks. Every surface it
|
|
14
|
+
does not fork renders base markup (`omega-*` classes) restyled by this
|
|
15
|
+
theme's scss, so the nav, 404, about, contact, pricing, team, and blog
|
|
16
|
+
taxonomy pages are structurally identical to every other skin, and the
|
|
17
|
+
behavior contracts that ride base markup (`data-omega-countup`, the pricing
|
|
18
|
+
JS hooks, the feature-comparison table) all work here unchanged.
|
|
19
|
+
|
|
20
|
+
## Forks
|
|
21
|
+
|
|
22
|
+
Identity forks, all wearing `newsflash-*` BEM classes. This list is
|
|
23
|
+
machine-checked (packages/web/test/theme-convention.test.js): every markup
|
|
24
|
+
file in the theme must appear here, and every listed path must exist.
|
|
25
|
+
|
|
26
|
+
- `themes/newsflash/_layouts/frontend/core/base.html`: the news ticker band
|
|
27
|
+
above the masthead (shell otherwise aligned with base).
|
|
28
|
+
- `themes/newsflash/_layouts/frontend/pages/index.html`: the newspaper
|
|
29
|
+
homepage (cover-story hero, top-story tiles, editorial feed with the
|
|
30
|
+
sticky rail, more-to-chew-on band).
|
|
31
|
+
- `themes/newsflash/_layouts/frontend/pages/blog/index.html`: the lead-story
|
|
32
|
+
front page built on story cards.
|
|
33
|
+
- `themes/newsflash/_layouts/frontend/pages/blog/post.html`: the article
|
|
34
|
+
treatment (reading progress, centered article head, framed article hero,
|
|
35
|
+
drop-cap body).
|
|
36
|
+
- `themes/newsflash/_components/news/story-card/component.html`: the
|
|
37
|
+
editorial tile.
|
|
38
|
+
- `themes/newsflash/_components/news/byline/component.html`: the byline
|
|
39
|
+
strip beside the tiles.
|
|
40
|
+
- `themes/newsflash/_components/heading/lede/component.html`: the band-head
|
|
41
|
+
lede.
|
|
42
|
+
- `themes/newsflash/_components/heading/rule-head/component.html`: the ruled
|
|
43
|
+
band head.
|
|
44
|
+
- `themes/newsflash/_sections/marketing/desks/section.html`: the desks band,
|
|
45
|
+
a newsflash-unique section.
|
|
46
|
+
- `themes/newsflash/_sections/marketing/rundown/section.html`: the rundown
|
|
47
|
+
band, a newsflash-unique section.
|
|
48
|
+
- `themes/newsflash/_sections/marketing/newsletter-cta/section.html`: kept
|
|
49
|
+
for its "rail" variant (the homepage sidebar signup card), an arg-contract
|
|
50
|
+
extension the base band lacks; behavior stays inherited (the js lane).
|
|
51
|
+
|
|
52
|
+
Everything else falls through to base. The scss floor for the fallthrough
|
|
53
|
+
vocabulary comes from classy's token-pure partials (imported in
|
|
54
|
+
`_theme.scss`) painted through this theme's `--omega-*` re-values, with
|
|
55
|
+
editorial overlays on top (`css/components/_panels.scss` — the marketing set
|
|
56
|
+
pieces, plan cards included, since `marketing/pricing-cards` composes them
|
|
57
|
+
off /pricing too (#531) — the omega voice rules in `css/base/_utilities.scss`,
|
|
58
|
+
the masthead re-skin of `.omega-nav` in `css/layout/_navigation.scss`, and the
|
|
59
|
+
404/pricing page css).
|
|
60
|
+
|
|
61
|
+
## Select the theme
|
|
62
|
+
|
|
63
|
+
```json5
|
|
64
|
+
// config/omega.json5 (consuming brand/app)
|
|
65
|
+
theme: {
|
|
66
|
+
id: "newsflash",
|
|
67
|
+
appearance: "system", // or "light" / "dark" — dark mode is first-class
|
|
68
|
+
},
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## Customize
|
|
72
|
+
|
|
73
|
+
Compile-time knobs: every variable in `_config.scss` is `!default` — override
|
|
74
|
+
any of them from your project's main.scss:
|
|
75
|
+
|
|
76
|
+
```scss
|
|
77
|
+
// src/assets/css/main.scss (consuming project)
|
|
78
|
+
@use 'omega:main' with (
|
|
79
|
+
$primary: #0E7C3A, // swap vermilion for forest green
|
|
80
|
+
$nf-volt: #FFD966, // warmer highlighter
|
|
81
|
+
$nf-radius: 12px, // tighter frames
|
|
82
|
+
$nf-font-display: ('Lora', serif), // different serif voice
|
|
83
|
+
);
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
Runtime paint reads the shared `--omega-*` token contract
|
|
87
|
+
(`core/css/tokens/_index.scss`), which `css/base/_root.scss` re-values with
|
|
88
|
+
the editorial sheet — light AND dark, three-stamp plumbing, Bootstrap bridged
|
|
89
|
+
per classy's pattern. Consumers can override any token per-mode in plain CSS,
|
|
90
|
+
and `brand.color` in omega.json5 recolors the whole accent family via the
|
|
91
|
+
head-emitted ramps. Genuinely-editorial extras (volt, ink panels, hard-offset
|
|
92
|
+
shadow recipes, grain) keep the `--nf-*` namespace.
|
|
93
|
+
|
|
94
|
+
## Fonts
|
|
95
|
+
|
|
96
|
+
Fraunces + Schibsted Grotesk are VENDORED (`fonts/` + `css/base/_fonts.scss`,
|
|
97
|
+
both OFL, variable, latin + latin-ext) — no CDN requests. The runtime reads
|
|
98
|
+
`--omega-font-ui` / `--omega-font-serif`, so re-pointing families is a
|
|
99
|
+
two-property override.
|
|
100
|
+
|
|
101
|
+
## Behaviors
|
|
102
|
+
|
|
103
|
+
None of its own beyond the reading-progress page module
|
|
104
|
+
(`js/pages/blog/[slug].js`). Bootstrap tooltips come from the shared
|
|
105
|
+
core-layer initializer every theme imports; the ticker rides the shared
|
|
106
|
+
motion engine's marquee; masthead scroll state is engine-stamped.
|
|
107
|
+
|
|
108
|
+
## Conventions
|
|
109
|
+
|
|
110
|
+
- Fork markup wears `newsflash-<block>__<element>--<modifier>` BEM
|
|
111
|
+
(`newsflash-ticker`, `newsflash-story-card`, `newsflash-kicker`,
|
|
112
|
+
`newsflash-frame`, `newsflash-rule-head`, ...). Bootstrap classes, the
|
|
113
|
+
shared `omega-*` vocabulary, `data-*` idioms, and core JS hooks
|
|
114
|
+
(`amount`, `billing-info`, `button-text`, `blog-post-content`) stay
|
|
115
|
+
untouched.
|
|
116
|
+
- Components read `var(--omega-*)` for everything the contract names; the
|
|
117
|
+
`--nf-*` namespace is reserved for concepts that only exist in this theme.
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{% comment %}
|
|
2
|
+
The newsflash lede — the big section header under a rule head: h1-sized h2
|
|
3
|
+
with optional accent span, then an optional lead paragraph. Callers keep
|
|
4
|
+
their own <header> shell (margins vary per band).
|
|
5
|
+
{% endcomment %}
|
|
6
|
+
<h2 class="newsflash-lede h1 mb-2">
|
|
7
|
+
{{ args.headline }}
|
|
8
|
+
{% iftruthy args.headline_accent %}
|
|
9
|
+
<span class="newsflash-accent">{{ args.headline_accent }}</span>
|
|
10
|
+
{% endiftruthy %}
|
|
11
|
+
</h2>
|
|
12
|
+
{% iftruthy args.subheadline %}
|
|
13
|
+
<p class="lead mb-0">{{ args.subheadline }}</p>
|
|
14
|
+
{% endiftruthy %}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
{
|
|
2
|
+
description: 'Newsflash lede — the big section header under a rule head: h1-sized h2 with optional text-accent span, then an optional lead paragraph. Callers keep their own <header> shell.',
|
|
3
|
+
|
|
4
|
+
args: {
|
|
5
|
+
headline: 'string',
|
|
6
|
+
headline_accent: 'string',
|
|
7
|
+
subheadline: 'string',
|
|
8
|
+
},
|
|
9
|
+
|
|
10
|
+
defaults: {},
|
|
11
|
+
|
|
12
|
+
// Showcase variants (spec §9)
|
|
13
|
+
demo: [
|
|
14
|
+
{
|
|
15
|
+
label: 'Accent + subheadline',
|
|
16
|
+
args: {
|
|
17
|
+
headline: 'The week in',
|
|
18
|
+
headline_accent: 'review',
|
|
19
|
+
subheadline: 'A standfirst under the lede, set in the body voice.',
|
|
20
|
+
},
|
|
21
|
+
},
|
|
22
|
+
],
|
|
23
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
{% comment %}
|
|
2
|
+
The newsflash band head — micro h2 + horizontal rule + optional view-all
|
|
3
|
+
link (arrow-right built in: it is the idiom, not a knob). The h2 renders
|
|
4
|
+
only when text is set; the link only when link_text is set. The doc
|
|
5
|
+
comment trims its trailing newline (-%}) so the rendered markup starts
|
|
6
|
+
tight and call sites adjacent to whitespace-trimmed tags keep their
|
|
7
|
+
glued joins.
|
|
8
|
+
{% endcomment -%}
|
|
9
|
+
<div class="newsflash-rule-head" data-lazy="@class animation-slide-up">
|
|
10
|
+
{% iftruthy args.text %}
|
|
11
|
+
<h2>{{ args.text }}</h2>
|
|
12
|
+
{% endiftruthy %}
|
|
13
|
+
<span class="newsflash-rule-head__rule"></span>
|
|
14
|
+
{% iftruthy args.link_text %}
|
|
15
|
+
<a href="{{ args.link_href }}">{{ args.link_text }} <i class="fa-solid fa-arrow-right ms-1"></i></a>
|
|
16
|
+
{% endiftruthy %}
|
|
17
|
+
</div>
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
{
|
|
2
|
+
description: 'Newsflash band head — micro h2 + horizontal rule + optional view-all link (arrow-right is part of the idiom). h2 suppressed when text is blank; the link renders only when link_text is set.',
|
|
3
|
+
|
|
4
|
+
args: {
|
|
5
|
+
text: 'string',
|
|
6
|
+
link_text: 'string',
|
|
7
|
+
link_href: 'string',
|
|
8
|
+
},
|
|
9
|
+
|
|
10
|
+
defaults: {},
|
|
11
|
+
|
|
12
|
+
// Showcase variants (spec §9)
|
|
13
|
+
demo: [
|
|
14
|
+
{
|
|
15
|
+
label: 'Label only',
|
|
16
|
+
args: { text: 'Top stories' },
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
label: 'With view-all link',
|
|
20
|
+
args: { text: 'The latest', link_text: 'View all', link_href: '/blog' },
|
|
21
|
+
},
|
|
22
|
+
],
|
|
23
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
{% comment %}
|
|
2
|
+
The newsflash byline — author (looked up via omega_member from the id in
|
|
3
|
+
args.author) · pre-formatted date · readtime. Callers capture the readtime
|
|
4
|
+
({% capture rt %}{% omega_readtime post.content %}{% endcapture %}) — the tag
|
|
5
|
+
needs the post content, which never rides args. p_class carries the
|
|
6
|
+
variant (default = the tile form; the lead splash passes its own).
|
|
7
|
+
{% endcomment %}
|
|
8
|
+
<p class="newsflash-byline {{ args.p_class }}">
|
|
9
|
+
<b class="text-body">{%- omega_member args.author, "name" -%}</b>
|
|
10
|
+
· {{ args.date }}
|
|
11
|
+
· {{ args.readtime }} min read
|
|
12
|
+
</p>
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
description: 'Newsflash byline — author name (omega_member lookup from the author id) · pre-formatted date · readtime in minutes. Callers pre-capture readtime (omega_readtime needs post content, which never rides args). p_class carries the variant.',
|
|
3
|
+
|
|
4
|
+
args: {
|
|
5
|
+
author: 'string',
|
|
6
|
+
date: 'string',
|
|
7
|
+
readtime: 'string',
|
|
8
|
+
p_class: 'string',
|
|
9
|
+
},
|
|
10
|
+
|
|
11
|
+
defaults: {
|
|
12
|
+
p_class: 'small text-body-secondary mb-0',
|
|
13
|
+
},
|
|
14
|
+
|
|
15
|
+
// No demo (spec §9, deliberate): the component resolves its author through
|
|
16
|
+
// omega_member against live site content — a showcase page can't fabricate
|
|
17
|
+
// that lookup, so the entry documents args only.
|
|
18
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{% comment %}
|
|
2
|
+
The newsflash story tile — framed art (omega_post image-tag from args.id),
|
|
3
|
+
optional kicker (pass it display-ready: category callers append
|
|
4
|
+
`| default: "" | omega_title_case` so a category-less post suppresses the
|
|
5
|
+
kicker instead of rendering "Undefined"), h5 headline, byline. The tile
|
|
6
|
+
form shared by the index story grids, blog index, category/tag pages, and
|
|
7
|
+
related posts; the lead-story splash is its own layout-owned form.
|
|
8
|
+
{% endcomment %}
|
|
9
|
+
<a href="{{ args.url }}" class="newsflash-story-card">
|
|
10
|
+
<div class="newsflash-frame mb-3">
|
|
11
|
+
{%- omega_post args.id, "image-tag", class="w-100" -%}
|
|
12
|
+
</div>
|
|
13
|
+
{% iftruthy args.kicker %}
|
|
14
|
+
<span class="newsflash-kicker mb-1">{{ args.kicker }}</span>
|
|
15
|
+
{% endiftruthy %}
|
|
16
|
+
{% comment %} Generated-content tell (#208): callers pass the document's
|
|
17
|
+
`generated` flag straight through, so every story row of a sample post
|
|
18
|
+
says what it is. It sits on the kicker line above the headline (#322), a
|
|
19
|
+
chip beside it rather than a band of its own. {% endcomment %}
|
|
20
|
+
{% iftruthy args.generated %}
|
|
21
|
+
<span class="omega-chip omega-generated-badge mb-1">TEST</span>
|
|
22
|
+
{% endiftruthy %}
|
|
23
|
+
<h3 class="h5 my-2">{{ args.title }}</h3>
|
|
24
|
+
{% component "news/byline", author: args.author, date: args.date, readtime: args.readtime %}
|
|
25
|
+
</a>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
description: 'Newsflash story tile — framed art (omega_post image-tag from the post id), optional display-ready kicker, h5 headline, nested news/byline. url arrives absolute (resolved.config.url | append: post.url); date pre-formatted; readtime pre-captured.',
|
|
3
|
+
|
|
4
|
+
args: {
|
|
5
|
+
url: 'string',
|
|
6
|
+
id: { description: 'post id — string or number (omega_post resolves either; posts carry numeric ids by convention)' },
|
|
7
|
+
kicker: 'string',
|
|
8
|
+
title: 'string',
|
|
9
|
+
author: 'string',
|
|
10
|
+
date: 'string',
|
|
11
|
+
readtime: 'string',
|
|
12
|
+
generated: { description: 'the document\'s `generated` frontmatter flag — truthy renders the #208 TEST badge (sample content only)' },
|
|
13
|
+
},
|
|
14
|
+
|
|
15
|
+
defaults: {},
|
|
16
|
+
|
|
17
|
+
// No demo (spec §9, deliberate): the tile resolves its art through omega_post
|
|
18
|
+
// (and its byline through omega_member) against live site content — a
|
|
19
|
+
// showcase page can't fabricate those lookups, so the entry documents
|
|
20
|
+
// args only.
|
|
21
|
+
}
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
// Newsflash Theme Configuration
|
|
2
|
+
// ALL customizable variables are defined here with !default.
|
|
3
|
+
// Consuming projects override any of these BEFORE the theme is imported.
|
|
4
|
+
//
|
|
5
|
+
// Design language: warm paper surfaces; ink text + hairline ink frames;
|
|
6
|
+
// vermilion accents with volt highlights; serif display type over a clean
|
|
7
|
+
// grotesk; pill controls sitting on small hard offset shadows that "lift"
|
|
8
|
+
// on hover. An editorial newsroom — modern front page, not a brochure.
|
|
9
|
+
//
|
|
10
|
+
// Compile-time knobs live here; RUNTIME paint reads the shared --omega-*
|
|
11
|
+
// tokens, which css/base/_root.scss re-values editorially (consumers can
|
|
12
|
+
// also override them per-mode in plain CSS). brand.color in omega.json5
|
|
13
|
+
// recolors the accent family without touching either.
|
|
14
|
+
|
|
15
|
+
// ============================================
|
|
16
|
+
// Bootstrap Color Overrides
|
|
17
|
+
// ============================================
|
|
18
|
+
// Editorial ink-and-accent palette mapped onto Bootstrap's semantic colors.
|
|
19
|
+
$primary: #F03612 !default; // vermilion — the signature accent
|
|
20
|
+
$secondary: #5C544A !default; // ink-soft — muted secondary actions
|
|
21
|
+
$success: #2E7D4F !default; // editorial green
|
|
22
|
+
$info: #2742F5 !default; // electric blue
|
|
23
|
+
$warning: #D9F24E !default; // volt — highlighter yellow-green
|
|
24
|
+
$danger: #C81E1E !default; // deep red (distinct from vermilion)
|
|
25
|
+
$light: #F7F2E7 !default; // paper
|
|
26
|
+
$dark: #171310 !default; // ink
|
|
27
|
+
|
|
28
|
+
// ============================================
|
|
29
|
+
// Paper & Ink (the structural neutrals)
|
|
30
|
+
// ============================================
|
|
31
|
+
// "Paper" = the page surface. "Ink" = text, frames, and hard shadows.
|
|
32
|
+
$nf-paper: #F7F2E7 !default; // body background (light mode)
|
|
33
|
+
$nf-paper-2: #EFE8D8 !default; // wells / alt surfaces (light mode)
|
|
34
|
+
$nf-ink: #171310 !default; // text + frames (light mode)
|
|
35
|
+
$nf-ink-soft: #5C544A !default; // deks, metas, muted text (light mode)
|
|
36
|
+
|
|
37
|
+
// Dark mode counterparts — deep warm near-black paper, cream ink.
|
|
38
|
+
$nf-paper-dark: #181210 !default;
|
|
39
|
+
$nf-paper-2-dark: #221A14 !default;
|
|
40
|
+
$nf-ink-dark: #F2E8D9 !default;
|
|
41
|
+
$nf-ink-soft-dark: #A8998A !default;
|
|
42
|
+
|
|
43
|
+
// ============================================
|
|
44
|
+
// Accent Palette
|
|
45
|
+
// ============================================
|
|
46
|
+
$nf-vermilion: #F03612 !default;
|
|
47
|
+
$nf-vermilion-dark-mode: #FF4A26 !default; // brightened for contrast on dark paper
|
|
48
|
+
$nf-blue: #2742F5 !default;
|
|
49
|
+
$nf-blue-dark-mode: #5B72FF !default;
|
|
50
|
+
$nf-volt: #D9F24E !default; // stays vibrant in both modes
|
|
51
|
+
$nf-volt-ink: #171310 !default; // readable text on volt
|
|
52
|
+
|
|
53
|
+
// Ink panels (footer, ticker, big-read band) — dark slabs in BOTH modes.
|
|
54
|
+
$nf-panel-bg: #171310 !default;
|
|
55
|
+
$nf-panel-color: #F7F2E7 !default;
|
|
56
|
+
$nf-panel-bg-dark: #0E0B09 !default; // deeper than dark paper so it still reads as a slab
|
|
57
|
+
$nf-panel-color-dark: #F2E8D9 !default;
|
|
58
|
+
|
|
59
|
+
// ============================================
|
|
60
|
+
// Borders — hairline ink frames
|
|
61
|
+
// ============================================
|
|
62
|
+
$nf-border-width: 1.5px !default;
|
|
63
|
+
$nf-radius: 18px !default; // frames, cards, panels
|
|
64
|
+
$nf-radius-sm: 12px !default; // small frames, inputs
|
|
65
|
+
|
|
66
|
+
// ============================================
|
|
67
|
+
// Shadows — small hard offsets (controls) + soft pop (frames)
|
|
68
|
+
// ============================================
|
|
69
|
+
// Controls rest on a 3px hard ink shadow and LIFT on hover (shadow grows to
|
|
70
|
+
// 6px while the element translates up-left). Frames use a soft "pop" blur.
|
|
71
|
+
$nf-shadow-offset: 3px !default;
|
|
72
|
+
$nf-shadow-offset-hover: 6px !default;
|
|
73
|
+
$nf-shadow-pop: 0 18px 40px -18px rgba(23, 19, 16, .35) !default;
|
|
74
|
+
|
|
75
|
+
// ============================================
|
|
76
|
+
// Typography
|
|
77
|
+
// ============================================
|
|
78
|
+
// Fraunces (optical-sized serif) for display; Schibsted Grotesk for body/UI.
|
|
79
|
+
// Both VENDORED in the theme's fonts/ dir (D5 — css/base/_fonts.scss); the
|
|
80
|
+
// runtime reads the --omega-font-* tokens, which _root.scss re-points.
|
|
81
|
+
$font-family-sans-serif: 'Schibsted Grotesk', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !default;
|
|
82
|
+
$nf-font-display: 'Fraunces', Georgia, 'Times New Roman', serif !default;
|
|
83
|
+
|
|
84
|
+
$headings-font-weight: 600 !default;
|
|
85
|
+
$nf-heading-letter-spacing: -0.02em !default;
|
|
86
|
+
$font-weight-bold: 700 !default;
|
|
87
|
+
|
|
88
|
+
// ============================================
|
|
89
|
+
// Motion — smooth editorial easing
|
|
90
|
+
// ============================================
|
|
91
|
+
// Rides the shared motion tokens (the root re-values them to the editorial
|
|
92
|
+
// curve), so consumer token overrides retime every transition at once.
|
|
93
|
+
$nf-transition: all var(--omega-speed) var(--omega-ease) !default;
|
|
94
|
+
|
|
95
|
+
// ============================================
|
|
96
|
+
// Component Sizing
|
|
97
|
+
// ============================================
|
|
98
|
+
// Avatar sizes map (matches Classy so shared layouts/includes render correctly)
|
|
99
|
+
$avatar-sizes: (
|
|
100
|
+
null: 3rem,
|
|
101
|
+
2xs: 0.5rem,
|
|
102
|
+
xs: 1.5rem,
|
|
103
|
+
sm: 2rem,
|
|
104
|
+
md: 2.5rem,
|
|
105
|
+
lg: 3.5rem,
|
|
106
|
+
xl: 5rem,
|
|
107
|
+
2xl: 7.5rem,
|
|
108
|
+
3xl: 10rem,
|
|
109
|
+
4xl: 12.5rem,
|
|
110
|
+
5xl: 15rem
|
|
111
|
+
) !default;
|
|
112
|
+
|
|
113
|
+
// ============================================
|
|
114
|
+
// Forward Bootstrap with our configuration
|
|
115
|
+
// ============================================
|
|
116
|
+
@forward '../bootstrap/scss/bootstrap.scss' with (
|
|
117
|
+
$primary: $primary,
|
|
118
|
+
$secondary: $secondary,
|
|
119
|
+
$success: $success,
|
|
120
|
+
$info: $info,
|
|
121
|
+
$warning: $warning,
|
|
122
|
+
$danger: $danger,
|
|
123
|
+
$light: $light,
|
|
124
|
+
$dark: $dark,
|
|
125
|
+
$font-family-sans-serif: $font-family-sans-serif,
|
|
126
|
+
$headings-font-family: $nf-font-display,
|
|
127
|
+
$headings-font-weight: $headings-font-weight,
|
|
128
|
+
$font-weight-bold: $font-weight-bold,
|
|
129
|
+
// Type metrics MUST live in Bootstrap vars (not element rules in the main
|
|
130
|
+
// bundle): page bundles re-emit Bootstrap AFTER main, so Bootstrap's own
|
|
131
|
+
// .display-*/.lead/body rules would win there with the stock 300 weights.
|
|
132
|
+
$headings-line-height: 1.1,
|
|
133
|
+
$display-font-family: $nf-font-display,
|
|
134
|
+
$display-font-weight: 550,
|
|
135
|
+
$display-line-height: 1.04,
|
|
136
|
+
$lead-font-weight: 400,
|
|
137
|
+
$line-height-base: 1.55,
|
|
138
|
+
// Hairline ink borders everywhere; editorial radii (controls go pill in
|
|
139
|
+
// component SCSS — cards/frames keep these).
|
|
140
|
+
$border-width: $nf-border-width,
|
|
141
|
+
$border-radius: $nf-radius-sm,
|
|
142
|
+
$border-radius-sm: 8px,
|
|
143
|
+
$border-radius-lg: $nf-radius,
|
|
144
|
+
$border-radius-xl: 24px,
|
|
145
|
+
$enable-shadows: false,
|
|
146
|
+
$enable-negative-margins: true
|
|
147
|
+
);
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
---
|
|
2
|
+
layout: core/root
|
|
3
|
+
|
|
4
|
+
config:
|
|
5
|
+
theme:
|
|
6
|
+
# html:
|
|
7
|
+
# class: ""
|
|
8
|
+
# Fonts are VENDORED (css/base/_fonts.scss + fonts/) — no CDN link here.
|
|
9
|
+
body:
|
|
10
|
+
class: "d-flex flex-column min-vh-100"
|
|
11
|
+
# main:
|
|
12
|
+
# class: "flex-fill"
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
<!-- News ticker — the latest headlines marquee above the masthead.
|
|
16
|
+
Rides the shared motion engine (data-omega-marquee: one authored set,
|
|
17
|
+
the engine clones it for the seamless -50% loop, hover pauses, clones
|
|
18
|
+
are aria-hidden + untabbable, reduced-motion/no-JS = static row).
|
|
19
|
+
Absent when the site has no posts. Nav-chrome: pages that disable the
|
|
20
|
+
masthead (cover chain — 404, auth) drop the ticker with it. -->
|
|
21
|
+
{% if site.posts.size > 0 and resolved.config.theme.nav.enabled != false %}
|
|
22
|
+
<div class="newsflash-ticker omega-marquee" data-omega-marquee="50">
|
|
23
|
+
<div class="newsflash-ticker__track omega-marquee__track">
|
|
24
|
+
{% for post in site.posts limit: 5 %}
|
|
25
|
+
<span class="newsflash-ticker__item omega-marquee__item">
|
|
26
|
+
{% if forloop.first %}
|
|
27
|
+
<span class="newsflash-ticker__dot"></span><b>LATEST</b>
|
|
28
|
+
{% else %}
|
|
29
|
+
<i class="fa-solid fa-bolt"></i>
|
|
30
|
+
{% endif %}
|
|
31
|
+
<a href="{{ resolved.config.url }}{{ post.url }}">{{ post.post.title }}</a>
|
|
32
|
+
</span>
|
|
33
|
+
{% endfor %}
|
|
34
|
+
</div>
|
|
35
|
+
</div>
|
|
36
|
+
{% endif %}
|
|
37
|
+
|
|
38
|
+
<!-- Nav (controlled by page/layout front matter) -->
|
|
39
|
+
{% unless resolved.config.theme.nav.enabled == false %}
|
|
40
|
+
{%- include frontend/sections/nav.html -%}
|
|
41
|
+
{% endunless %}
|
|
42
|
+
|
|
43
|
+
<!-- Main Content -->
|
|
44
|
+
<main id="main-content" class="flex-fill {{ resolved.config.theme.main.class | omega_liquify }}" aria-label="Main content">
|
|
45
|
+
{{ content | omega_content_format }}
|
|
46
|
+
</main>
|
|
47
|
+
|
|
48
|
+
<!-- Footer (controlled by page/layout front matter) -->
|
|
49
|
+
{% unless resolved.config.theme.footer.enabled == false %}
|
|
50
|
+
{%- include frontend/sections/footer.html -%}
|
|
51
|
+
{% endunless %}
|