diff --git a/.gitignore b/.gitignore index 392750ea2..656f8f4d6 100644 --- a/.gitignore +++ b/.gitignore @@ -4,4 +4,5 @@ /package-lock.json .env .idea/ -*.iml \ No newline at end of file +*.iml +.vscode diff --git a/archetypes/component/1/css.inc b/.hugo_build.lock similarity index 100% rename from archetypes/component/1/css.inc rename to .hugo_build.lock diff --git a/README.md b/README.md index 32c36c904..636bbce54 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ This the Hugo site powering our [code library](https://codelibrary.opendatasoft.com/). The repo is mainly here for you to peak at the code. It's not intended to serve as a base for other projects. Should you have a question nevertheless, feel free to raise an issue. ### Cmds -If you want to test—and break !—the site locally: +If you want to run the site locally: Install ```shell script @@ -15,17 +15,16 @@ Run hugo server -D ``` -Deploy on GH Pages (if you pushed to a remote) -```shell script -hugo -git subtree push --prefix public origin gh-pages -``` - -Update Algolia index (see .env) +Update Algolia index (.env with private keys required, cf. 1password) ```shell script npm run algolia ``` +### To deploy + +- Build (`hugo` cmd) +- git add/commit/push all the directory, but especially `/public` that contains the Code Library to deploy + ### Add new Content Using content archetype to create pages will automatically add date and title. @@ -40,3 +39,19 @@ Add new content to an existing page: ```shell script hugo new --kind content section/page/5 // Contents are ordered by the number of their folder ``` + +### Schema.md helper + +To create a schema.md file automatically for a resource. +Use the helper : + +```shell script +node genschema.js +``` + +ex: +```shell script +node genschema.js issy-les-moulineaux chrono_issy0 evenement,imagecsv,jour,mois,annee,coordonnees_geo,web +``` + +The expected output is a `schema.md` file in the root directory, that can be then moved to the resource. \ No newline at end of file diff --git a/public/widget-tricks/heatmaps-vegalite/1/css.inc b/archetypes/components/1/css.inc similarity index 100% rename from public/widget-tricks/heatmaps-vegalite/1/css.inc rename to archetypes/components/1/css.inc diff --git a/archetypes/component/1/html.inc b/archetypes/components/1/html.inc similarity index 100% rename from archetypes/component/1/html.inc rename to archetypes/components/1/html.inc diff --git a/archetypes/component/1/index.md b/archetypes/components/1/index.md similarity index 58% rename from archetypes/component/1/index.md rename to archetypes/components/1/index.md index 534bff0ef..7eb348825 100644 --- a/archetypes/component/1/index.md +++ b/archetypes/components/1/index.md @@ -2,7 +2,7 @@ title: "Component 1" date: {{ .Date }} height: 70 -external_url: "https://www.opendatasoft.com" +external_url: "https://www.huwise.com" --- Text diff --git a/archetypes/component/index.md b/archetypes/components/index.md similarity index 100% rename from archetypes/component/index.md rename to archetypes/components/index.md diff --git a/archetypes/content/index.md b/archetypes/content/index.md index a72f7765b..279b7fe29 100644 --- a/archetypes/content/index.md +++ b/archetypes/content/index.md @@ -2,7 +2,7 @@ title: "Content title" date: {{ .Date }} height: 70 -external_url: "https://wwww.opendatasoft.com" +external_url: "https://www.huwise.com" --- Text diff --git a/archetypes/portal-theme/footer.html.inc b/archetypes/portal-themes/1/footer.html.inc similarity index 100% rename from archetypes/portal-theme/footer.html.inc rename to archetypes/portal-themes/1/footer.html.inc diff --git a/archetypes/portal-theme/header.html.inc b/archetypes/portal-themes/1/header.html.inc similarity index 100% rename from archetypes/portal-theme/header.html.inc rename to archetypes/portal-themes/1/header.html.inc diff --git a/archetypes/portal-theme/index.md b/archetypes/portal-themes/1/index.md similarity index 91% rename from archetypes/portal-theme/index.md rename to archetypes/portal-themes/1/index.md index 381e712d9..fddb42ca6 100644 --- a/archetypes/portal-theme/index.md +++ b/archetypes/portal-themes/1/index.md @@ -4,7 +4,7 @@ date: {{ .Date }} description: "" tags: [] iframe: "https://discovery.opendatasoft.com/" -external_url: "https://discovery.opendatasoft.com/" +external_url: "https://discovery.opendatasoft.com/" text: "#565656" links: "#0086D6" titles: "#000000" diff --git a/archetypes/portal-theme/stylesheet.css.inc b/archetypes/portal-themes/1/stylesheet.css.inc similarity index 100% rename from archetypes/portal-theme/stylesheet.css.inc rename to archetypes/portal-themes/1/stylesheet.css.inc diff --git a/archetypes/portal-themes/index.md b/archetypes/portal-themes/index.md new file mode 100644 index 000000000..d7404e24f --- /dev/null +++ b/archetypes/portal-themes/index.md @@ -0,0 +1,9 @@ +--- +title: "My theme" +description: "A theme" +tags: [] +resources: +- src: '*/' + name: folder-:counter +--- + diff --git a/assets/js/algolia.js b/assets/js/algolia.js index 37c64fa79..1a9d1a4e3 100644 --- a/assets/js/algolia.js +++ b/assets/js/algolia.js @@ -67,9 +67,13 @@ export function initSearch() {

${hit.print}

+ ${hit._highlightResult.tags ? ` Tags: ${hit._highlightResult.tags.map(tag => `${tag.value}`).join(', ')} + ` + : + ``} ` diff --git a/assets/js/show-code.js b/assets/js/show-code.js index 46dca6e57..579fe70eb 100644 --- a/assets/js/show-code.js +++ b/assets/js/show-code.js @@ -1,16 +1,21 @@ -const addToggleButton = box => { - const button = box.querySelector(".show-code .button"); - const codeBox = box.querySelector(".box-code"); +const addToggleButton = (box, name) => { + const button = box.querySelector(`button.show-${name}`); + const content = box.querySelector(`div.box-${name}`); - if (!button || !codeBox) { return } + if (!button || !content) { return } button.addEventListener("click", () => { - codeBox.classList.toggle("is-hidden"); + content.classList.toggle("is-hidden"); + content.toggleAttribute("aria-hidden"); button.classList.toggle("is-active"); + button.toggleAttribute("aria-selected"); }); }; export default () => { const boxes = document.querySelectorAll(".box"); - [...boxes].forEach(addToggleButton); + [...boxes].forEach((box) => { + addToggleButton(box, 'code'); + addToggleButton(box, 'schema'); + } ); }; diff --git a/assets/scss/components/hubpost.scss b/assets/scss/components/hubpost.scss new file mode 100644 index 000000000..30ecd0c77 --- /dev/null +++ b/assets/scss/components/hubpost.scss @@ -0,0 +1,98 @@ +/* Bulma override / fix conflict */ +.input { + padding: 0; + border: none; + box-shadow: none; + margin-right: 1em !important; +} + +.input:active, .input:focus { + border: none; + box-shadow: none; +} + +select { + height: 100%; +} + +/***/ + +.hs-form { + margin: auto; + max-width: 500px; +} + +div.hs-form-field { + padding: 10px 0 10px 0; +} + +.hs-form input[name='firstname'], .hs-form input[name='lastname'] { + width: 100%; +} + +.hs-input { + width: 100% !important; +} + +.hs-form-field ul { + list-style-type: none; + padding: 0; +} + +.hs-form-field > label { + color: $primary; +} + +.hs-form-field ul label { + color: $danger; + font-weight: lighter; + font-size: 14px; + margin: 0; +} + +.hs-form input, .hs-form textarea { + background-color: $body-background-color; + border: 1px solid $grey-light; + border-radius: 3px; + padding: 5px; +} + +.hs-button { + padding: 8px 10px 8px 10px !important; + background-color: $info !important; + border: none !important; + color: white; + width: 200px; + height: 50px; + margin-top: 1em; + margin-left: auto; + margin-right: auto; + display: block; + font-weight: 500; +} + +.hs-button:focus { + outline: none; +} + +.hs-button:hover { + background-color: $primary !important; + cursor: pointer; +} + +.submitted-message > p { + text-align: center; + color: $info; + font-weight: 500; + font-size: 20px; +} + +.submitted-message > p:before { + content: "icon"; + text-indent: -999em; + display: block; + width: 120px; + height: 120px; + background: url("/static/img/form_icon_success.svg") no-repeat; + margin: 0 auto 20px auto; +} \ No newline at end of file diff --git a/assets/scss/components/navbar.scss b/assets/scss/components/navbar.scss index 566913e1a..379d7319d 100644 --- a/assets/scss/components/navbar.scss +++ b/assets/scss/components/navbar.scss @@ -1,10 +1,6 @@ /* Header Navigation Bar ========================================================================== */ -.navbar { - padding: $navbar-padding-vertical $navbar-padding-horizontal; -} - @media screen and (max-width: $widescreen) { .navbar-menu { box-shadow: none; @@ -21,18 +17,131 @@ } } - @media screen and (max-width: $desktop) { .navbar-brand { justify-content: space-between; } } +.ods-header-logo { + margin: auto 0; + display: flex; + align-items: center; + outline: none; +} +.ods-header-logo img { + height: 77px; + width: 140px; + vertical-align: middle; +} + +.ods-header__brandname { + min-width: 130px; + color: #565656; + font-size: 18px; + font-weight: 200; + line-height: 27px; + letter-spacing: .8px; + padding-left: 13px; + border-left: 1px solid; + margin-left: 13px; + text-align: left; +} +.ods-header__nav { + display: flex; + flex-direction: row; + justify-content: flex-start; + align-items: center; + margin-left: 65px; +} +@media (max-width: $desktop) { + .ods-header__nav { + display: none; + } +} +.ods-header { + display: flex; + position: fixed; + height:80px; + width:100%; + top:0; + left:0; + z-index:50; + background-color:#0086D6; + justify-content: space-between; + background-color: white; + color: #565656; + box-shadow: 0.0px 0.0px 13.0px 0px rgba(0, 0, 0, 0.13); +} +@media (min-width: $desktop) { + .ods-header { + display:-ms-flexbox; + display:flex; + -ms-flex-direction:row; + flex-direction:row; + align-items: center; + -ms-flex-align: center; + -ms-flex-pack:start; + justify-content: flex-start; + } + .ods-header__brand { + width: 100%; + justify-content: space-between; + display: flex; + height: 100%; + margin: auto 0; + width: auto; + padding-left: 39px; + } + .ods-header-logo { + padding-left: 39px; + } + .navbar-menu { + display: none; + } +} +.ods-header__nav-item-link { + background-color: transparent; + color: #565656; + border: none; + padding: 8px; + border-radius: 4px; + text-transform: uppercase; + outline: none; + font-size: 14px; + font-weight: 300; + line-height: 27px; + letter-spacing: 0.8px; +} + +.ods-header__nav-item-link:hover, +.ods-header__nav-item-link:focus, +.ods-header__nav-item-link:active, +.ods-header__nav-item-link.active, +.ods-header__nav-item-link.is-active { + color: black; +} + +button { + font-size: 100%; + margin: 0; + vertical-align: baseline; + *vertical-align: middle; + cursor: pointer; + line-height: normal; + -webkit-appearance: button; + *overflow: visible; + padding: 13px; + cursor: pointer; + border: none; + background-color: transparent; +} + .navbar-burger { height: auto; align-self: center; border: none; - background-color: $white; + background-color: transparent; padding: 8px; border-radius: 4px; font-size: .833rem; @@ -42,25 +151,37 @@ .navbar-burger:hover, .navbar-burger.is-active { - color: $white; - background-color: $primary; + background-color: transparent; +} +.navbar-menu.is-active { + display: flex; + flex-direction: column; +} +.navbar-menu { + position: fixed; + top: 80px; + right: 0px; + height: 100%; + width: 300px; + padding-top: 39px; + background-color: white; + z-index: 1000; + transition: 0.5s; + overflow-y: scroll; + -webkit-overflow-scrolling: touch; + border-left: 1px solid #DEE5EF; + color: black; +} +.navbar-menu .ods-header__nav-item-link { + margin: 26px auto 0 26px; +} +.navbar-menu a { + border-bottom: 3px solid transparent; +} +.navbar-menu .ods-header__nav-item-link.is-active, +.navbar-menu a:hover { + color: black; + font-weight: 400; + border-radius: 0; + border-bottom: 3px solid #082645; } - -.navbar-item { - color: white; - border-radius: $radius-small; - padding: 6px 8px; - margin-right: 4px; - text-transform: uppercase; - align-self: center; - font-size: .778rem; - letter-spacing: 0.2px; - font-weight: 600; - line-height: 1.5; - - &:hover, &.is-active { - text-decoration: none; - background-color: $primary; - color: white; - } -} \ No newline at end of file diff --git a/assets/scss/components/sidebar.scss b/assets/scss/components/sidebar.scss index 8da799c31..161a8a268 100644 --- a/assets/scss/components/sidebar.scss +++ b/assets/scss/components/sidebar.scss @@ -41,7 +41,7 @@ position: fixed; top: $navbar-height; left: $spacing-200; - background: white; + background: transparent; z-index: 100; height: $search-height; } @@ -53,7 +53,8 @@ } .sidebar-body { - overflow: scroll; + overflow: auto; + height: 100%; } .sidebar-logo-link { diff --git a/assets/scss/elements/box.scss b/assets/scss/elements/box.scss index 3d7baa337..1e9f39cf4 100644 --- a/assets/scss/elements/box.scss +++ b/assets/scss/elements/box.scss @@ -3,41 +3,21 @@ .box { border: 1px solid $grey-light; } -// .box { -// margin-bottom: $spacing-200; -// color: $ods-text; -// } -// -// .box { -// h2, p { -// max-width: 960px; -// margin-left: auto; -// margin-right: auto; -// } -// -// ul { -// max-width: 900px; -// margin-left: auto; -// margin-right: auto; -// } -// } -// -// .box h2 { -// margin-bottom: 6px; -// } .box-live-example { padding: $spacing-100; background-color: $white; position: relative; border-radius: $radius; + button { border-radius: 0; - // border: 1px solid $grey-light; border-bottom: none; + &:first-child { border-top-left-radius: $radius; } + &:last-child { border-bottom-right-radius: $radius; border-right: none; @@ -54,10 +34,18 @@ background: $light; } -.show-code { +.box-live-example .buttons { position: absolute; bottom: 0; right: 0; border-radius: 0; border-top-left-radius: $radius; } + +.box-schema { + padding: .866rem; + border-top: 1px solid #cbd2db; + background: #f6f8fb; + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} \ No newline at end of file diff --git a/assets/scss/elements/button.scss b/assets/scss/elements/button.scss index d37c8c526..417f6b800 100644 --- a/assets/scss/elements/button.scss +++ b/assets/scss/elements/button.scss @@ -19,10 +19,10 @@ background-color: rgba(0,128,0,0.9); } -.show-code button.button, -.show-code button.button.is-active, -.show-code button.button:hover, -.show-code button.button:focus { +.box-live-example .buttons button.button, +.box-live-example .buttons button.button.is-active, +.box-live-example .buttons button.button:hover, +.box-live-example .buttons button.button:focus { border: 1px solid $grey-light; border-bottom: none; &:last-child { diff --git a/assets/scss/elements/content.scss b/assets/scss/elements/content.scss index 38e9b0586..43c1b1a91 100644 --- a/assets/scss/elements/content.scss +++ b/assets/scss/elements/content.scss @@ -1,35 +1,44 @@ -/* Content - ========================================================================== */ +/* + Structure : + ----------- + + section.resources > div > .content + is the presentation of the resource (root index.md of a resource) + + section.resources > div > article.block > .content + is the presentation of the code block (index.md in a resource sub folder) + */ + + +section.resources > div > article.block > .content { + h4.title { + margin-top: 1.8rem; + margin-bottom: 0.9rem; + } + + .highlight { + margin: 0; + background-color: #f5f5f5; + } +} + +section.resources .content { + &.apps { + p img { + max-width: 600px; + margin: 0 auto 40px; + display: block; + } + } +} + + + + .resources .block:not(:last-child) { padding-bottom: 3rem; } -//.content { -// blockquote { -// padding: 0.75em; -// } - - // margin-top: $spacing-300; - // - // h1, h2, h3, h4, h5, h6 { - // font-weight: 500; - // } - // - // p { - // font-weight: 400; - // line-height: 1.7; - // } - // - // h1 { - // font-size: $size-1; - // color: $title-color; - // } - // h2 { - // font-size: $size-2; - // color: $title-color; - // } -//} - h2 { a.is-link { img { @@ -56,3 +65,7 @@ h2 { padding-right: $column-gap * 3; } } + +strong { + font-weight: 600; +} \ No newline at end of file diff --git a/assets/scss/elements/table.scss b/assets/scss/elements/table.scss new file mode 100644 index 000000000..49ebfd4f6 --- /dev/null +++ b/assets/scss/elements/table.scss @@ -0,0 +1,34 @@ +.box-schema { + table { + border: 1px solid #DEE5EF; + box-shadow: 0px 0px 7px #cacdd2; + margin: 13px 0 0; + table-layout: fixed; + font-size: 0.85em; + + th { + padding: 6px 9px; + font-weight: 600; + background-color: #F2F3F8; + border-width: 1px !important; + overflow: hidden; + text-overflow: ellipsis; + } + + td { + border-top: 1px solid #DEE5EF; + vertical-align: top; + background-clip: padding-box; + background-color: #FFF; + position: relative; + padding: 6px 9px; + + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + max-width: 180px; + min-width: 80px; + width: 100%; + } + } +} \ No newline at end of file diff --git a/assets/scss/main.scss b/assets/scss/main.scss index e7ec5a300..0fd727641 100644 --- a/assets/scss/main.scss +++ b/assets/scss/main.scss @@ -42,6 +42,7 @@ @import "./elements/content"; @import "./elements/van11y"; @import "./elements/icons"; +@import "./elements/table"; @import "./components/navbar"; @import "./components/sidebar"; @@ -49,6 +50,7 @@ @import "./components/tabs"; @import "./components/card"; @import "./components/toc"; +@import "./components/hubpost"; @import "./pages/pages"; diff --git a/config.toml b/config.toml index b495707b5..b60b9783e 100644 --- a/config.toml +++ b/config.toml @@ -1,4 +1,4 @@ -baseURL = "https://codelibrary.opendatasoft.com" +baseURL = "https://codelibrary.huwize.com" languageCode = "en-us" title = "Codelibrary" @@ -29,3 +29,7 @@ params = ["section", "tags"] [[module.mounts]] source = "node_modules/bulma" target = "assets/scss/bulma" + +# Disable Hugo Markdown code highlight to avoid conflicts with Prism.js (and therefore let Prism.js do the job) +[markup.highlight] + noClasses = false \ No newline at end of file diff --git a/content/apps/_index.md b/content/apps/_index.md new file mode 100644 index 000000000..a6cd63811 --- /dev/null +++ b/content/apps/_index.md @@ -0,0 +1,5 @@ +--- +description: "Learn and quickly implement new use cases and applications to build even further value with your own ODS platform!" +title: "Apps" +height: 400 +--- diff --git a/content/apps/canteen/index.md b/content/apps/canteen/index.md new file mode 100644 index 000000000..85dd53d70 --- /dev/null +++ b/content/apps/canteen/index.md @@ -0,0 +1,42 @@ +--- +title: "School Canteen Menu Displays" +description: "Save school officials time: give them a printable menu model containing up-to-date information" +tags: [] +hubspotFormId: 54303c2e-0e50-4acf-ad7e-361fb6498df0 +hubspotPortalId: 2041226 +hubspotCampaignId: 7011p000000ybQYAAY +--- + +**Save school officials time: give them a printable menu model containing up-to-date information** + +## Description + +**The context** + +French schools display their canteen menus each week either so that it can be read by students and their parents. In the majority of cases, the municipality sets the composition of the meals then sends the information to school establishments who then have to reprocess the information into a spreadsheet or a word processor in order to then print and display it. + +**The service** + +To help agents avoid repeating this task, Huwise has created a model menu page that automatically generates the information from a dataset “school canteen menus”. + +**The ODS Advantage: the platform’s filters.** They enable you to choose the elements to show on the menu. Data that is only useful to territorial agents do not need to be displayed on documents destined to the public. + +**The Use Case** + +Rennes Metropolis offers its schools a ready-to-print menu page for which the text is generated from a dataset updated by the General Canteen Service. Thanks to the platform’s filters, allergens and organic ingredients are highlighted with specific colors. The dataset includes the menus for the ongoing, past, and following weeks, allowing schools to anticipate the preparation of the menus displayed. + +![Canteen menu](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/d28fa042592154aff047dc37d93d6aa7) + +![Canteen menu dataset](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/80ba947ae6cbc6ace40bf6e032be2464) + +## Requirements + +- A Huwise platform + +## Get the App + +Get the code on [Github](https://github.com/opendatasoft/ods-cookbook/tree/master/dashboard/canteen-menu) + +See it live [here](https://discovery.huwise.com/pages/menu-cantine/) + +Contact us to learn how we can accompany you in implementing this connection with the Waze API. \ No newline at end of file diff --git a/content/apps/covid-us-counties/index.md b/content/apps/covid-us-counties/index.md new file mode 100644 index 000000000..19c3c9543 --- /dev/null +++ b/content/apps/covid-us-counties/index.md @@ -0,0 +1,37 @@ +--- +title: "COVID-19 for US Counties" +description: "Create a live COVID-19 for your county, city etc. with local data." +tags: [] +hubspotFormId: 54303c2e-0e50-4acf-ad7e-361fb6498df0 +hubspotPortalId: 2041226 +hubspotCampaignId: 7011p000000ybQYAAY +--- + +**Create a live COVID-19 for your county, city etc. with local data.** + +## Description + +**The context** + +You have a regularly updated source of data about COVID-19 for your region (e.g. County or City) that that reflects information not available nationwide. You want to keep the population updated on the number of cases, the number of occupied hospital beds etc. in their surroundings. You want to make the data available for nation-wide aggregation. + +**The service** + +This page aggregates a number of indicators, with key figures, maps, tables etc. that allows to share detailed data with a simple visualization. All the aggregated data by day, by zipcode, by gender etc. are pre-configured. + +![Main figures and category graphs](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/d02448c54530bc3cfb632ce9e1378e72) + +![Maps and filtered graphs](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/81ebf78adfa945504d3b1cf8a0d89d14) + +## Requirements + +- A Huwise platform +- A dataset with records on COVID for every date and possibly split by gender, age etc. + + + +## Get the App + +Get the code on [Github](https://github.com/opendatasoft/ods-cookbook/tree/master/dashboard/covid-us) + +Contact us to learn how we can accompany you in implementing this connection with the Waze API. \ No newline at end of file diff --git a/content/apps/election/index.md b/content/apps/election/index.md new file mode 100644 index 000000000..d6975204d --- /dev/null +++ b/content/apps/election/index.md @@ -0,0 +1,42 @@ +--- +title: "Election Results Visualization" +description: "Combine several datasets regarding election results and give your citizens a 360° representation of the share of votes across your territory." +tags: [] +hubspotFormId: 54303c2e-0e50-4acf-ad7e-361fb6498df0 +hubspotPortalId: 2041226 +hubspotCampaignId: 7011p000000ybQYAAY +--- + +**Combine several datasets regarding election results and give your citizens a 360° representation of the share of votes across your territory.** + +## Description + +**The context** + +Elections are always a highlight for you and your constituents. To make your citizens want to follow the details of the live votes on your portal and facilitate the understanding of the results, you will need to offer them legible and engaging content. + +**The service** + +With Huwise, it is possible to compare different fields of the same dataset or several datasets together. The visual representation of these combined and filtered data allows you to offer your community a comparative view of the distribution of votes by district, municipality or constituency. + +**The Use Case** + +Like the metropolis of Rennes, build an electoral map of your territory so that your citizens can view this information by polling station. They can understand how voters vote in their neighborhood and observe disparities with other areas of the municipality. + +Like the Hauts-de-Seine, guide your citizens in reading the voting results. The regional department has built an infographic containing data on the legislative and presidential elections since 1993. Filter buttons allow the user to choose the election that interests them, then to display the results (elected candidates, non-elected candidates, participation rate, number of invalid ballots, etc.) per constituency or municipality. + +![Rennes metropolis elections](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/ba48d5e36dec041c4105c621ac962175) + +![Hauts de seine elections visualization](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/fb73e1beedc13db100788ccac3153e21) + +## Requirements + +- A Huwise platform + +## Get the App + +Get the code on [Github](https://github.com/opendatasoft/ods-cookbook/tree/master/dashboard/elections-v2) + +See it live [here](https://discovery.huwise.com/pages/apps-elections-v2/) + +Contact us to learn how we can accompany you in implementing this connection with the Waze API. \ No newline at end of file diff --git a/content/apps/google-form/index.md b/content/apps/google-form/index.md new file mode 100644 index 000000000..ffbc75fb2 --- /dev/null +++ b/content/apps/google-form/index.md @@ -0,0 +1,39 @@ +--- +title: "Google Form Survey Results Visualization" +description: "Automate the result display from your collaborative surveys by connecting Google Form to your Huwise portal." +tags: [] +hubspotFormId: 54303c2e-0e50-4acf-ad7e-361fb6498df0 +hubspotPortalId: 2041226 +hubspotCampaignId: 7011p000000ybQYAAY +--- + +**Automate the result display from your collaborative surveys by connecting Google Form to your Huwise portal.** + +## Description + +**The context** + +You are preparing a survey and you need to visualize the results in a legible and structured way, as well as enrich them with other data. Google Form allows easy collection of these results, but not their advanced visualization or comparison with other data. Integrating Google Form with the Huwise platform can help you take advantage of both tools. + +**The service** + +When you create a survey with Google Form, the answers are collected in a spreadsheet that updates as people respond. This spreadsheet can be shared via a URL of its own. All you need to do is set this URL as the source for publishing a new dataset. This will be updated in real time as soon as a new person responds to the survey. You will then be able to take advantage of the data visualization and comparison features offered by the platform to display the results of your survey in the most comprehensive and understandable way possible. + +![A Google form](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/e887393b95f14f3e65464d61bbef3b63) + +![The resulting dataset](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/c3eec695cbbd9d9c6ce55e5275992178) + +![A visualization based on the form data](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/ab2337375f8be8d087cda46524a930d7) + +## Requirements + +- A Google Account +- A Huwise platform + +## Get the App + +Get the code on [Github](https://github.com/opendatasoft/ods-cookbook/tree/master/dashboard/survey-spreadsheet-scenario) + +See it live [here](https://discovery.huwise.com/explore/dataset/travel-experience-survey/information/) + +Contact us to learn how we can accompany you in implementing this connection with the Waze API. \ No newline at end of file diff --git a/content/apps/iot/index.md b/content/apps/iot/index.md new file mode 100644 index 000000000..91421441d --- /dev/null +++ b/content/apps/iot/index.md @@ -0,0 +1,42 @@ +--- +title: "Make your IoT data speak" +description: "Build dynamic and easy to read visualization on your sensors data and connected equipments" +tags: [] +hubspotFormId: 54303c2e-0e50-4acf-ad7e-361fb6498df0 +hubspotPortalId: 2041226 +hubspotCampaignId: 7011p000000ybQYAAY +--- + +**Build dynamic and easy to read visualization on your sensors data and connected equipments** + +## Description + +**The context** + +Smart sorting bins and energy meters, traffic surveillance cameras, fleets of geolocated vehicles … the connected equipment is multiplying within the territories, producing a considerable amount of data in real time. Gross, voluminous and complex, this IoT data often remains indecipherable for the human eye. + +**The service** + +Huwise provides you with a visualization model fully designed to represent, understand and analyze all your IoT data, regardless of their source and format. This app allows you to: + +- map all of your sensors to monitor their operating status and supervise their activity +- simply and visually restore the raw data collected by your sensors, offering several levels of detail: location, operating status, description of measurements, analytical curves, etc. +- draw up a history of the data produced by your connected objects, navigate easily through this history and analyze the evolution of values over time + +**The use case** + +In Paris, Trilib stations installed in several areas of the city generate data on waste. The app proposed by Huwise allows to locate these stations on a map. By clicking on a geolocated point, a lateral banner opens to the right of the map, allowing to visualize the filling rates of the buckets, to check if they are active or not, and to browse the history of the data they have produced so far. + +![Trilib sorting stations in Paris](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/27b66c50b1674cad4070a1aa96d149ad) + +![Current filling rate and historical analysis](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/d4825a6b0055ac3ee62b6cc947234976) + +## Requirements + +- A Huwise platform + +## Get the App + +Get the code on [Github](https://github.com/opendatasoft/odsapps-iot) + +Contact us to learn how we can accompany you in implementing this connection with the Waze API. \ No newline at end of file diff --git a/content/apps/kpi-dashboard/index.md b/content/apps/kpi-dashboard/index.md new file mode 100644 index 000000000..04cdd6536 --- /dev/null +++ b/content/apps/kpi-dashboard/index.md @@ -0,0 +1,51 @@ +--- +title: "KPI Dashboard" +description: "Create personalized dashboards to measure the performance of your actions and highlight your concrete achievements" +tags: [] +hubspotFormId: 54303c2e-0e50-4acf-ad7e-361fb6498df0 +hubspotPortalId: 2041226 +hubspotCampaignId: 7011p000000ybQYAAY +--- + +**Create personalized dashboards to measure the performance of your actions and highlight your concrete achievements** + +## Description + +**The context** + +Whether you are a community or a company, your goal is to provide an ever higher quality of service to your citizens or customers. For that, you need to evaluate the accomplishment of the actions carried out by your organization. These performance indicators reflect your strategic plan objectives, or your municipality’s political program. + +**The service** + +Huwise allows you to build a dashboard of [performance indicators](https://www.huwise.com/en/glossary/kpi-key-performance-indicator/) related to datasets published on your portal. The use of such a tool offers you: + +- an understanding of essential metrics to track your achievements, all in one place. +- the guarantee that your indicators will always be up to date because synchronized with the datasets of your portal. +- the possibility of creating, for each indicator, pages aggregating editorial contents and data visualizations in order to contextualize, explain and enhance the concrete actions already implemented or being completed. + +**The + ODS: customization from A to Z.** Organisation using indicators such as color, icons, progress bars, integration of visuals … your dashboard is fully customizable. It can then perfectly integrate into the range of digital and communication tools used by your organization to highlight your actions, both internally and externally. + +**The use case** + +The city of Paris has built a dashboard of performance indicators using its website’s visual identity. Open to the public, the dashboard is designed around three axes, each represented by a color to facilitate sorting and readability: living together better (pink), the city that benefits everyone (blue) and the construction of tomorrow’s world (green). The municipality has chosen to represent a percentage rate of completion of its service’s actions, accompanied with a progress bar. Each action is contextualized by a page mixing texts, and data visualizations. This page also gives access to the data set’s source used to build the performance indicators. +[https://indicateurs-parisdata.huwise.com](https://indicateurs-parisdata.huwise.com) + +![Portal's homepage](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/a0f632bc730e4976e6221d4f4396f159) + +![Indicator detailed page](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/4613ea2e82c1b62ea0d736cce7fbeee1) + +![Paris customer case : A city government dashboard for Parisians](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/45d4e282650deee8f338433d9743995e) + +## Requirements + +- A Huwise platform +- Preparatory work done on the nature of the indicators to be put forward + + +## Get the App + +Get the code on [Github](https://github.com/opendatasoft/odsapps-perfkpi) + +See it live [here](https://perfkpi-odsapps.huwise.com/) + +Contact us to learn how we can accompany you in implementing this connection with the Waze API. \ No newline at end of file diff --git a/content/apps/sanitary-inspection/index.md b/content/apps/sanitary-inspection/index.md new file mode 100644 index 000000000..bee061d2f --- /dev/null +++ b/content/apps/sanitary-inspection/index.md @@ -0,0 +1,37 @@ +--- +title: "Sanitation Inspection Transparency" +description: "Created by the Ministry of Agriculture, the Alim'Confiance app facilitates the sharing of hygiene check results carried out in food establishments." +tags: [] +hubspotFormId: 54303c2e-0e50-4acf-ad7e-361fb6498df0 +hubspotPortalId: 2041226 +hubspotCampaignId: 7011p000000ybQYAAY +--- + +**Created by the Ministry of Agriculture, the Alim'Confiance app facilitates the sharing of hygiene check results carried out in food establishments.** + +## Description + +**The Use Case** + +The General Directorate of Food (DGAL) carries out thousands of health inspections each year in restaurants, bakeries, chocolate makers, supermarkets and other numerous food shops in France. To increase transparency around inspection data and thus enable the population to make an informed choice of where to go to eat, the DGAL has created the Alim'Confiance app. + +**The service** + +Alim'Confiance is a mobile and desktop web app, connected to the Ministry of Agriculture’s data platform, operated by Huwise. It is from there that the app retrieves daily results of new inspections. The app offers a cartographic visualization of all the inspected establishments and makes it possible to filter them by types (glacier, cheesemonger, collective catering, etc.) and by their level of hygiene (from "very satisfactory" to "needs urgent changes"). As the results need to be as legible and explicit as possible, a gradual system of smileys has been chosen. + +**The ODS Advantage: a poster to print by the restaurant’s owner.** Each inspected establishment is indicated by a pin on the inspection map. By clicking on the marker, a tooltip appears and gives access to a small card that the restaurant owner can print, in the manner of "homemade" banners used by some restaurants on their menu. The information contained in this printable form is generated automatically and informs the consumer about the level of hygiene, the date and the period of validity of its inspection. + + +![Alim'Confiance map search](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/548833349b09ffa5d9ac6acca7cbebe0) + +![Inspection result card](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/656aac67fa67f34746ca53b70996fb39) + +## Requirements + +- A Huwise platform + +## The App + +See it live on [alim-confiance.gouv.fr](http://alim-confiance.gouv.fr/) + +Contact us to learn how we can accompany you in implementing this connection with the Waze API. \ No newline at end of file diff --git a/content/apps/waze/index.md b/content/apps/waze/index.md new file mode 100644 index 000000000..b4fc75706 --- /dev/null +++ b/content/apps/waze/index.md @@ -0,0 +1,46 @@ +--- +title: "Traffic Diagnostic with Waze" +description: "Enrich your own data with traffic data and observe in real-time the state of traffic across your territory" +tags: [] +hubspotFormId: 54303c2e-0e50-4acf-ad7e-361fb6498df0 +hubspotPortalId: 2041226 +hubspotCampaignId: 7011p000000ybQYAAY +--- + +**Enrich your own data with traffic data and observe in real-time the state of traffic across your territory** + +## Description + +**The context** + +Waze’s Connected Citizens Program promotes pooling resources: Waze provides its partners with real-time data on incidents and trouble zones slowing down traffic as signaled by drivers, while its partners give Waze data in real time on the closures of certain roads, ongoing road work, and major accidents. + +**The service** + +To facilitate the exchange of information between Waze and partner municipalities within the Connected Citizens Program, Huwise has developed a connecter for the Waze API, capable of extracting data from the traffic app to bring them to the platform. Crossing them with traffic data produced by the municipality allows users to establish a near-comprehensive diagnostic on the traffic’s state. + +**The ODS Advantage:** historical data. Unless you want to see Waze’s data disappear from one day to another from your platform, it is possible to collect a complete history. You can thus compare the evolution of traffic across, for instance, different days, a bank holiday and a work day, the same day of different weeks, etc. + +**The Use Case** + +The European Metropolis of Lille (MEL) controls its traffic thanks to traffic sensors installed across different zones of the city. Via the Waze connector built by Huwise, the MEL collects traffic data on its platform which is then compared to the data produced by its sensors. This complete and historicized database allows it to: + +- More quickly identify problems that may arise in specific streets, so as to then send out emergency intervention services when needed. +- Anticipate future incidents and traffic blockages to implement preventative solutions. + +![Real time statistics](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/410a5b74392503b60d0dbefad0f0c3b6) + +![Historical data](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/0df45acabd09f5d88fb7e7c1283d7dda) + +![Trends and side-by-side comparison](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/d3935cf2ce6578deca41d6aa6da64893) + +## Requirements + +- A Huwise platform +- Be affiliated with the Waze Connected Citizens Program + +## Get the App + +The entire application can be found on [Github](https://github.com/opendatasoft/odsapps-waze) + +Contact us to learn how we can accompany you in implementing this connection with the Waze API. \ No newline at end of file diff --git a/content/apps/zapier-data/index.md b/content/apps/zapier-data/index.md new file mode 100644 index 000000000..9a9a06e52 --- /dev/null +++ b/content/apps/zapier-data/index.md @@ -0,0 +1,43 @@ +--- +title: "Alerts on the State of your Data With Zapier" +description: "Create alerts on datasets and be notified in real time when an update or a new element is produced" +tags: [] +hubspotFormId: 54303c2e-0e50-4acf-ad7e-361fb6498df0 +hubspotPortalId: 2041226 +hubspotCampaignId: 7011p000000ybQYAAY +--- + +**Create alerts on datasets and be notified in real time when an update or a new element is produced** + +## Description + +**The context** + +You are a reuser of a number of datasets or several data portals, whether your own or those of other organizations. You need to be informed when new data are published or modified, when a problem arises on any number of them, or when real-time data are not updated. + +**The service** + +To push alerts to data consumers, the Huwise platform integrated the tool Zapier, directly connected to our API. Zapier allows you to program notifications linked to the life cycle of the data you follow. You can choose to receive these alerts via different media: email, text message, Slack, etc. + +**The Use Case** + +Citilog, a world leader in road traffic monitoring and surveillance, manages the data collected from its cameras through the Huwise platform. To help with their regular operations and improve their maintenance, the company has set up Zapier alerts in the event of an anomaly, and when a camera is being repaired. + +![Zapier demo home page](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/adfbb294e0b7f2daae068e854452c276) + +![Zapier "control-center"](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/14cc63eb89f6806e4c6d2a5b1fbbfd91) + +![Smart Camera monitoring system in Atlanta](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/cf9a60e6d173952ba325397bf14bed8a) + +## Requirements + +- A Zapier account +- Access to an Huwise dataset catalog, or to the API of an Huwise dataset catalog + +## Get the App + +Get the code on [Github](https://github.com/opendatasoft/ods-cookbook/tree/master/zapier) + +See it live [here](https://zapier-odsapps.huwise.com/pages/dashboard/) + +Contact us to learn how we can accompany you in implementing this connection with the Waze API. \ No newline at end of file diff --git a/content/apps/zapier-notify/index.md b/content/apps/zapier-notify/index.md new file mode 100644 index 000000000..8424e3a62 --- /dev/null +++ b/content/apps/zapier-notify/index.md @@ -0,0 +1,43 @@ +--- +title: "Notify your users on your data updates" +description: "Send alerts to your users when you perform operation on your data or when critic threshold are reached" +tags: [] +hubspotFormId: 54303c2e-0e50-4acf-ad7e-361fb6498df0 +hubspotPortalId: 2041226 +hubspotCampaignId: 7011p000000ybQYAAY +--- + +**Send alerts to your users when you perform operation on your data or when critic threshold are reached** + +## Description + +**The context** + +You are a reuser of a number of datasets or several data portals, whether your own or those of other organizations. You need to be informed when new data are published or modified, when a problem arises on any number of them, or when real-time data are not updated. + +**The service** + +To push alerts to data consumers, the Huwise platform integrated the tool Zapier, directly connected to our API. Zapier allows you to program notifications linked to the life cycle of the data you follow. You can choose to receive these alerts via different media: email, text message, Slack, etc. + +**The Use Case** + +Citilog, a world leader in road traffic monitoring and surveillance, manages the data collected from its cameras through the Huwise platform. To help with their regular operations and improve their maintenance, the company has set up Zapier alerts in the event of an anomaly, and when a camera is being repaired. + +![Zapier demo home page](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/adfbb294e0b7f2daae068e854452c276) + +![Zapier "control-center"](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/14cc63eb89f6806e4c6d2a5b1fbbfd91) + +![Weather alerts: notification application](https://odsplus.huwise.com/api/v2/catalog/datasets/ods-plus-content-en/files/6e33c235e62400eb35508a91c66e8642) + +## Requirements + +- A Zapier account +- Access to an Huwise dataset catalog, or to the API of an Huwise dataset catalog + +## Get the App + +Get the code on [Github](https://github.com/opendatasoft/ods-cookbook/tree/master/zapier) + +See it live [here](https://zapier-odsapps.huwise.com/pages/dashboard/) + +Contact us to learn how we can accompany you in implementing this connection with the Waze API. \ No newline at end of file diff --git a/content/components/access-card/1/css.inc b/content/components/access-card/1/css.inc new file mode 100644 index 000000000..3780e3160 --- /dev/null +++ b/content/components/access-card/1/css.inc @@ -0,0 +1,88 @@ +:root { + --secondary-color: #142e7b; +} + +.access-card-bg { + background-repeat: no-repeat; + background-size: cover; + border-radius: 6px; + box-shadow: 0px 6px 13px rgba(0, 0, 0, 0.13); + transition: all 0.3s; + color: var(--text); + display: flex; + height: 100%; + justify-content: center; + margin-bottom: 20px; +} + +.access-card-bg:hover { + box-shadow: 0px 8px 15px rgba(0, 0, 0, 0.5); + text-decoration: none; +} + +.access-card { + border-radius: 10px; + background-color: #fff; + margin: 200px 26px 26px; + padding: 26px; + width: 100%; + + display: flex; + flex-direction: column; + justify-content: space-between; +} + +.access-card-pretitle { + text-transform: uppercase; + color: var(--secondary-color); + opacity: 0.7; + font-weight: 400; + margin: 0px; + font-size: 12px; +} + +.access-card-title { + font-weight: 400; + margin: 10px 0px; + font-size: 22px; +} + +.access-card-subtitle { + font-size: 16px; + font-weight: 400; + margin: 0px 0px 10px 0px; +} + +.access-card-description { + background-color: var(--boxes-background); + padding: 10px; +} + +.access-card-description h4 { + font-weight: 700; + margin: 5px 0px 0px 0px; +} + +.access-card-description p { + margin: 5px 0px; +} + +.access-card-button { + color: var(--secondary-color); + font-size: 16px; + font-weight: 700; + display: flex; + justify-content: right; + align-items: center; + width: 100%; + padding: 26px 0px 0px 26px; +} + +.access-card-button i { + padding-left: 5px; + transition: all 0.3s; +} + +.access-card:hover .access-card-button i { + transform: translateX(5px); +} diff --git a/content/components/access-card/1/html.inc b/content/components/access-card/1/html.inc new file mode 100644 index 000000000..f12737aed --- /dev/null +++ b/content/components/access-card/1/html.inc @@ -0,0 +1,26 @@ + \ No newline at end of file diff --git a/content/components/access-card/1/index.md b/content/components/access-card/1/index.md new file mode 100644 index 000000000..1743c6cb7 --- /dev/null +++ b/content/components/access-card/1/index.md @@ -0,0 +1,5 @@ +--- +title: "With description and full height background image" +date: 2022-06-08 +height: 720 +--- diff --git a/content/components/access-card/2/css.inc b/content/components/access-card/2/css.inc new file mode 100644 index 000000000..505ef0a8e --- /dev/null +++ b/content/components/access-card/2/css.inc @@ -0,0 +1,84 @@ +:root { + --secondary-color: #142e7b; +} + +.access-card { + border-radius: 10px; + background-color: var(--boxes-background); + box-shadow: 0px 6px 13px rgba(0, 0, 0, 0.13); + transition: all 0.3s; + position: relative; + height: 100%; + color: var(--text); + display: block; + margin-bottom: 20px; + + display: flex; + flex-direction: column; + justify-content: space-between; +} + +.access-card:hover { + box-shadow: 0px 6px 13px rgba(0, 0, 0, 0.5); + text-decoration: none; +} + +.access-card-top { + padding: 26px; +} + +.access-card-pretitle { + text-transform: uppercase; + color: var(--secondary-color); + opacity: 0.7; + font-weight: 400; + margin: 0px; + font-size: 12px; +} + +.access-card-title { + font-weight: 400; + margin: 10px 0px; + font-size: 22px; +} + +.access-card-subtitle { + font-size: 16px; + font-weight: 400; + margin: 0px; +} + +.access-card-img { + background-repeat: no-repeat; + background-size: cover; + background-position: center; + height: 250px; +} + +.access-card-description { + padding: 26px; +} + +.access-card-description p { + margin: 5px 0px; +} + +.access-card-button { + color: var(--secondary-color); + font-size: 14px; + font-weight: 700; + display: flex; + justify-content: left; + align-items: center; + width: 100%; + padding: 0px 26px 26px 26px; +} + +.access-card-button i { + padding-left: 5px; + transition: all 0.3s; +} + +.access-card:hover .access-card-button i { + transform: translateX(5px); +} diff --git a/content/components/access-card/2/html.inc b/content/components/access-card/2/html.inc new file mode 100644 index 000000000..61ec0fae6 --- /dev/null +++ b/content/components/access-card/2/html.inc @@ -0,0 +1,29 @@ + \ No newline at end of file diff --git a/content/components/access-card/2/index.md b/content/components/access-card/2/index.md new file mode 100644 index 000000000..9cb4b3b80 --- /dev/null +++ b/content/components/access-card/2/index.md @@ -0,0 +1,4 @@ +--- +title: "With description and image in the middle" +height: 750 +--- diff --git a/content/components/access-card/3/css.inc b/content/components/access-card/3/css.inc new file mode 100644 index 000000000..307e37e6b --- /dev/null +++ b/content/components/access-card/3/css.inc @@ -0,0 +1,86 @@ +:root { + --secondary-color: #142e7b; +} + +.access-card { + border-radius: 10px; + background-color: #fff; + height: 100%; + background-color: var(--boxes-background); + box-shadow: 0px 6px 13px rgba(0, 0, 0, 0.13); + transition: all 0.3s; + display: block; + color: var(--text); + margin-bottom: 20px; + + display: flex; + flex-direction: column; + justify-content: space-between; +} + +.access-card:hover { + box-shadow: 0px 6px 13px rgba(0, 0, 0, 0.5); + text-decoration: none; +} + +.access-card-img { + background-repeat: no-repeat; + background-size: cover; + background-position: center; + height: 250px; + position: relative; + border-radius: 10px 10px 0 0; +} + +.access-card-content { + padding: 26px; +} + +.access-card-pretitle { + text-transform: uppercase; + color: #535c29; + background-color: #dbe0c1; + border-radius: 3px; + font-weight: 400; + margin: 0px; + font-size: 12px; + position: absolute; + bottom: 15px; + left: 26px; + padding: 5px; +} + +.access-card-title { + font-weight: 400; + margin: 10px 0px; + font-size: 22px; +} + +.access-card-subtitle { + font-size: 16px; + font-weight: 400; + margin: 0px 0px 10px 0px; +} + +.access-card-content p { + margin: 5px 0px; +} + +.access-card-button { + display: flex; + justify-content: center; + margin: 0px 26px 26px; +} + +.access-card-button:hover { + opacity: 0.7; +} + +.access-card-button-content { + background-color: var(--secondary-color); + text-align: center; + color: #fff; + border-radius: 24px; + padding: 10px 20px; + width: fit-content; +} diff --git a/content/components/access-card/3/html.inc b/content/components/access-card/3/html.inc new file mode 100644 index 000000000..31cb61f9f --- /dev/null +++ b/content/components/access-card/3/html.inc @@ -0,0 +1,25 @@ + \ No newline at end of file diff --git a/content/components/access-card/3/index.md b/content/components/access-card/3/index.md new file mode 100644 index 000000000..dee87ecf3 --- /dev/null +++ b/content/components/access-card/3/index.md @@ -0,0 +1,4 @@ +--- +title: With description and image on top +height: 700 +--- diff --git a/content/components/access-card/4/css.inc b/content/components/access-card/4/css.inc new file mode 100644 index 000000000..80381adc8 --- /dev/null +++ b/content/components/access-card/4/css.inc @@ -0,0 +1,69 @@ +:root { + --secondary-color: #142e7b; +} + +.access-card-bg { + background-repeat: no-repeat; + background-size: cover; + border-radius: 6px; + box-shadow: 0px 6px 13px rgba(0, 0, 0, 0.13); + transition: all 0.3s; + color: var(--text); + display: flex; + height: 100%; + justify-content: center; + margin-bottom: 20px; +} + +.access-card-bg:hover { + box-shadow: 0px 8px 15px rgba(0, 0, 0, 0.5); + text-decoration: none; +} + +.access-card { + border-radius: 10px; + background-color: #fff; + margin: 200px 26px 26px; + padding: 26px; + width: 100%; +} + +.access-card-pretitle { + text-transform: uppercase; + color: var(--secondary-color); + opacity: 0.7; + font-weight: 400; + margin: 0px; + font-size: 12px; +} + +.access-card-title { + font-weight: 400; + margin: 10px 0px; + font-size: 22px; +} + +.access-card-subtitle { + font-size: 16px; + font-weight: 400; + margin: 0px 0px 20px 0px; +} + +.access-card-button { + display: flex; + justify-content: center; + margin-top: 20px; +} + +.access-card-button:hover { + opacity: 0.7; +} + +.access-card-button-content { + background-color: var(--secondary-color); + text-align: center; + color: #fff; + border-radius: 24px; + padding: 10px 20px; + width: fit-content; +} diff --git a/content/components/access-card/4/html.inc b/content/components/access-card/4/html.inc new file mode 100644 index 000000000..9ec369adb --- /dev/null +++ b/content/components/access-card/4/html.inc @@ -0,0 +1,23 @@ + \ No newline at end of file diff --git a/content/components/access-card/4/index.md b/content/components/access-card/4/index.md new file mode 100644 index 000000000..0d716e4fd --- /dev/null +++ b/content/components/access-card/4/index.md @@ -0,0 +1,4 @@ +--- +title: "Light version with full height background image" +height: 600 +--- diff --git a/content/components/access-card/5/css.inc b/content/components/access-card/5/css.inc new file mode 100644 index 000000000..0c9a5387d --- /dev/null +++ b/content/components/access-card/5/css.inc @@ -0,0 +1,76 @@ +:root { + --secondary-color: #142e7b; +} + +.access-card { + border-radius: 10px; + background-color: var(--boxes-background); + box-shadow: 0px 6px 13px rgba(0, 0, 0, 0.13); + transition: all 0.3s; + position: relative; + height: 100%; + color: var(--text); + display: block; + margin-bottom: 20px; + + display: flex; + flex-direction: column; + justify-content: space-between; +} + +.access-card:hover { + box-shadow: 0px 6px 13px rgba(0, 0, 0, 0.5); + text-decoration: none; +} + +.access-card-top { + padding: 26px; +} + +.access-card-pretitle { + text-transform: uppercase; + color: var(--secondary-color); + opacity: 0.7; + font-weight: 400; + margin: 0px; + font-size: 12px; +} + +.access-card-title { + font-weight: 400; + margin: 10px 0px; + font-size: 22px; +} + +.access-card-subtitle { + font-size: 16px; + font-weight: 400; + margin: 0px; +} + +.access-card-img { + background-repeat: no-repeat; + background-size: cover; + background-position: center; + height: 250px; +} + +.access-card-button { + color: var(--secondary-color); + font-size: 14px; + font-weight: 700; + display: flex; + justify-content: left; + align-items: center; + width: 100%; + padding: 26px 26px 26px; +} + +.access-card-button i { + padding-left: 5px; + transition: all 0.3s; +} + +.access-card:hover .access-card-button i { + transform: translateX(5px); +} diff --git a/content/components/access-card/5/html.inc b/content/components/access-card/5/html.inc new file mode 100644 index 000000000..8dab72ef4 --- /dev/null +++ b/content/components/access-card/5/html.inc @@ -0,0 +1,23 @@ + \ No newline at end of file diff --git a/content/components/access-card/5/index.md b/content/components/access-card/5/index.md new file mode 100644 index 000000000..b33ebba9a --- /dev/null +++ b/content/components/access-card/5/index.md @@ -0,0 +1,4 @@ +--- +title: "Light version with image in the middle" +height: 600 +--- diff --git a/content/components/access-card/6/css.inc b/content/components/access-card/6/css.inc new file mode 100644 index 000000000..fb0c87191 --- /dev/null +++ b/content/components/access-card/6/css.inc @@ -0,0 +1,84 @@ +:root { + --secondary-color: #142e7b; + --custom-background: #e2e6ee; +} + +.access-card { + border-radius: 10px; + height: 100%; + min-height: 300px; + background-color: var(--custom-background); + box-shadow: 0px 6px 13px rgba(0, 0, 0, 0.13); + color: var(--secondary-color); + transition: all 0.3s; + display: block; + margin-bottom: 20px; + + display: flex; + flex-direction: column; + justify-content: space-between; +} + +.access-card:hover { + box-shadow: 0px 6px 13px rgba(0, 0, 0, 0.5); + text-decoration: none; +} + +.access-card-img { + background-repeat: no-repeat; + background-size: cover; + background-position: center; + height: 250px; + position: relative; + border-radius: 10px 10px 0px 0px; +} + +.access-card-content { + padding: 26px; +} + +.access-card-pretitle { + text-transform: uppercase; + color: var(--secondary-color); + opacity: 0.7; + font-weight: 400; + margin: 0px; + font-size: 12px; +} + +.access-card-title { + font-weight: 400; + margin: 10px 0px; + font-size: 22px; + color: var(--secondary-color); +} + +.access-card-subtitle { + font-size: 16px; + font-weight: 400; + margin: 0px; +} + +.access-card-content p { + margin: 5px 0px; +} + +.access-card-button { + color: var(--secondary-color); + font-size: 14px; + font-weight: 700; + display: flex; + justify-content: left; + align-items: center; + width: 100%; + padding: 0px 26px 26px 26px; +} + +.access-card-button i { + padding-left: 5px; + transition: all 0.3s; +} + +.access-card:hover .access-card-button i { + transform: translateX(5px); +} diff --git a/content/components/access-card/6/html.inc b/content/components/access-card/6/html.inc new file mode 100644 index 000000000..28a268418 --- /dev/null +++ b/content/components/access-card/6/html.inc @@ -0,0 +1,19 @@ + \ No newline at end of file diff --git a/content/components/access-card/6/index.md b/content/components/access-card/6/index.md new file mode 100644 index 000000000..5e9fee5e8 --- /dev/null +++ b/content/components/access-card/6/index.md @@ -0,0 +1,4 @@ +--- +title: "Light version with image on top" +height: 600 +--- diff --git a/content/components/access-card/index.md b/content/components/access-card/index.md new file mode 100644 index 000000000..a0a85431d --- /dev/null +++ b/content/components/access-card/index.md @@ -0,0 +1,16 @@ +--- +title: "Access cards" +description: "Card to highlight a redirection to another page. Different styles are available." +tags: ["navigation", "card", "redirection"] +height: 570 +date: 2022-06-08 +resources: +- src: '*/' + name: folder-:counter +--- + +Card to highlight a redirection to another page. Different styles are available. + +**Tips:** +- You can change the background image in the HTML file +- You can change the arrow icon with another icon from [the Fontawesome Library](https://fontawesome.com/v4.7.0/icons/) diff --git a/content/components/contact-card/1/html.inc b/content/components/contact-card/1/html.inc index 9d460bdd8..ed54a4a81 100644 --- a/content/components/contact-card/1/html.inc +++ b/content/components/contact-card/1/html.inc @@ -3,7 +3,7 @@
+ src="https://userclub.huwise.com/assets/theme_image/contact-card-avatar-woman.svg">
R&D
diff --git a/content/components/contact-card/2/html.inc b/content/components/contact-card/2/html.inc index b26646d00..5c7c5be6f 100644 --- a/content/components/contact-card/2/html.inc +++ b/content/components/contact-card/2/html.inc @@ -7,7 +7,7 @@
+ src="https://userclub.huwise.com/assets/theme_image/contact-card-avatar-man.png">
WEB
@@ -41,7 +41,7 @@
+ src="https://discovery.huwise.com/assets/theme_image/contact-card-avatar-man.png">
diff --git a/content/components/content-card/3/schema.md b/content/components/content-card/3/schema.md new file mode 100644 index 000000000..1104cb246 --- /dev/null +++ b/content/components/content-card/3/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `shanghai-world-university-ranking` [(See it on public domain)](https://public.huwise.com/explore/dataset/shanghai-world-university-ranking/table/) + +**Fields in use:** + +|country|geo_shape| +|---|---| +|United Kingdom|"{""type"": ""MultiPolygon"", ""coordinates"": [[[[-5.6619486149, 54.5546031765], [-6.1978...| +|United States|"{""type"": ""MultiPolygon"", ""coordinates"": [[[[-155.54211, 19.08348], [-155.68...| +|United States|"{""type"": ""MultiPolygon"", ""coordinates"": [[[[-155.54211, 19.08348], [-155.68...| +|United States|"{""type"": ""MultiPolygon"", ""coordinates"": [[[[-155.54211, 19.08348], [-155.68...| + diff --git a/content/components/custom-theme-boxes/1/schema.md b/content/components/custom-theme-boxes/1/schema.md new file mode 100644 index 000000000..4d0776731 --- /dev/null +++ b/content/components/custom-theme-boxes/1/schema.md @@ -0,0 +1,11 @@ +**Catalog in use from:** `userclub` [(See the catalog here)](https://userclub.huwise.com/explore/) + +**Fields in use:** + +|theme| +|---| +|Academy| +|Checklist| +|Code Library| +|Usages| + diff --git a/content/components/dropdown-module/2/css.inc b/content/components/dropdown-module/2/css.inc index 7100b2996..aed18fd44 100644 --- a/content/components/dropdown-module/2/css.inc +++ b/content/components/dropdown-module/2/css.inc @@ -34,10 +34,10 @@ .cl-dropdown-menu { background-color: #FFFFFF; border: 1px solid #dee5ef; - max-width: 350px; - overflow-x: auto; border-radius: 4px; box-shadow: 0px 2px 4px rgba(0,0,0,0.15); + max-width: 350px; + overflow-x: auto; visibility: hidden; opacity: 0; position: absolute; @@ -87,7 +87,7 @@ display: block; margin-bottom: 0; cursor: pointer; - max-width: 100%; + max-width: 100%; text-overflow: ellipsis; overflow: hidden; padding-left: 2px; @@ -100,73 +100,5 @@ left: 0; right: 0; cursor: auto; - z-index: 10; -} -/* Class used to center the content within the card */ -.centered-card { - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; -} -/* Content Card - ========================================================================== */ -.content-card { - background-color: var(--boxes-background); - padding: 26px; - border-radius: 4px; - margin-bottom: 20px; - height: 100%; -} -.content-card-title { - color: var(--titles); - font-size: 1.2rem; - line-height: 1.5; - font-weight: normal; - margin-top: 0; - margin-bottom: 13px; - max-width: 100%; -} -.content-card-description { - color: var(--text); - font-size: 1rem; - line-height: 1.5; - font-weight: normal; - margin-top: 0; - margin-bottom: 26px; - max-width: 100%; -} -.content-card-icon { - color: var(--highlight); - font-size: 2rem; - margin-bottom: 13px; - max-width: 100%; -} -.content-card-link { - color: var(--links); - font-weight: bold; - transition: all .2s; - opacity: 1; - max-width: 100%; -} -.content-card-link:hover { - opacity: .7; - text-decoration: none; -} -.content-card-button { - color: var(--highlight); - border: 1px solid var(--highlight); - background: transparent; - display: inline-block; - text-align: center; - font-size: .867rem; - border-radius: 4px; - padding: .5rem 1.15rem; - text-decoration: none; - transition: all .2s; -} -.content-card-button:hover { - background-color: var(--highlight); - color: #FFFFFF; - text-decoration: none; + z-index: 10; } diff --git a/content/components/dropdown-module/2/html.inc b/content/components/dropdown-module/2/html.inc index 7dddcb2b0..d12d36eb9 100644 --- a/content/components/dropdown-module/2/html.inc +++ b/content/components/dropdown-module/2/html.inc @@ -1,60 +1,71 @@ -
-
-
- - - - - - - - -
-
-

- French departments -

-

- Cardano could be many technical analysis since Nexo data mining a fundamental analysis. -

-

- Ravencoin generates a amazing fish of lots of market cap, and Waves serves many quick anti-money laundering! Solidity allowed lots of fast peer-to-peer network. -

- -
- -
-
- Where to? -
-
- - See dataset - - - Create map - - - Create graph - +
+ + +
+
+

+ Select a country to view universities +

+ +
+ +
+
+ Country +
+
    +
  • + +
  • +
  • + +
  • +
+ {{universities.parameters['refine.country'] = (universities.parameters['refine.country'] == 'All' ? undefined : universities.parameters['refine.country']); ''}}
+
-
+ +
+
+ +
-
-
+
diff --git a/content/components/dropdown-module/2/index.md b/content/components/dropdown-module/2/index.md index 6954efdf4..a4438fac8 100644 --- a/content/components/dropdown-module/2/index.md +++ b/content/components/dropdown-module/2/index.md @@ -1,4 +1,5 @@ --- -title: "Usage example" -height: 560 +title: "Dropdown as filter" --- + +Use this component to have a more stylized look for your filters, for example instead of using a select. diff --git a/content/components/dropdown-module/2/schema.md b/content/components/dropdown-module/2/schema.md new file mode 100644 index 000000000..1104cb246 --- /dev/null +++ b/content/components/dropdown-module/2/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `shanghai-world-university-ranking` [(See it on public domain)](https://public.huwise.com/explore/dataset/shanghai-world-university-ranking/table/) + +**Fields in use:** + +|country|geo_shape| +|---|---| +|United Kingdom|"{""type"": ""MultiPolygon"", ""coordinates"": [[[[-5.6619486149, 54.5546031765], [-6.1978...| +|United States|"{""type"": ""MultiPolygon"", ""coordinates"": [[[[-155.54211, 19.08348], [-155.68...| +|United States|"{""type"": ""MultiPolygon"", ""coordinates"": [[[[-155.54211, 19.08348], [-155.68...| +|United States|"{""type"": ""MultiPolygon"", ""coordinates"": [[[[-155.54211, 19.08348], [-155.68...| + diff --git a/content/components/dropdown-module/3/css.inc b/content/components/dropdown-module/3/css.inc deleted file mode 100644 index aed18fd44..000000000 --- a/content/components/dropdown-module/3/css.inc +++ /dev/null @@ -1,104 +0,0 @@ -/* Dropdown menu with pill styling - ========================================================================== */ -.cl-dropdown { - display: inline-block; - margin: 13px 0 26px 0; - position: relative; -} -/* Button */ -.cl-dropdown-button { - font-size: 1rem; - color: var(--text); - border: 1px solid #cbd2db; - border-radius: 2rem; - background: #FFFFFF; - padding: .37rem 1rem; - margin-right: 6px; - transition: all .2s; -} -.cl-dropdown-button:hover, -.cl-dropdown-button:focus { - color: var(--links); - border-color: var(--links); -} -.cl-dropdown-button-open { - border-color: var(--links); - box-shadow: 0 0 0 3px rgba(20, 46, 123, .2); -} -.cl-dropdown-button-active { - color: var(--links); - border-color: var(--links); - background-color: rgba(20, 46, 123, 0.1); -} -/* Dropdown styling */ -.cl-dropdown-menu { - background-color: #FFFFFF; - border: 1px solid #dee5ef; - border-radius: 4px; - box-shadow: 0px 2px 4px rgba(0,0,0,0.15); - max-width: 350px; - overflow-x: auto; - visibility: hidden; - opacity: 0; - position: absolute; - top: 0; - z-index: 11; - white-space: nowrap; - transition: visibility 0s, opacity 0.1s ease, top 0.1s ease; -} -.cl-dropdown-visible { - opacity: 1; - visibility: visible; - top: 38px; -} -/* Dropdown items */ -.cl-dropdown-menu { - padding: 26px 0; -} -.cl-dropdown-title { - font-size: 1.3rem; - color: var(--text); - font-weight: normal; - margin-top: 0; - margin-bottom: 0; - padding: 0 26px; -} -.cl-dropdown-items { - list-style: none; - padding: 0 26px; - margin: 0; - display: flex; - flex-direction: column; - max-height: 180px; - overflow-y: auto; -} -.cl-dropdown-item { - font-size: 1rem; - display: block; - margin-top: 13px; -} -.cl-dropdown-item:hover { - text-decoration: none; -} -.cl-dropdown-input { - margin-right: 4px; -} -.cl-dropdown-label { - display: block; - margin-bottom: 0; - cursor: pointer; - max-width: 100%; - text-overflow: ellipsis; - overflow: hidden; - padding-left: 2px; -} -/* Backdrop */ -.cl-dropdown-backdrop { - position: fixed; - top: 0; - bottom: 0; - left: 0; - right: 0; - cursor: auto; - z-index: 10; -} diff --git a/content/components/dropdown-module/3/html.inc b/content/components/dropdown-module/3/html.inc deleted file mode 100644 index d12d36eb9..000000000 --- a/content/components/dropdown-module/3/html.inc +++ /dev/null @@ -1,71 +0,0 @@ -
- - -
-
-

- Select a country to view universities -

- -
- -
-
- Country -
-
    -
  • - -
  • -
  • - -
  • -
- {{universities.parameters['refine.country'] = (universities.parameters['refine.country'] == 'All' ? undefined : universities.parameters['refine.country']); ''}} -
-
-
- -
-
- - -
-
-
-
diff --git a/content/components/dropdown-module/3/index.md b/content/components/dropdown-module/3/index.md deleted file mode 100644 index a4438fac8..000000000 --- a/content/components/dropdown-module/3/index.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: "Dropdown as filter" ---- - -Use this component to have a more stylized look for your filters, for example instead of using a select. diff --git a/content/components/filters/2/html.inc b/content/components/filters/2/html.inc index c6e599450..18c81e897 100644 --- a/content/components/filters/2/html.inc +++ b/content/components/filters/2/html.inc @@ -1,4 +1,4 @@ -
diff --git a/content/components/filters/2/schema.md b/content/components/filters/2/schema.md new file mode 100644 index 000000000..3573bb75a --- /dev/null +++ b/content/components/filters/2/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `us-hospitals` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/us-hospitals/table/) + +**Fields in use:** + +|state|city|status|type| +|---|---|---|---| +|OH|Batavia|Open|General Acute Care Hospital| +|VA|Salem|Open|General Acute Care Hospital| +|TN|Sparta|Open|General Acute Care Hospital| +|SD|Armour|Open|General Acute Care Hospital| + diff --git a/content/components/icons/1/css.inc b/content/components/icons/1/css.inc new file mode 100644 index 000000000..7f0b24f0e --- /dev/null +++ b/content/components/icons/1/css.inc @@ -0,0 +1,10 @@ +/* +* Remix Icon v2.5.0 +* https://remixicon.com +* https://github.com/Remix-Design/RemixIcon +* +* Copyright RemixIcon.com +* Released under the Apache License Version 2.0 +* +* Date: 2020-05-23 +*/@font-face{font-family:remixicon;src:url(https://static.huwise.com/fonts/remixicon/latest/remixicon.woff2) format("woff2");font-display:swap}[class*=" ri-"],[class^=ri-]{font-family:remixicon!important;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ri-lg{font-size:1.3333em;line-height:.75em;vertical-align:-.0667em}.ri-xl{font-size:1.5em;line-height:.6666em;vertical-align:-.075em}.ri-xxs{font-size:.5em}.ri-xs{font-size:.75em}.ri-sm{font-size:.875em}.ri-1x{font-size:1em}.ri-2x{font-size:2em}.ri-3x{font-size:3em}.ri-4x{font-size:4em}.ri-5x{font-size:5em}.ri-6x{font-size:6em}.ri-7x{font-size:7em}.ri-8x{font-size:8em}.ri-9x{font-size:9em}.ri-10x{font-size:10em}.ri-fw{text-align:center;width:1.25em}.ri-24-hours-fill:before{content:"\ea01"}.ri-24-hours-line:before{content:"\ea02"}.ri-4k-fill:before{content:"\ea03"}.ri-4k-line:before{content:"\ea04"}.ri-a-b:before{content:"\ea05"}.ri-account-box-fill:before{content:"\ea06"}.ri-account-box-line:before{content:"\ea07"}.ri-account-circle-fill:before{content:"\ea08"}.ri-account-circle-line:before{content:"\ea09"}.ri-account-pin-box-fill:before{content:"\ea0a"}.ri-account-pin-box-line:before{content:"\ea0b"}.ri-account-pin-circle-fill:before{content:"\ea0c"}.ri-account-pin-circle-line:before{content:"\ea0d"}.ri-add-box-fill:before{content:"\ea0e"}.ri-add-box-line:before{content:"\ea0f"}.ri-add-circle-fill:before{content:"\ea10"}.ri-add-circle-line:before{content:"\ea11"}.ri-add-fill:before{content:"\ea12"}.ri-add-line:before{content:"\ea13"}.ri-admin-fill:before{content:"\ea14"}.ri-admin-line:before{content:"\ea15"}.ri-advertisement-fill:before{content:"\ea16"}.ri-advertisement-line:before{content:"\ea17"}.ri-airplay-fill:before{content:"\ea18"}.ri-airplay-line:before{content:"\ea19"}.ri-alarm-fill:before{content:"\ea1a"}.ri-alarm-line:before{content:"\ea1b"}.ri-alarm-warning-fill:before{content:"\ea1c"}.ri-alarm-warning-line:before{content:"\ea1d"}.ri-album-fill:before{content:"\ea1e"}.ri-album-line:before{content:"\ea1f"}.ri-alert-fill:before{content:"\ea20"}.ri-alert-line:before{content:"\ea21"}.ri-aliens-fill:before{content:"\ea22"}.ri-aliens-line:before{content:"\ea23"}.ri-align-bottom:before{content:"\ea24"}.ri-align-center:before{content:"\ea25"}.ri-align-justify:before{content:"\ea26"}.ri-align-left:before{content:"\ea27"}.ri-align-right:before{content:"\ea28"}.ri-align-top:before{content:"\ea29"}.ri-align-vertically:before{content:"\ea2a"}.ri-alipay-fill:before{content:"\ea2b"}.ri-alipay-line:before{content:"\ea2c"}.ri-amazon-fill:before{content:"\ea2d"}.ri-amazon-line:before{content:"\ea2e"}.ri-anchor-fill:before{content:"\ea2f"}.ri-anchor-line:before{content:"\ea30"}.ri-ancient-gate-fill:before{content:"\ea31"}.ri-ancient-gate-line:before{content:"\ea32"}.ri-ancient-pavilion-fill:before{content:"\ea33"}.ri-ancient-pavilion-line:before{content:"\ea34"}.ri-android-fill:before{content:"\ea35"}.ri-android-line:before{content:"\ea36"}.ri-angularjs-fill:before{content:"\ea37"}.ri-angularjs-line:before{content:"\ea38"}.ri-anticlockwise-2-fill:before{content:"\ea39"}.ri-anticlockwise-2-line:before{content:"\ea3a"}.ri-anticlockwise-fill:before{content:"\ea3b"}.ri-anticlockwise-line:before{content:"\ea3c"}.ri-app-store-fill:before{content:"\ea3d"}.ri-app-store-line:before{content:"\ea3e"}.ri-apple-fill:before{content:"\ea3f"}.ri-apple-line:before{content:"\ea40"}.ri-apps-2-fill:before{content:"\ea41"}.ri-apps-2-line:before{content:"\ea42"}.ri-apps-fill:before{content:"\ea43"}.ri-apps-line:before{content:"\ea44"}.ri-archive-drawer-fill:before{content:"\ea45"}.ri-archive-drawer-line:before{content:"\ea46"}.ri-archive-fill:before{content:"\ea47"}.ri-archive-line:before{content:"\ea48"}.ri-arrow-down-circle-fill:before{content:"\ea49"}.ri-arrow-down-circle-line:before{content:"\ea4a"}.ri-arrow-down-fill:before{content:"\ea4b"}.ri-arrow-down-line:before{content:"\ea4c"}.ri-arrow-down-s-fill:before{content:"\ea4d"}.ri-arrow-down-s-line:before{content:"\ea4e"}.ri-arrow-drop-down-fill:before{content:"\ea4f"}.ri-arrow-drop-down-line:before{content:"\ea50"}.ri-arrow-drop-left-fill:before{content:"\ea51"}.ri-arrow-drop-left-line:before{content:"\ea52"}.ri-arrow-drop-right-fill:before{content:"\ea53"}.ri-arrow-drop-right-line:before{content:"\ea54"}.ri-arrow-drop-up-fill:before{content:"\ea55"}.ri-arrow-drop-up-line:before{content:"\ea56"}.ri-arrow-go-back-fill:before{content:"\ea57"}.ri-arrow-go-back-line:before{content:"\ea58"}.ri-arrow-go-forward-fill:before{content:"\ea59"}.ri-arrow-go-forward-line:before{content:"\ea5a"}.ri-arrow-left-circle-fill:before{content:"\ea5b"}.ri-arrow-left-circle-line:before{content:"\ea5c"}.ri-arrow-left-down-fill:before{content:"\ea5d"}.ri-arrow-left-down-line:before{content:"\ea5e"}.ri-arrow-left-fill:before{content:"\ea5f"}.ri-arrow-left-line:before{content:"\ea60"}.ri-arrow-left-right-fill:before{content:"\ea61"}.ri-arrow-left-right-line:before{content:"\ea62"}.ri-arrow-left-s-fill:before{content:"\ea63"}.ri-arrow-left-s-line:before{content:"\ea64"}.ri-arrow-left-up-fill:before{content:"\ea65"}.ri-arrow-left-up-line:before{content:"\ea66"}.ri-arrow-right-circle-fill:before{content:"\ea67"}.ri-arrow-right-circle-line:before{content:"\ea68"}.ri-arrow-right-down-fill:before{content:"\ea69"}.ri-arrow-right-down-line:before{content:"\ea6a"}.ri-arrow-right-fill:before{content:"\ea6b"}.ri-arrow-right-line:before{content:"\ea6c"}.ri-arrow-right-s-fill:before{content:"\ea6d"}.ri-arrow-right-s-line:before{content:"\ea6e"}.ri-arrow-right-up-fill:before{content:"\ea6f"}.ri-arrow-right-up-line:before{content:"\ea70"}.ri-arrow-up-circle-fill:before{content:"\ea71"}.ri-arrow-up-circle-line:before{content:"\ea72"}.ri-arrow-up-down-fill:before{content:"\ea73"}.ri-arrow-up-down-line:before{content:"\ea74"}.ri-arrow-up-fill:before{content:"\ea75"}.ri-arrow-up-line:before{content:"\ea76"}.ri-arrow-up-s-fill:before{content:"\ea77"}.ri-arrow-up-s-line:before{content:"\ea78"}.ri-artboard-2-fill:before{content:"\ea79"}.ri-artboard-2-line:before{content:"\ea7a"}.ri-artboard-fill:before{content:"\ea7b"}.ri-artboard-line:before{content:"\ea7c"}.ri-article-fill:before{content:"\ea7d"}.ri-article-line:before{content:"\ea7e"}.ri-aspect-ratio-fill:before{content:"\ea7f"}.ri-aspect-ratio-line:before{content:"\ea80"}.ri-asterisk:before{content:"\ea81"}.ri-at-fill:before{content:"\ea82"}.ri-at-line:before{content:"\ea83"}.ri-attachment-2:before{content:"\ea84"}.ri-attachment-fill:before{content:"\ea85"}.ri-attachment-line:before{content:"\ea86"}.ri-auction-fill:before{content:"\ea87"}.ri-auction-line:before{content:"\ea88"}.ri-award-fill:before{content:"\ea89"}.ri-award-line:before{content:"\ea8a"}.ri-baidu-fill:before{content:"\ea8b"}.ri-baidu-line:before{content:"\ea8c"}.ri-ball-pen-fill:before{content:"\ea8d"}.ri-ball-pen-line:before{content:"\ea8e"}.ri-bank-card-2-fill:before{content:"\ea8f"}.ri-bank-card-2-line:before{content:"\ea90"}.ri-bank-card-fill:before{content:"\ea91"}.ri-bank-card-line:before{content:"\ea92"}.ri-bank-fill:before{content:"\ea93"}.ri-bank-line:before{content:"\ea94"}.ri-bar-chart-2-fill:before{content:"\ea95"}.ri-bar-chart-2-line:before{content:"\ea96"}.ri-bar-chart-box-fill:before{content:"\ea97"}.ri-bar-chart-box-line:before{content:"\ea98"}.ri-bar-chart-fill:before{content:"\ea99"}.ri-bar-chart-grouped-fill:before{content:"\ea9a"}.ri-bar-chart-grouped-line:before{content:"\ea9b"}.ri-bar-chart-horizontal-fill:before{content:"\ea9c"}.ri-bar-chart-horizontal-line:before{content:"\ea9d"}.ri-bar-chart-line:before{content:"\ea9e"}.ri-barcode-box-fill:before{content:"\ea9f"}.ri-barcode-box-line:before{content:"\eaa0"}.ri-barcode-fill:before{content:"\eaa1"}.ri-barcode-line:before{content:"\eaa2"}.ri-barricade-fill:before{content:"\eaa3"}.ri-barricade-line:before{content:"\eaa4"}.ri-base-station-fill:before{content:"\eaa5"}.ri-base-station-line:before{content:"\eaa6"}.ri-basketball-fill:before{content:"\eaa7"}.ri-basketball-line:before{content:"\eaa8"}.ri-battery-2-charge-fill:before{content:"\eaa9"}.ri-battery-2-charge-line:before{content:"\eaaa"}.ri-battery-2-fill:before{content:"\eaab"}.ri-battery-2-line:before{content:"\eaac"}.ri-battery-charge-fill:before{content:"\eaad"}.ri-battery-charge-line:before{content:"\eaae"}.ri-battery-fill:before{content:"\eaaf"}.ri-battery-line:before{content:"\eab0"}.ri-battery-low-fill:before{content:"\eab1"}.ri-battery-low-line:before{content:"\eab2"}.ri-battery-saver-fill:before{content:"\eab3"}.ri-battery-saver-line:before{content:"\eab4"}.ri-battery-share-fill:before{content:"\eab5"}.ri-battery-share-line:before{content:"\eab6"}.ri-bear-smile-fill:before{content:"\eab7"}.ri-bear-smile-line:before{content:"\eab8"}.ri-behance-fill:before{content:"\eab9"}.ri-behance-line:before{content:"\eaba"}.ri-bell-fill:before{content:"\eabb"}.ri-bell-line:before{content:"\eabc"}.ri-bike-fill:before{content:"\eabd"}.ri-bike-line:before{content:"\eabe"}.ri-bilibili-fill:before{content:"\eabf"}.ri-bilibili-line:before{content:"\eac0"}.ri-bill-fill:before{content:"\eac1"}.ri-bill-line:before{content:"\eac2"}.ri-billiards-fill:before{content:"\eac3"}.ri-billiards-line:before{content:"\eac4"}.ri-bit-coin-fill:before{content:"\eac5"}.ri-bit-coin-line:before{content:"\eac6"}.ri-blaze-fill:before{content:"\eac7"}.ri-blaze-line:before{content:"\eac8"}.ri-bluetooth-connect-fill:before{content:"\eac9"}.ri-bluetooth-connect-line:before{content:"\eaca"}.ri-bluetooth-fill:before{content:"\eacb"}.ri-bluetooth-line:before{content:"\eacc"}.ri-blur-off-fill:before{content:"\eacd"}.ri-blur-off-line:before{content:"\eace"}.ri-body-scan-fill:before{content:"\eacf"}.ri-body-scan-line:before{content:"\ead0"}.ri-bold:before{content:"\ead1"}.ri-book-2-fill:before{content:"\ead2"}.ri-book-2-line:before{content:"\ead3"}.ri-book-3-fill:before{content:"\ead4"}.ri-book-3-line:before{content:"\ead5"}.ri-book-fill:before{content:"\ead6"}.ri-book-line:before{content:"\ead7"}.ri-book-mark-fill:before{content:"\ead8"}.ri-book-mark-line:before{content:"\ead9"}.ri-book-open-fill:before{content:"\eada"}.ri-book-open-line:before{content:"\eadb"}.ri-book-read-fill:before{content:"\eadc"}.ri-book-read-line:before{content:"\eadd"}.ri-booklet-fill:before{content:"\eade"}.ri-booklet-line:before{content:"\eadf"}.ri-bookmark-2-fill:before{content:"\eae0"}.ri-bookmark-2-line:before{content:"\eae1"}.ri-bookmark-3-fill:before{content:"\eae2"}.ri-bookmark-3-line:before{content:"\eae3"}.ri-bookmark-fill:before{content:"\eae4"}.ri-bookmark-line:before{content:"\eae5"}.ri-boxing-fill:before{content:"\eae6"}.ri-boxing-line:before{content:"\eae7"}.ri-braces-fill:before{content:"\eae8"}.ri-braces-line:before{content:"\eae9"}.ri-brackets-fill:before{content:"\eaea"}.ri-brackets-line:before{content:"\eaeb"}.ri-briefcase-2-fill:before{content:"\eaec"}.ri-briefcase-2-line:before{content:"\eaed"}.ri-briefcase-3-fill:before{content:"\eaee"}.ri-briefcase-3-line:before{content:"\eaef"}.ri-briefcase-4-fill:before{content:"\eaf0"}.ri-briefcase-4-line:before{content:"\eaf1"}.ri-briefcase-5-fill:before{content:"\eaf2"}.ri-briefcase-5-line:before{content:"\eaf3"}.ri-briefcase-fill:before{content:"\eaf4"}.ri-briefcase-line:before{content:"\eaf5"}.ri-bring-forward:before{content:"\eaf6"}.ri-bring-to-front:before{content:"\eaf7"}.ri-broadcast-fill:before{content:"\eaf8"}.ri-broadcast-line:before{content:"\eaf9"}.ri-brush-2-fill:before{content:"\eafa"}.ri-brush-2-line:before{content:"\eafb"}.ri-brush-3-fill:before{content:"\eafc"}.ri-brush-3-line:before{content:"\eafd"}.ri-brush-4-fill:before{content:"\eafe"}.ri-brush-4-line:before{content:"\eaff"}.ri-brush-fill:before{content:"\eb00"}.ri-brush-line:before{content:"\eb01"}.ri-bubble-chart-fill:before{content:"\eb02"}.ri-bubble-chart-line:before{content:"\eb03"}.ri-bug-2-fill:before{content:"\eb04"}.ri-bug-2-line:before{content:"\eb05"}.ri-bug-fill:before{content:"\eb06"}.ri-bug-line:before{content:"\eb07"}.ri-building-2-fill:before{content:"\eb08"}.ri-building-2-line:before{content:"\eb09"}.ri-building-3-fill:before{content:"\eb0a"}.ri-building-3-line:before{content:"\eb0b"}.ri-building-4-fill:before{content:"\eb0c"}.ri-building-4-line:before{content:"\eb0d"}.ri-building-fill:before{content:"\eb0e"}.ri-building-line:before{content:"\eb0f"}.ri-bus-2-fill:before{content:"\eb10"}.ri-bus-2-line:before{content:"\eb11"}.ri-bus-fill:before{content:"\eb12"}.ri-bus-line:before{content:"\eb13"}.ri-bus-wifi-fill:before{content:"\eb14"}.ri-bus-wifi-line:before{content:"\eb15"}.ri-cactus-fill:before{content:"\eb16"}.ri-cactus-line:before{content:"\eb17"}.ri-cake-2-fill:before{content:"\eb18"}.ri-cake-2-line:before{content:"\eb19"}.ri-cake-3-fill:before{content:"\eb1a"}.ri-cake-3-line:before{content:"\eb1b"}.ri-cake-fill:before{content:"\eb1c"}.ri-cake-line:before{content:"\eb1d"}.ri-calculator-fill:before{content:"\eb1e"}.ri-calculator-line:before{content:"\eb1f"}.ri-calendar-2-fill:before{content:"\eb20"}.ri-calendar-2-line:before{content:"\eb21"}.ri-calendar-check-fill:before{content:"\eb22"}.ri-calendar-check-line:before{content:"\eb23"}.ri-calendar-event-fill:before{content:"\eb24"}.ri-calendar-event-line:before{content:"\eb25"}.ri-calendar-fill:before{content:"\eb26"}.ri-calendar-line:before{content:"\eb27"}.ri-calendar-todo-fill:before{content:"\eb28"}.ri-calendar-todo-line:before{content:"\eb29"}.ri-camera-2-fill:before{content:"\eb2a"}.ri-camera-2-line:before{content:"\eb2b"}.ri-camera-3-fill:before{content:"\eb2c"}.ri-camera-3-line:before{content:"\eb2d"}.ri-camera-fill:before{content:"\eb2e"}.ri-camera-lens-fill:before{content:"\eb2f"}.ri-camera-lens-line:before{content:"\eb30"}.ri-camera-line:before{content:"\eb31"}.ri-camera-off-fill:before{content:"\eb32"}.ri-camera-off-line:before{content:"\eb33"}.ri-camera-switch-fill:before{content:"\eb34"}.ri-camera-switch-line:before{content:"\eb35"}.ri-capsule-fill:before{content:"\eb36"}.ri-capsule-line:before{content:"\eb37"}.ri-car-fill:before{content:"\eb38"}.ri-car-line:before{content:"\eb39"}.ri-car-washing-fill:before{content:"\eb3a"}.ri-car-washing-line:before{content:"\eb3b"}.ri-caravan-fill:before{content:"\eb3c"}.ri-caravan-line:before{content:"\eb3d"}.ri-cast-fill:before{content:"\eb3e"}.ri-cast-line:before{content:"\eb3f"}.ri-cellphone-fill:before{content:"\eb40"}.ri-cellphone-line:before{content:"\eb41"}.ri-celsius-fill:before{content:"\eb42"}.ri-celsius-line:before{content:"\eb43"}.ri-centos-fill:before{content:"\eb44"}.ri-centos-line:before{content:"\eb45"}.ri-character-recognition-fill:before{content:"\eb46"}.ri-character-recognition-line:before{content:"\eb47"}.ri-charging-pile-2-fill:before{content:"\eb48"}.ri-charging-pile-2-line:before{content:"\eb49"}.ri-charging-pile-fill:before{content:"\eb4a"}.ri-charging-pile-line:before{content:"\eb4b"}.ri-chat-1-fill:before{content:"\eb4c"}.ri-chat-1-line:before{content:"\eb4d"}.ri-chat-2-fill:before{content:"\eb4e"}.ri-chat-2-line:before{content:"\eb4f"}.ri-chat-3-fill:before{content:"\eb50"}.ri-chat-3-line:before{content:"\eb51"}.ri-chat-4-fill:before{content:"\eb52"}.ri-chat-4-line:before{content:"\eb53"}.ri-chat-check-fill:before{content:"\eb54"}.ri-chat-check-line:before{content:"\eb55"}.ri-chat-delete-fill:before{content:"\eb56"}.ri-chat-delete-line:before{content:"\eb57"}.ri-chat-download-fill:before{content:"\eb58"}.ri-chat-download-line:before{content:"\eb59"}.ri-chat-follow-up-fill:before{content:"\eb5a"}.ri-chat-follow-up-line:before{content:"\eb5b"}.ri-chat-forward-fill:before{content:"\eb5c"}.ri-chat-forward-line:before{content:"\eb5d"}.ri-chat-heart-fill:before{content:"\eb5e"}.ri-chat-heart-line:before{content:"\eb5f"}.ri-chat-history-fill:before{content:"\eb60"}.ri-chat-history-line:before{content:"\eb61"}.ri-chat-new-fill:before{content:"\eb62"}.ri-chat-new-line:before{content:"\eb63"}.ri-chat-off-fill:before{content:"\eb64"}.ri-chat-off-line:before{content:"\eb65"}.ri-chat-poll-fill:before{content:"\eb66"}.ri-chat-poll-line:before{content:"\eb67"}.ri-chat-private-fill:before{content:"\eb68"}.ri-chat-private-line:before{content:"\eb69"}.ri-chat-quote-fill:before{content:"\eb6a"}.ri-chat-quote-line:before{content:"\eb6b"}.ri-chat-settings-fill:before{content:"\eb6c"}.ri-chat-settings-line:before{content:"\eb6d"}.ri-chat-smile-2-fill:before{content:"\eb6e"}.ri-chat-smile-2-line:before{content:"\eb6f"}.ri-chat-smile-3-fill:before{content:"\eb70"}.ri-chat-smile-3-line:before{content:"\eb71"}.ri-chat-smile-fill:before{content:"\eb72"}.ri-chat-smile-line:before{content:"\eb73"}.ri-chat-upload-fill:before{content:"\eb74"}.ri-chat-upload-line:before{content:"\eb75"}.ri-chat-voice-fill:before{content:"\eb76"}.ri-chat-voice-line:before{content:"\eb77"}.ri-check-double-fill:before{content:"\eb78"}.ri-check-double-line:before{content:"\eb79"}.ri-check-fill:before{content:"\eb7a"}.ri-check-line:before{content:"\eb7b"}.ri-checkbox-blank-circle-fill:before{content:"\eb7c"}.ri-checkbox-blank-circle-line:before{content:"\eb7d"}.ri-checkbox-blank-fill:before{content:"\eb7e"}.ri-checkbox-blank-line:before{content:"\eb7f"}.ri-checkbox-circle-fill:before{content:"\eb80"}.ri-checkbox-circle-line:before{content:"\eb81"}.ri-checkbox-fill:before{content:"\eb82"}.ri-checkbox-indeterminate-fill:before{content:"\eb83"}.ri-checkbox-indeterminate-line:before{content:"\eb84"}.ri-checkbox-line:before{content:"\eb85"}.ri-checkbox-multiple-blank-fill:before{content:"\eb86"}.ri-checkbox-multiple-blank-line:before{content:"\eb87"}.ri-checkbox-multiple-fill:before{content:"\eb88"}.ri-checkbox-multiple-line:before{content:"\eb89"}.ri-china-railway-fill:before{content:"\eb8a"}.ri-china-railway-line:before{content:"\eb8b"}.ri-chrome-fill:before{content:"\eb8c"}.ri-chrome-line:before{content:"\eb8d"}.ri-clapperboard-fill:before{content:"\eb8e"}.ri-clapperboard-line:before{content:"\eb8f"}.ri-clipboard-fill:before{content:"\eb90"}.ri-clipboard-line:before{content:"\eb91"}.ri-clockwise-2-fill:before{content:"\eb92"}.ri-clockwise-2-line:before{content:"\eb93"}.ri-clockwise-fill:before{content:"\eb94"}.ri-clockwise-line:before{content:"\eb95"}.ri-close-circle-fill:before{content:"\eb96"}.ri-close-circle-line:before{content:"\eb97"}.ri-close-fill:before{content:"\eb98"}.ri-close-line:before{content:"\eb99"}.ri-closed-captioning-fill:before{content:"\eb9a"}.ri-closed-captioning-line:before{content:"\eb9b"}.ri-cloud-fill:before{content:"\eb9c"}.ri-cloud-line:before{content:"\eb9d"}.ri-cloud-off-fill:before{content:"\eb9e"}.ri-cloud-off-line:before{content:"\eb9f"}.ri-cloud-windy-fill:before{content:"\eba0"}.ri-cloud-windy-line:before{content:"\eba1"}.ri-cloudy-2-fill:before{content:"\eba2"}.ri-cloudy-2-line:before{content:"\eba3"}.ri-cloudy-fill:before{content:"\eba4"}.ri-cloudy-line:before{content:"\eba5"}.ri-code-box-fill:before{content:"\eba6"}.ri-code-box-line:before{content:"\eba7"}.ri-code-fill:before{content:"\eba8"}.ri-code-line:before{content:"\eba9"}.ri-code-s-fill:before{content:"\ebaa"}.ri-code-s-line:before{content:"\ebab"}.ri-code-s-slash-fill:before{content:"\ebac"}.ri-code-s-slash-line:before{content:"\ebad"}.ri-code-view:before{content:"\ebae"}.ri-codepen-fill:before{content:"\ebaf"}.ri-codepen-line:before{content:"\ebb0"}.ri-coin-fill:before{content:"\ebb1"}.ri-coin-line:before{content:"\ebb2"}.ri-coins-fill:before{content:"\ebb3"}.ri-coins-line:before{content:"\ebb4"}.ri-collage-fill:before{content:"\ebb5"}.ri-collage-line:before{content:"\ebb6"}.ri-command-fill:before{content:"\ebb7"}.ri-command-line:before{content:"\ebb8"}.ri-community-fill:before{content:"\ebb9"}.ri-community-line:before{content:"\ebba"}.ri-compass-2-fill:before{content:"\ebbb"}.ri-compass-2-line:before{content:"\ebbc"}.ri-compass-3-fill:before{content:"\ebbd"}.ri-compass-3-line:before{content:"\ebbe"}.ri-compass-4-fill:before{content:"\ebbf"}.ri-compass-4-line:before{content:"\ebc0"}.ri-compass-discover-fill:before{content:"\ebc1"}.ri-compass-discover-line:before{content:"\ebc2"}.ri-compass-fill:before{content:"\ebc3"}.ri-compass-line:before{content:"\ebc4"}.ri-compasses-2-fill:before{content:"\ebc5"}.ri-compasses-2-line:before{content:"\ebc6"}.ri-compasses-fill:before{content:"\ebc7"}.ri-compasses-line:before{content:"\ebc8"}.ri-computer-fill:before{content:"\ebc9"}.ri-computer-line:before{content:"\ebca"}.ri-contacts-book-2-fill:before{content:"\ebcb"}.ri-contacts-book-2-line:before{content:"\ebcc"}.ri-contacts-book-fill:before{content:"\ebcd"}.ri-contacts-book-line:before{content:"\ebce"}.ri-contacts-book-upload-fill:before{content:"\ebcf"}.ri-contacts-book-upload-line:before{content:"\ebd0"}.ri-contacts-fill:before{content:"\ebd1"}.ri-contacts-line:before{content:"\ebd2"}.ri-contrast-2-fill:before{content:"\ebd3"}.ri-contrast-2-line:before{content:"\ebd4"}.ri-contrast-drop-2-fill:before{content:"\ebd5"}.ri-contrast-drop-2-line:before{content:"\ebd6"}.ri-contrast-drop-fill:before{content:"\ebd7"}.ri-contrast-drop-line:before{content:"\ebd8"}.ri-contrast-fill:before{content:"\ebd9"}.ri-contrast-line:before{content:"\ebda"}.ri-copper-coin-fill:before{content:"\ebdb"}.ri-copper-coin-line:before{content:"\ebdc"}.ri-copper-diamond-fill:before{content:"\ebdd"}.ri-copper-diamond-line:before{content:"\ebde"}.ri-copyleft-fill:before{content:"\ebdf"}.ri-copyleft-line:before{content:"\ebe0"}.ri-copyright-fill:before{content:"\ebe1"}.ri-copyright-line:before{content:"\ebe2"}.ri-coreos-fill:before{content:"\ebe3"}.ri-coreos-line:before{content:"\ebe4"}.ri-coupon-2-fill:before{content:"\ebe5"}.ri-coupon-2-line:before{content:"\ebe6"}.ri-coupon-3-fill:before{content:"\ebe7"}.ri-coupon-3-line:before{content:"\ebe8"}.ri-coupon-4-fill:before{content:"\ebe9"}.ri-coupon-4-line:before{content:"\ebea"}.ri-coupon-5-fill:before{content:"\ebeb"}.ri-coupon-5-line:before{content:"\ebec"}.ri-coupon-fill:before{content:"\ebed"}.ri-coupon-line:before{content:"\ebee"}.ri-cpu-fill:before{content:"\ebef"}.ri-cpu-line:before{content:"\ebf0"}.ri-creative-commons-by-fill:before{content:"\ebf1"}.ri-creative-commons-by-line:before{content:"\ebf2"}.ri-creative-commons-fill:before{content:"\ebf3"}.ri-creative-commons-line:before{content:"\ebf4"}.ri-creative-commons-nc-fill:before{content:"\ebf5"}.ri-creative-commons-nc-line:before{content:"\ebf6"}.ri-creative-commons-nd-fill:before{content:"\ebf7"}.ri-creative-commons-nd-line:before{content:"\ebf8"}.ri-creative-commons-sa-fill:before{content:"\ebf9"}.ri-creative-commons-sa-line:before{content:"\ebfa"}.ri-creative-commons-zero-fill:before{content:"\ebfb"}.ri-creative-commons-zero-line:before{content:"\ebfc"}.ri-criminal-fill:before{content:"\ebfd"}.ri-criminal-line:before{content:"\ebfe"}.ri-crop-2-fill:before{content:"\ebff"}.ri-crop-2-line:before{content:"\ec00"}.ri-crop-fill:before{content:"\ec01"}.ri-crop-line:before{content:"\ec02"}.ri-css3-fill:before{content:"\ec03"}.ri-css3-line:before{content:"\ec04"}.ri-cup-fill:before{content:"\ec05"}.ri-cup-line:before{content:"\ec06"}.ri-currency-fill:before{content:"\ec07"}.ri-currency-line:before{content:"\ec08"}.ri-cursor-fill:before{content:"\ec09"}.ri-cursor-line:before{content:"\ec0a"}.ri-customer-service-2-fill:before{content:"\ec0b"}.ri-customer-service-2-line:before{content:"\ec0c"}.ri-customer-service-fill:before{content:"\ec0d"}.ri-customer-service-line:before{content:"\ec0e"}.ri-dashboard-2-fill:before{content:"\ec0f"}.ri-dashboard-2-line:before{content:"\ec10"}.ri-dashboard-3-fill:before{content:"\ec11"}.ri-dashboard-3-line:before{content:"\ec12"}.ri-dashboard-fill:before{content:"\ec13"}.ri-dashboard-line:before{content:"\ec14"}.ri-database-2-fill:before{content:"\ec15"}.ri-database-2-line:before{content:"\ec16"}.ri-database-fill:before{content:"\ec17"}.ri-database-line:before{content:"\ec18"}.ri-delete-back-2-fill:before{content:"\ec19"}.ri-delete-back-2-line:before{content:"\ec1a"}.ri-delete-back-fill:before{content:"\ec1b"}.ri-delete-back-line:before{content:"\ec1c"}.ri-delete-bin-2-fill:before{content:"\ec1d"}.ri-delete-bin-2-line:before{content:"\ec1e"}.ri-delete-bin-3-fill:before{content:"\ec1f"}.ri-delete-bin-3-line:before{content:"\ec20"}.ri-delete-bin-4-fill:before{content:"\ec21"}.ri-delete-bin-4-line:before{content:"\ec22"}.ri-delete-bin-5-fill:before{content:"\ec23"}.ri-delete-bin-5-line:before{content:"\ec24"}.ri-delete-bin-6-fill:before{content:"\ec25"}.ri-delete-bin-6-line:before{content:"\ec26"}.ri-delete-bin-7-fill:before{content:"\ec27"}.ri-delete-bin-7-line:before{content:"\ec28"}.ri-delete-bin-fill:before{content:"\ec29"}.ri-delete-bin-line:before{content:"\ec2a"}.ri-delete-column:before{content:"\ec2b"}.ri-delete-row:before{content:"\ec2c"}.ri-device-fill:before{content:"\ec2d"}.ri-device-line:before{content:"\ec2e"}.ri-device-recover-fill:before{content:"\ec2f"}.ri-device-recover-line:before{content:"\ec30"}.ri-dingding-fill:before{content:"\ec31"}.ri-dingding-line:before{content:"\ec32"}.ri-direction-fill:before{content:"\ec33"}.ri-direction-line:before{content:"\ec34"}.ri-disc-fill:before{content:"\ec35"}.ri-disc-line:before{content:"\ec36"}.ri-discord-fill:before{content:"\ec37"}.ri-discord-line:before{content:"\ec38"}.ri-discuss-fill:before{content:"\ec39"}.ri-discuss-line:before{content:"\ec3a"}.ri-dislike-fill:before{content:"\ec3b"}.ri-dislike-line:before{content:"\ec3c"}.ri-disqus-fill:before{content:"\ec3d"}.ri-disqus-line:before{content:"\ec3e"}.ri-divide-fill:before{content:"\ec3f"}.ri-divide-line:before{content:"\ec40"}.ri-donut-chart-fill:before{content:"\ec41"}.ri-donut-chart-line:before{content:"\ec42"}.ri-door-closed-fill:before{content:"\ec43"}.ri-door-closed-line:before{content:"\ec44"}.ri-door-fill:before{content:"\ec45"}.ri-door-line:before{content:"\ec46"}.ri-door-lock-box-fill:before{content:"\ec47"}.ri-door-lock-box-line:before{content:"\ec48"}.ri-door-lock-fill:before{content:"\ec49"}.ri-door-lock-line:before{content:"\ec4a"}.ri-door-open-fill:before{content:"\ec4b"}.ri-door-open-line:before{content:"\ec4c"}.ri-dossier-fill:before{content:"\ec4d"}.ri-dossier-line:before{content:"\ec4e"}.ri-douban-fill:before{content:"\ec4f"}.ri-douban-line:before{content:"\ec50"}.ri-double-quotes-l:before{content:"\ec51"}.ri-double-quotes-r:before{content:"\ec52"}.ri-download-2-fill:before{content:"\ec53"}.ri-download-2-line:before{content:"\ec54"}.ri-download-cloud-2-fill:before{content:"\ec55"}.ri-download-cloud-2-line:before{content:"\ec56"}.ri-download-cloud-fill:before{content:"\ec57"}.ri-download-cloud-line:before{content:"\ec58"}.ri-download-fill:before{content:"\ec59"}.ri-download-line:before{content:"\ec5a"}.ri-draft-fill:before{content:"\ec5b"}.ri-draft-line:before{content:"\ec5c"}.ri-drag-drop-fill:before{content:"\ec5d"}.ri-drag-drop-line:before{content:"\ec5e"}.ri-drag-move-2-fill:before{content:"\ec5f"}.ri-drag-move-2-line:before{content:"\ec60"}.ri-drag-move-fill:before{content:"\ec61"}.ri-drag-move-line:before{content:"\ec62"}.ri-dribbble-fill:before{content:"\ec63"}.ri-dribbble-line:before{content:"\ec64"}.ri-drive-fill:before{content:"\ec65"}.ri-drive-line:before{content:"\ec66"}.ri-drizzle-fill:before{content:"\ec67"}.ri-drizzle-line:before{content:"\ec68"}.ri-drop-fill:before{content:"\ec69"}.ri-drop-line:before{content:"\ec6a"}.ri-dropbox-fill:before{content:"\ec6b"}.ri-dropbox-line:before{content:"\ec6c"}.ri-dual-sim-1-fill:before{content:"\ec6d"}.ri-dual-sim-1-line:before{content:"\ec6e"}.ri-dual-sim-2-fill:before{content:"\ec6f"}.ri-dual-sim-2-line:before{content:"\ec70"}.ri-dv-fill:before{content:"\ec71"}.ri-dv-line:before{content:"\ec72"}.ri-dvd-fill:before{content:"\ec73"}.ri-dvd-line:before{content:"\ec74"}.ri-e-bike-2-fill:before{content:"\ec75"}.ri-e-bike-2-line:before{content:"\ec76"}.ri-e-bike-fill:before{content:"\ec77"}.ri-e-bike-line:before{content:"\ec78"}.ri-earth-fill:before{content:"\ec79"}.ri-earth-line:before{content:"\ec7a"}.ri-earthquake-fill:before{content:"\ec7b"}.ri-earthquake-line:before{content:"\ec7c"}.ri-edge-fill:before{content:"\ec7d"}.ri-edge-line:before{content:"\ec7e"}.ri-edit-2-fill:before{content:"\ec7f"}.ri-edit-2-line:before{content:"\ec80"}.ri-edit-box-fill:before{content:"\ec81"}.ri-edit-box-line:before{content:"\ec82"}.ri-edit-circle-fill:before{content:"\ec83"}.ri-edit-circle-line:before{content:"\ec84"}.ri-edit-fill:before{content:"\ec85"}.ri-edit-line:before{content:"\ec86"}.ri-eject-fill:before{content:"\ec87"}.ri-eject-line:before{content:"\ec88"}.ri-emotion-2-fill:before{content:"\ec89"}.ri-emotion-2-line:before{content:"\ec8a"}.ri-emotion-fill:before{content:"\ec8b"}.ri-emotion-happy-fill:before{content:"\ec8c"}.ri-emotion-happy-line:before{content:"\ec8d"}.ri-emotion-laugh-fill:before{content:"\ec8e"}.ri-emotion-laugh-line:before{content:"\ec8f"}.ri-emotion-line:before{content:"\ec90"}.ri-emotion-normal-fill:before{content:"\ec91"}.ri-emotion-normal-line:before{content:"\ec92"}.ri-emotion-sad-fill:before{content:"\ec93"}.ri-emotion-sad-line:before{content:"\ec94"}.ri-emotion-unhappy-fill:before{content:"\ec95"}.ri-emotion-unhappy-line:before{content:"\ec96"}.ri-empathize-fill:before{content:"\ec97"}.ri-empathize-line:before{content:"\ec98"}.ri-emphasis-cn:before{content:"\ec99"}.ri-emphasis:before{content:"\ec9a"}.ri-english-input:before{content:"\ec9b"}.ri-equalizer-fill:before{content:"\ec9c"}.ri-equalizer-line:before{content:"\ec9d"}.ri-eraser-fill:before{content:"\ec9e"}.ri-eraser-line:before{content:"\ec9f"}.ri-error-warning-fill:before{content:"\eca0"}.ri-error-warning-line:before{content:"\eca1"}.ri-evernote-fill:before{content:"\eca2"}.ri-evernote-line:before{content:"\eca3"}.ri-exchange-box-fill:before{content:"\eca4"}.ri-exchange-box-line:before{content:"\eca5"}.ri-exchange-cny-fill:before{content:"\eca6"}.ri-exchange-cny-line:before{content:"\eca7"}.ri-exchange-dollar-fill:before{content:"\eca8"}.ri-exchange-dollar-line:before{content:"\eca9"}.ri-exchange-fill:before{content:"\ecaa"}.ri-exchange-funds-fill:before{content:"\ecab"}.ri-exchange-funds-line:before{content:"\ecac"}.ri-exchange-line:before{content:"\ecad"}.ri-external-link-fill:before{content:"\ecae"}.ri-external-link-line:before{content:"\ecaf"}.ri-eye-2-fill:before{content:"\ecb0"}.ri-eye-2-line:before{content:"\ecb1"}.ri-eye-close-fill:before{content:"\ecb2"}.ri-eye-close-line:before{content:"\ecb3"}.ri-eye-fill:before{content:"\ecb4"}.ri-eye-line:before{content:"\ecb5"}.ri-eye-off-fill:before{content:"\ecb6"}.ri-eye-off-line:before{content:"\ecb7"}.ri-facebook-box-fill:before{content:"\ecb8"}.ri-facebook-box-line:before{content:"\ecb9"}.ri-facebook-circle-fill:before{content:"\ecba"}.ri-facebook-circle-line:before{content:"\ecbb"}.ri-facebook-fill:before{content:"\ecbc"}.ri-facebook-line:before{content:"\ecbd"}.ri-fahrenheit-fill:before{content:"\ecbe"}.ri-fahrenheit-line:before{content:"\ecbf"}.ri-feedback-fill:before{content:"\ecc0"}.ri-feedback-line:before{content:"\ecc1"}.ri-file-2-fill:before{content:"\ecc2"}.ri-file-2-line:before{content:"\ecc3"}.ri-file-3-fill:before{content:"\ecc4"}.ri-file-3-line:before{content:"\ecc5"}.ri-file-4-fill:before{content:"\ecc6"}.ri-file-4-line:before{content:"\ecc7"}.ri-file-add-fill:before{content:"\ecc8"}.ri-file-add-line:before{content:"\ecc9"}.ri-file-chart-2-fill:before{content:"\ecca"}.ri-file-chart-2-line:before{content:"\eccb"}.ri-file-chart-fill:before{content:"\eccc"}.ri-file-chart-line:before{content:"\eccd"}.ri-file-cloud-fill:before{content:"\ecce"}.ri-file-cloud-line:before{content:"\eccf"}.ri-file-code-fill:before{content:"\ecd0"}.ri-file-code-line:before{content:"\ecd1"}.ri-file-copy-2-fill:before{content:"\ecd2"}.ri-file-copy-2-line:before{content:"\ecd3"}.ri-file-copy-fill:before{content:"\ecd4"}.ri-file-copy-line:before{content:"\ecd5"}.ri-file-damage-fill:before{content:"\ecd6"}.ri-file-damage-line:before{content:"\ecd7"}.ri-file-download-fill:before{content:"\ecd8"}.ri-file-download-line:before{content:"\ecd9"}.ri-file-edit-fill:before{content:"\ecda"}.ri-file-edit-line:before{content:"\ecdb"}.ri-file-excel-2-fill:before{content:"\ecdc"}.ri-file-excel-2-line:before{content:"\ecdd"}.ri-file-excel-fill:before{content:"\ecde"}.ri-file-excel-line:before{content:"\ecdf"}.ri-file-fill:before{content:"\ece0"}.ri-file-forbid-fill:before{content:"\ece1"}.ri-file-forbid-line:before{content:"\ece2"}.ri-file-gif-fill:before{content:"\ece3"}.ri-file-gif-line:before{content:"\ece4"}.ri-file-history-fill:before{content:"\ece5"}.ri-file-history-line:before{content:"\ece6"}.ri-file-hwp-fill:before{content:"\ece7"}.ri-file-hwp-line:before{content:"\ece8"}.ri-file-info-fill:before{content:"\ece9"}.ri-file-info-line:before{content:"\ecea"}.ri-file-line:before{content:"\eceb"}.ri-file-list-2-fill:before{content:"\ecec"}.ri-file-list-2-line:before{content:"\eced"}.ri-file-list-3-fill:before{content:"\ecee"}.ri-file-list-3-line:before{content:"\ecef"}.ri-file-list-fill:before{content:"\ecf0"}.ri-file-list-line:before{content:"\ecf1"}.ri-file-lock-fill:before{content:"\ecf2"}.ri-file-lock-line:before{content:"\ecf3"}.ri-file-mark-fill:before{content:"\ecf4"}.ri-file-mark-line:before{content:"\ecf5"}.ri-file-music-fill:before{content:"\ecf6"}.ri-file-music-line:before{content:"\ecf7"}.ri-file-paper-2-fill:before{content:"\ecf8"}.ri-file-paper-2-line:before{content:"\ecf9"}.ri-file-paper-fill:before{content:"\ecfa"}.ri-file-paper-line:before{content:"\ecfb"}.ri-file-pdf-fill:before{content:"\ecfc"}.ri-file-pdf-line:before{content:"\ecfd"}.ri-file-ppt-2-fill:before{content:"\ecfe"}.ri-file-ppt-2-line:before{content:"\ecff"}.ri-file-ppt-fill:before{content:"\ed00"}.ri-file-ppt-line:before{content:"\ed01"}.ri-file-reduce-fill:before{content:"\ed02"}.ri-file-reduce-line:before{content:"\ed03"}.ri-file-search-fill:before{content:"\ed04"}.ri-file-search-line:before{content:"\ed05"}.ri-file-settings-fill:before{content:"\ed06"}.ri-file-settings-line:before{content:"\ed07"}.ri-file-shield-2-fill:before{content:"\ed08"}.ri-file-shield-2-line:before{content:"\ed09"}.ri-file-shield-fill:before{content:"\ed0a"}.ri-file-shield-line:before{content:"\ed0b"}.ri-file-shred-fill:before{content:"\ed0c"}.ri-file-shred-line:before{content:"\ed0d"}.ri-file-text-fill:before{content:"\ed0e"}.ri-file-text-line:before{content:"\ed0f"}.ri-file-transfer-fill:before{content:"\ed10"}.ri-file-transfer-line:before{content:"\ed11"}.ri-file-unknow-fill:before{content:"\ed12"}.ri-file-unknow-line:before{content:"\ed13"}.ri-file-upload-fill:before{content:"\ed14"}.ri-file-upload-line:before{content:"\ed15"}.ri-file-user-fill:before{content:"\ed16"}.ri-file-user-line:before{content:"\ed17"}.ri-file-warning-fill:before{content:"\ed18"}.ri-file-warning-line:before{content:"\ed19"}.ri-file-word-2-fill:before{content:"\ed1a"}.ri-file-word-2-line:before{content:"\ed1b"}.ri-file-word-fill:before{content:"\ed1c"}.ri-file-word-line:before{content:"\ed1d"}.ri-file-zip-fill:before{content:"\ed1e"}.ri-file-zip-line:before{content:"\ed1f"}.ri-film-fill:before{content:"\ed20"}.ri-film-line:before{content:"\ed21"}.ri-filter-2-fill:before{content:"\ed22"}.ri-filter-2-line:before{content:"\ed23"}.ri-filter-3-fill:before{content:"\ed24"}.ri-filter-3-line:before{content:"\ed25"}.ri-filter-fill:before{content:"\ed26"}.ri-filter-line:before{content:"\ed27"}.ri-filter-off-fill:before{content:"\ed28"}.ri-filter-off-line:before{content:"\ed29"}.ri-find-replace-fill:before{content:"\ed2a"}.ri-find-replace-line:before{content:"\ed2b"}.ri-finder-fill:before{content:"\ed2c"}.ri-finder-line:before{content:"\ed2d"}.ri-fingerprint-2-fill:before{content:"\ed2e"}.ri-fingerprint-2-line:before{content:"\ed2f"}.ri-fingerprint-fill:before{content:"\ed30"}.ri-fingerprint-line:before{content:"\ed31"}.ri-fire-fill:before{content:"\ed32"}.ri-fire-line:before{content:"\ed33"}.ri-firefox-fill:before{content:"\ed34"}.ri-firefox-line:before{content:"\ed35"}.ri-first-aid-kit-fill:before{content:"\ed36"}.ri-first-aid-kit-line:before{content:"\ed37"}.ri-flag-2-fill:before{content:"\ed38"}.ri-flag-2-line:before{content:"\ed39"}.ri-flag-fill:before{content:"\ed3a"}.ri-flag-line:before{content:"\ed3b"}.ri-flashlight-fill:before{content:"\ed3c"}.ri-flashlight-line:before{content:"\ed3d"}.ri-flask-fill:before{content:"\ed3e"}.ri-flask-line:before{content:"\ed3f"}.ri-flight-land-fill:before{content:"\ed40"}.ri-flight-land-line:before{content:"\ed41"}.ri-flight-takeoff-fill:before{content:"\ed42"}.ri-flight-takeoff-line:before{content:"\ed43"}.ri-flood-fill:before{content:"\ed44"}.ri-flood-line:before{content:"\ed45"}.ri-flow-chart:before{content:"\ed46"}.ri-flutter-fill:before{content:"\ed47"}.ri-flutter-line:before{content:"\ed48"}.ri-focus-2-fill:before{content:"\ed49"}.ri-focus-2-line:before{content:"\ed4a"}.ri-focus-3-fill:before{content:"\ed4b"}.ri-focus-3-line:before{content:"\ed4c"}.ri-focus-fill:before{content:"\ed4d"}.ri-focus-line:before{content:"\ed4e"}.ri-foggy-fill:before{content:"\ed4f"}.ri-foggy-line:before{content:"\ed50"}.ri-folder-2-fill:before{content:"\ed51"}.ri-folder-2-line:before{content:"\ed52"}.ri-folder-3-fill:before{content:"\ed53"}.ri-folder-3-line:before{content:"\ed54"}.ri-folder-4-fill:before{content:"\ed55"}.ri-folder-4-line:before{content:"\ed56"}.ri-folder-5-fill:before{content:"\ed57"}.ri-folder-5-line:before{content:"\ed58"}.ri-folder-add-fill:before{content:"\ed59"}.ri-folder-add-line:before{content:"\ed5a"}.ri-folder-chart-2-fill:before{content:"\ed5b"}.ri-folder-chart-2-line:before{content:"\ed5c"}.ri-folder-chart-fill:before{content:"\ed5d"}.ri-folder-chart-line:before{content:"\ed5e"}.ri-folder-download-fill:before{content:"\ed5f"}.ri-folder-download-line:before{content:"\ed60"}.ri-folder-fill:before{content:"\ed61"}.ri-folder-forbid-fill:before{content:"\ed62"}.ri-folder-forbid-line:before{content:"\ed63"}.ri-folder-history-fill:before{content:"\ed64"}.ri-folder-history-line:before{content:"\ed65"}.ri-folder-info-fill:before{content:"\ed66"}.ri-folder-info-line:before{content:"\ed67"}.ri-folder-keyhole-fill:before{content:"\ed68"}.ri-folder-keyhole-line:before{content:"\ed69"}.ri-folder-line:before{content:"\ed6a"}.ri-folder-lock-fill:before{content:"\ed6b"}.ri-folder-lock-line:before{content:"\ed6c"}.ri-folder-music-fill:before{content:"\ed6d"}.ri-folder-music-line:before{content:"\ed6e"}.ri-folder-open-fill:before{content:"\ed6f"}.ri-folder-open-line:before{content:"\ed70"}.ri-folder-received-fill:before{content:"\ed71"}.ri-folder-received-line:before{content:"\ed72"}.ri-folder-reduce-fill:before{content:"\ed73"}.ri-folder-reduce-line:before{content:"\ed74"}.ri-folder-settings-fill:before{content:"\ed75"}.ri-folder-settings-line:before{content:"\ed76"}.ri-folder-shared-fill:before{content:"\ed77"}.ri-folder-shared-line:before{content:"\ed78"}.ri-folder-shield-2-fill:before{content:"\ed79"}.ri-folder-shield-2-line:before{content:"\ed7a"}.ri-folder-shield-fill:before{content:"\ed7b"}.ri-folder-shield-line:before{content:"\ed7c"}.ri-folder-transfer-fill:before{content:"\ed7d"}.ri-folder-transfer-line:before{content:"\ed7e"}.ri-folder-unknow-fill:before{content:"\ed7f"}.ri-folder-unknow-line:before{content:"\ed80"}.ri-folder-upload-fill:before{content:"\ed81"}.ri-folder-upload-line:before{content:"\ed82"}.ri-folder-user-fill:before{content:"\ed83"}.ri-folder-user-line:before{content:"\ed84"}.ri-folder-warning-fill:before{content:"\ed85"}.ri-folder-warning-line:before{content:"\ed86"}.ri-folder-zip-fill:before{content:"\ed87"}.ri-folder-zip-line:before{content:"\ed88"}.ri-folders-fill:before{content:"\ed89"}.ri-folders-line:before{content:"\ed8a"}.ri-font-color:before{content:"\ed8b"}.ri-font-size-2:before{content:"\ed8c"}.ri-font-size:before{content:"\ed8d"}.ri-football-fill:before{content:"\ed8e"}.ri-football-line:before{content:"\ed8f"}.ri-footprint-fill:before{content:"\ed90"}.ri-footprint-line:before{content:"\ed91"}.ri-forbid-2-fill:before{content:"\ed92"}.ri-forbid-2-line:before{content:"\ed93"}.ri-forbid-fill:before{content:"\ed94"}.ri-forbid-line:before{content:"\ed95"}.ri-format-clear:before{content:"\ed96"}.ri-fridge-fill:before{content:"\ed97"}.ri-fridge-line:before{content:"\ed98"}.ri-fullscreen-exit-fill:before{content:"\ed99"}.ri-fullscreen-exit-line:before{content:"\ed9a"}.ri-fullscreen-fill:before{content:"\ed9b"}.ri-fullscreen-line:before{content:"\ed9c"}.ri-function-fill:before{content:"\ed9d"}.ri-function-line:before{content:"\ed9e"}.ri-functions:before{content:"\ed9f"}.ri-funds-box-fill:before{content:"\eda0"}.ri-funds-box-line:before{content:"\eda1"}.ri-funds-fill:before{content:"\eda2"}.ri-funds-line:before{content:"\eda3"}.ri-gallery-fill:before{content:"\eda4"}.ri-gallery-line:before{content:"\eda5"}.ri-gallery-upload-fill:before{content:"\eda6"}.ri-gallery-upload-line:before{content:"\eda7"}.ri-game-fill:before{content:"\eda8"}.ri-game-line:before{content:"\eda9"}.ri-gamepad-fill:before{content:"\edaa"}.ri-gamepad-line:before{content:"\edab"}.ri-gas-station-fill:before{content:"\edac"}.ri-gas-station-line:before{content:"\edad"}.ri-gatsby-fill:before{content:"\edae"}.ri-gatsby-line:before{content:"\edaf"}.ri-genderless-fill:before{content:"\edb0"}.ri-genderless-line:before{content:"\edb1"}.ri-ghost-2-fill:before{content:"\edb2"}.ri-ghost-2-line:before{content:"\edb3"}.ri-ghost-fill:before{content:"\edb4"}.ri-ghost-line:before{content:"\edb5"}.ri-ghost-smile-fill:before{content:"\edb6"}.ri-ghost-smile-line:before{content:"\edb7"}.ri-gift-2-fill:before{content:"\edb8"}.ri-gift-2-line:before{content:"\edb9"}.ri-gift-fill:before{content:"\edba"}.ri-gift-line:before{content:"\edbb"}.ri-git-branch-fill:before{content:"\edbc"}.ri-git-branch-line:before{content:"\edbd"}.ri-git-commit-fill:before{content:"\edbe"}.ri-git-commit-line:before{content:"\edbf"}.ri-git-merge-fill:before{content:"\edc0"}.ri-git-merge-line:before{content:"\edc1"}.ri-git-pull-request-fill:before{content:"\edc2"}.ri-git-pull-request-line:before{content:"\edc3"}.ri-git-repository-commits-fill:before{content:"\edc4"}.ri-git-repository-commits-line:before{content:"\edc5"}.ri-git-repository-fill:before{content:"\edc6"}.ri-git-repository-line:before{content:"\edc7"}.ri-git-repository-private-fill:before{content:"\edc8"}.ri-git-repository-private-line:before{content:"\edc9"}.ri-github-fill:before{content:"\edca"}.ri-github-line:before{content:"\edcb"}.ri-gitlab-fill:before{content:"\edcc"}.ri-gitlab-line:before{content:"\edcd"}.ri-global-fill:before{content:"\edce"}.ri-global-line:before{content:"\edcf"}.ri-globe-fill:before{content:"\edd0"}.ri-globe-line:before{content:"\edd1"}.ri-goblet-fill:before{content:"\edd2"}.ri-goblet-line:before{content:"\edd3"}.ri-google-fill:before{content:"\edd4"}.ri-google-line:before{content:"\edd5"}.ri-google-play-fill:before{content:"\edd6"}.ri-google-play-line:before{content:"\edd7"}.ri-government-fill:before{content:"\edd8"}.ri-government-line:before{content:"\edd9"}.ri-gps-fill:before{content:"\edda"}.ri-gps-line:before{content:"\eddb"}.ri-gradienter-fill:before{content:"\eddc"}.ri-gradienter-line:before{content:"\eddd"}.ri-grid-fill:before{content:"\edde"}.ri-grid-line:before{content:"\eddf"}.ri-group-2-fill:before{content:"\ede0"}.ri-group-2-line:before{content:"\ede1"}.ri-group-fill:before{content:"\ede2"}.ri-group-line:before{content:"\ede3"}.ri-guide-fill:before{content:"\ede4"}.ri-guide-line:before{content:"\ede5"}.ri-h-1:before{content:"\ede6"}.ri-h-2:before{content:"\ede7"}.ri-h-3:before{content:"\ede8"}.ri-h-4:before{content:"\ede9"}.ri-h-5:before{content:"\edea"}.ri-h-6:before{content:"\edeb"}.ri-hail-fill:before{content:"\edec"}.ri-hail-line:before{content:"\eded"}.ri-hammer-fill:before{content:"\edee"}.ri-hammer-line:before{content:"\edef"}.ri-hand-coin-fill:before{content:"\edf0"}.ri-hand-coin-line:before{content:"\edf1"}.ri-hand-heart-fill:before{content:"\edf2"}.ri-hand-heart-line:before{content:"\edf3"}.ri-hand-sanitizer-fill:before{content:"\edf4"}.ri-hand-sanitizer-line:before{content:"\edf5"}.ri-handbag-fill:before{content:"\edf6"}.ri-handbag-line:before{content:"\edf7"}.ri-hard-drive-2-fill:before{content:"\edf8"}.ri-hard-drive-2-line:before{content:"\edf9"}.ri-hard-drive-fill:before{content:"\edfa"}.ri-hard-drive-line:before{content:"\edfb"}.ri-hashtag:before{content:"\edfc"}.ri-haze-2-fill:before{content:"\edfd"}.ri-haze-2-line:before{content:"\edfe"}.ri-haze-fill:before{content:"\edff"}.ri-haze-line:before{content:"\ee00"}.ri-hd-fill:before{content:"\ee01"}.ri-hd-line:before{content:"\ee02"}.ri-heading:before{content:"\ee03"}.ri-headphone-fill:before{content:"\ee04"}.ri-headphone-line:before{content:"\ee05"}.ri-health-book-fill:before{content:"\ee06"}.ri-health-book-line:before{content:"\ee07"}.ri-heart-2-fill:before{content:"\ee08"}.ri-heart-2-line:before{content:"\ee09"}.ri-heart-3-fill:before{content:"\ee0a"}.ri-heart-3-line:before{content:"\ee0b"}.ri-heart-add-fill:before{content:"\ee0c"}.ri-heart-add-line:before{content:"\ee0d"}.ri-heart-fill:before{content:"\ee0e"}.ri-heart-line:before{content:"\ee0f"}.ri-heart-pulse-fill:before{content:"\ee10"}.ri-heart-pulse-line:before{content:"\ee11"}.ri-hearts-fill:before{content:"\ee12"}.ri-hearts-line:before{content:"\ee13"}.ri-heavy-showers-fill:before{content:"\ee14"}.ri-heavy-showers-line:before{content:"\ee15"}.ri-history-fill:before{content:"\ee16"}.ri-history-line:before{content:"\ee17"}.ri-home-2-fill:before{content:"\ee18"}.ri-home-2-line:before{content:"\ee19"}.ri-home-3-fill:before{content:"\ee1a"}.ri-home-3-line:before{content:"\ee1b"}.ri-home-4-fill:before{content:"\ee1c"}.ri-home-4-line:before{content:"\ee1d"}.ri-home-5-fill:before{content:"\ee1e"}.ri-home-5-line:before{content:"\ee1f"}.ri-home-6-fill:before{content:"\ee20"}.ri-home-6-line:before{content:"\ee21"}.ri-home-7-fill:before{content:"\ee22"}.ri-home-7-line:before{content:"\ee23"}.ri-home-8-fill:before{content:"\ee24"}.ri-home-8-line:before{content:"\ee25"}.ri-home-fill:before{content:"\ee26"}.ri-home-gear-fill:before{content:"\ee27"}.ri-home-gear-line:before{content:"\ee28"}.ri-home-heart-fill:before{content:"\ee29"}.ri-home-heart-line:before{content:"\ee2a"}.ri-home-line:before{content:"\ee2b"}.ri-home-smile-2-fill:before{content:"\ee2c"}.ri-home-smile-2-line:before{content:"\ee2d"}.ri-home-smile-fill:before{content:"\ee2e"}.ri-home-smile-line:before{content:"\ee2f"}.ri-home-wifi-fill:before{content:"\ee30"}.ri-home-wifi-line:before{content:"\ee31"}.ri-honor-of-kings-fill:before{content:"\ee32"}.ri-honor-of-kings-line:before{content:"\ee33"}.ri-honour-fill:before{content:"\ee34"}.ri-honour-line:before{content:"\ee35"}.ri-hospital-fill:before{content:"\ee36"}.ri-hospital-line:before{content:"\ee37"}.ri-hotel-bed-fill:before{content:"\ee38"}.ri-hotel-bed-line:before{content:"\ee39"}.ri-hotel-fill:before{content:"\ee3a"}.ri-hotel-line:before{content:"\ee3b"}.ri-hotspot-fill:before{content:"\ee3c"}.ri-hotspot-line:before{content:"\ee3d"}.ri-hq-fill:before{content:"\ee3e"}.ri-hq-line:before{content:"\ee3f"}.ri-html5-fill:before{content:"\ee40"}.ri-html5-line:before{content:"\ee41"}.ri-ie-fill:before{content:"\ee42"}.ri-ie-line:before{content:"\ee43"}.ri-image-2-fill:before{content:"\ee44"}.ri-image-2-line:before{content:"\ee45"}.ri-image-add-fill:before{content:"\ee46"}.ri-image-add-line:before{content:"\ee47"}.ri-image-edit-fill:before{content:"\ee48"}.ri-image-edit-line:before{content:"\ee49"}.ri-image-fill:before{content:"\ee4a"}.ri-image-line:before{content:"\ee4b"}.ri-inbox-archive-fill:before{content:"\ee4c"}.ri-inbox-archive-line:before{content:"\ee4d"}.ri-inbox-fill:before{content:"\ee4e"}.ri-inbox-line:before{content:"\ee4f"}.ri-inbox-unarchive-fill:before{content:"\ee50"}.ri-inbox-unarchive-line:before{content:"\ee51"}.ri-increase-decrease-fill:before{content:"\ee52"}.ri-increase-decrease-line:before{content:"\ee53"}.ri-indent-decrease:before{content:"\ee54"}.ri-indent-increase:before{content:"\ee55"}.ri-indeterminate-circle-fill:before{content:"\ee56"}.ri-indeterminate-circle-line:before{content:"\ee57"}.ri-information-fill:before{content:"\ee58"}.ri-information-line:before{content:"\ee59"}.ri-infrared-thermometer-fill:before{content:"\ee5a"}.ri-infrared-thermometer-line:before{content:"\ee5b"}.ri-ink-bottle-fill:before{content:"\ee5c"}.ri-ink-bottle-line:before{content:"\ee5d"}.ri-input-cursor-move:before{content:"\ee5e"}.ri-input-method-fill:before{content:"\ee5f"}.ri-input-method-line:before{content:"\ee60"}.ri-insert-column-left:before{content:"\ee61"}.ri-insert-column-right:before{content:"\ee62"}.ri-insert-row-bottom:before{content:"\ee63"}.ri-insert-row-top:before{content:"\ee64"}.ri-instagram-fill:before{content:"\ee65"}.ri-instagram-line:before{content:"\ee66"}.ri-install-fill:before{content:"\ee67"}.ri-install-line:before{content:"\ee68"}.ri-invision-fill:before{content:"\ee69"}.ri-invision-line:before{content:"\ee6a"}.ri-italic:before{content:"\ee6b"}.ri-kakao-talk-fill:before{content:"\ee6c"}.ri-kakao-talk-line:before{content:"\ee6d"}.ri-key-2-fill:before{content:"\ee6e"}.ri-key-2-line:before{content:"\ee6f"}.ri-key-fill:before{content:"\ee70"}.ri-key-line:before{content:"\ee71"}.ri-keyboard-box-fill:before{content:"\ee72"}.ri-keyboard-box-line:before{content:"\ee73"}.ri-keyboard-fill:before{content:"\ee74"}.ri-keyboard-line:before{content:"\ee75"}.ri-keynote-fill:before{content:"\ee76"}.ri-keynote-line:before{content:"\ee77"}.ri-knife-blood-fill:before{content:"\ee78"}.ri-knife-blood-line:before{content:"\ee79"}.ri-knife-fill:before{content:"\ee7a"}.ri-knife-line:before{content:"\ee7b"}.ri-landscape-fill:before{content:"\ee7c"}.ri-landscape-line:before{content:"\ee7d"}.ri-layout-2-fill:before{content:"\ee7e"}.ri-layout-2-line:before{content:"\ee7f"}.ri-layout-3-fill:before{content:"\ee80"}.ri-layout-3-line:before{content:"\ee81"}.ri-layout-4-fill:before{content:"\ee82"}.ri-layout-4-line:before{content:"\ee83"}.ri-layout-5-fill:before{content:"\ee84"}.ri-layout-5-line:before{content:"\ee85"}.ri-layout-6-fill:before{content:"\ee86"}.ri-layout-6-line:before{content:"\ee87"}.ri-layout-bottom-2-fill:before{content:"\ee88"}.ri-layout-bottom-2-line:before{content:"\ee89"}.ri-layout-bottom-fill:before{content:"\ee8a"}.ri-layout-bottom-line:before{content:"\ee8b"}.ri-layout-column-fill:before{content:"\ee8c"}.ri-layout-column-line:before{content:"\ee8d"}.ri-layout-fill:before{content:"\ee8e"}.ri-layout-grid-fill:before{content:"\ee8f"}.ri-layout-grid-line:before{content:"\ee90"}.ri-layout-left-2-fill:before{content:"\ee91"}.ri-layout-left-2-line:before{content:"\ee92"}.ri-layout-left-fill:before{content:"\ee93"}.ri-layout-left-line:before{content:"\ee94"}.ri-layout-line:before{content:"\ee95"}.ri-layout-masonry-fill:before{content:"\ee96"}.ri-layout-masonry-line:before{content:"\ee97"}.ri-layout-right-2-fill:before{content:"\ee98"}.ri-layout-right-2-line:before{content:"\ee99"}.ri-layout-right-fill:before{content:"\ee9a"}.ri-layout-right-line:before{content:"\ee9b"}.ri-layout-row-fill:before{content:"\ee9c"}.ri-layout-row-line:before{content:"\ee9d"}.ri-layout-top-2-fill:before{content:"\ee9e"}.ri-layout-top-2-line:before{content:"\ee9f"}.ri-layout-top-fill:before{content:"\eea0"}.ri-layout-top-line:before{content:"\eea1"}.ri-leaf-fill:before{content:"\eea2"}.ri-leaf-line:before{content:"\eea3"}.ri-lifebuoy-fill:before{content:"\eea4"}.ri-lifebuoy-line:before{content:"\eea5"}.ri-lightbulb-fill:before{content:"\eea6"}.ri-lightbulb-flash-fill:before{content:"\eea7"}.ri-lightbulb-flash-line:before{content:"\eea8"}.ri-lightbulb-line:before{content:"\eea9"}.ri-line-chart-fill:before{content:"\eeaa"}.ri-line-chart-line:before{content:"\eeab"}.ri-line-fill:before{content:"\eeac"}.ri-line-height:before{content:"\eead"}.ri-line-line:before{content:"\eeae"}.ri-link-m:before{content:"\eeaf"}.ri-link-unlink-m:before{content:"\eeb0"}.ri-link-unlink:before{content:"\eeb1"}.ri-link:before{content:"\eeb2"}.ri-linkedin-box-fill:before{content:"\eeb3"}.ri-linkedin-box-line:before{content:"\eeb4"}.ri-linkedin-fill:before{content:"\eeb5"}.ri-linkedin-line:before{content:"\eeb6"}.ri-links-fill:before{content:"\eeb7"}.ri-links-line:before{content:"\eeb8"}.ri-list-check-2:before{content:"\eeb9"}.ri-list-check:before{content:"\eeba"}.ri-list-ordered:before{content:"\eebb"}.ri-list-settings-fill:before{content:"\eebc"}.ri-list-settings-line:before{content:"\eebd"}.ri-list-unordered:before{content:"\eebe"}.ri-live-fill:before{content:"\eebf"}.ri-live-line:before{content:"\eec0"}.ri-loader-2-fill:before{content:"\eec1"}.ri-loader-2-line:before{content:"\eec2"}.ri-loader-3-fill:before{content:"\eec3"}.ri-loader-3-line:before{content:"\eec4"}.ri-loader-4-fill:before{content:"\eec5"}.ri-loader-4-line:before{content:"\eec6"}.ri-loader-5-fill:before{content:"\eec7"}.ri-loader-5-line:before{content:"\eec8"}.ri-loader-fill:before{content:"\eec9"}.ri-loader-line:before{content:"\eeca"}.ri-lock-2-fill:before{content:"\eecb"}.ri-lock-2-line:before{content:"\eecc"}.ri-lock-fill:before{content:"\eecd"}.ri-lock-line:before{content:"\eece"}.ri-lock-password-fill:before{content:"\eecf"}.ri-lock-password-line:before{content:"\eed0"}.ri-lock-unlock-fill:before{content:"\eed1"}.ri-lock-unlock-line:before{content:"\eed2"}.ri-login-box-fill:before{content:"\eed3"}.ri-login-box-line:before{content:"\eed4"}.ri-login-circle-fill:before{content:"\eed5"}.ri-login-circle-line:before{content:"\eed6"}.ri-logout-box-fill:before{content:"\eed7"}.ri-logout-box-line:before{content:"\eed8"}.ri-logout-box-r-fill:before{content:"\eed9"}.ri-logout-box-r-line:before{content:"\eeda"}.ri-logout-circle-fill:before{content:"\eedb"}.ri-logout-circle-line:before{content:"\eedc"}.ri-logout-circle-r-fill:before{content:"\eedd"}.ri-logout-circle-r-line:before{content:"\eede"}.ri-luggage-cart-fill:before{content:"\eedf"}.ri-luggage-cart-line:before{content:"\eee0"}.ri-luggage-deposit-fill:before{content:"\eee1"}.ri-luggage-deposit-line:before{content:"\eee2"}.ri-lungs-fill:before{content:"\eee3"}.ri-lungs-line:before{content:"\eee4"}.ri-mac-fill:before{content:"\eee5"}.ri-mac-line:before{content:"\eee6"}.ri-macbook-fill:before{content:"\eee7"}.ri-macbook-line:before{content:"\eee8"}.ri-magic-fill:before{content:"\eee9"}.ri-magic-line:before{content:"\eeea"}.ri-mail-add-fill:before{content:"\eeeb"}.ri-mail-add-line:before{content:"\eeec"}.ri-mail-check-fill:before{content:"\eeed"}.ri-mail-check-line:before{content:"\eeee"}.ri-mail-close-fill:before{content:"\eeef"}.ri-mail-close-line:before{content:"\eef0"}.ri-mail-download-fill:before{content:"\eef1"}.ri-mail-download-line:before{content:"\eef2"}.ri-mail-fill:before{content:"\eef3"}.ri-mail-forbid-fill:before{content:"\eef4"}.ri-mail-forbid-line:before{content:"\eef5"}.ri-mail-line:before{content:"\eef6"}.ri-mail-lock-fill:before{content:"\eef7"}.ri-mail-lock-line:before{content:"\eef8"}.ri-mail-open-fill:before{content:"\eef9"}.ri-mail-open-line:before{content:"\eefa"}.ri-mail-send-fill:before{content:"\eefb"}.ri-mail-send-line:before{content:"\eefc"}.ri-mail-settings-fill:before{content:"\eefd"}.ri-mail-settings-line:before{content:"\eefe"}.ri-mail-star-fill:before{content:"\eeff"}.ri-mail-star-line:before{content:"\ef00"}.ri-mail-unread-fill:before{content:"\ef01"}.ri-mail-unread-line:before{content:"\ef02"}.ri-mail-volume-fill:before{content:"\ef03"}.ri-mail-volume-line:before{content:"\ef04"}.ri-map-2-fill:before{content:"\ef05"}.ri-map-2-line:before{content:"\ef06"}.ri-map-fill:before{content:"\ef07"}.ri-map-line:before{content:"\ef08"}.ri-map-pin-2-fill:before{content:"\ef09"}.ri-map-pin-2-line:before{content:"\ef0a"}.ri-map-pin-3-fill:before{content:"\ef0b"}.ri-map-pin-3-line:before{content:"\ef0c"}.ri-map-pin-4-fill:before{content:"\ef0d"}.ri-map-pin-4-line:before{content:"\ef0e"}.ri-map-pin-5-fill:before{content:"\ef0f"}.ri-map-pin-5-line:before{content:"\ef10"}.ri-map-pin-add-fill:before{content:"\ef11"}.ri-map-pin-add-line:before{content:"\ef12"}.ri-map-pin-fill:before{content:"\ef13"}.ri-map-pin-line:before{content:"\ef14"}.ri-map-pin-range-fill:before{content:"\ef15"}.ri-map-pin-range-line:before{content:"\ef16"}.ri-map-pin-time-fill:before{content:"\ef17"}.ri-map-pin-time-line:before{content:"\ef18"}.ri-map-pin-user-fill:before{content:"\ef19"}.ri-map-pin-user-line:before{content:"\ef1a"}.ri-mark-pen-fill:before{content:"\ef1b"}.ri-mark-pen-line:before{content:"\ef1c"}.ri-markdown-fill:before{content:"\ef1d"}.ri-markdown-line:before{content:"\ef1e"}.ri-markup-fill:before{content:"\ef1f"}.ri-markup-line:before{content:"\ef20"}.ri-mastercard-fill:before{content:"\ef21"}.ri-mastercard-line:before{content:"\ef22"}.ri-mastodon-fill:before{content:"\ef23"}.ri-mastodon-line:before{content:"\ef24"}.ri-medal-2-fill:before{content:"\ef25"}.ri-medal-2-line:before{content:"\ef26"}.ri-medal-fill:before{content:"\ef27"}.ri-medal-line:before{content:"\ef28"}.ri-medicine-bottle-fill:before{content:"\ef29"}.ri-medicine-bottle-line:before{content:"\ef2a"}.ri-medium-fill:before{content:"\ef2b"}.ri-medium-line:before{content:"\ef2c"}.ri-men-fill:before{content:"\ef2d"}.ri-men-line:before{content:"\ef2e"}.ri-mental-health-fill:before{content:"\ef2f"}.ri-mental-health-line:before{content:"\ef30"}.ri-menu-2-fill:before{content:"\ef31"}.ri-menu-2-line:before{content:"\ef32"}.ri-menu-3-fill:before{content:"\ef33"}.ri-menu-3-line:before{content:"\ef34"}.ri-menu-4-fill:before{content:"\ef35"}.ri-menu-4-line:before{content:"\ef36"}.ri-menu-5-fill:before{content:"\ef37"}.ri-menu-5-line:before{content:"\ef38"}.ri-menu-add-fill:before{content:"\ef39"}.ri-menu-add-line:before{content:"\ef3a"}.ri-menu-fill:before{content:"\ef3b"}.ri-menu-fold-fill:before{content:"\ef3c"}.ri-menu-fold-line:before{content:"\ef3d"}.ri-menu-line:before{content:"\ef3e"}.ri-menu-unfold-fill:before{content:"\ef3f"}.ri-menu-unfold-line:before{content:"\ef40"}.ri-merge-cells-horizontal:before{content:"\ef41"}.ri-merge-cells-vertical:before{content:"\ef42"}.ri-message-2-fill:before{content:"\ef43"}.ri-message-2-line:before{content:"\ef44"}.ri-message-3-fill:before{content:"\ef45"}.ri-message-3-line:before{content:"\ef46"}.ri-message-fill:before{content:"\ef47"}.ri-message-line:before{content:"\ef48"}.ri-messenger-fill:before{content:"\ef49"}.ri-messenger-line:before{content:"\ef4a"}.ri-meteor-fill:before{content:"\ef4b"}.ri-meteor-line:before{content:"\ef4c"}.ri-mic-2-fill:before{content:"\ef4d"}.ri-mic-2-line:before{content:"\ef4e"}.ri-mic-fill:before{content:"\ef4f"}.ri-mic-line:before{content:"\ef50"}.ri-mic-off-fill:before{content:"\ef51"}.ri-mic-off-line:before{content:"\ef52"}.ri-mickey-fill:before{content:"\ef53"}.ri-mickey-line:before{content:"\ef54"}.ri-microscope-fill:before{content:"\ef55"}.ri-microscope-line:before{content:"\ef56"}.ri-microsoft-fill:before{content:"\ef57"}.ri-microsoft-line:before{content:"\ef58"}.ri-mind-map:before{content:"\ef59"}.ri-mini-program-fill:before{content:"\ef5a"}.ri-mini-program-line:before{content:"\ef5b"}.ri-mist-fill:before{content:"\ef5c"}.ri-mist-line:before{content:"\ef5d"}.ri-money-cny-box-fill:before{content:"\ef5e"}.ri-money-cny-box-line:before{content:"\ef5f"}.ri-money-cny-circle-fill:before{content:"\ef60"}.ri-money-cny-circle-line:before{content:"\ef61"}.ri-money-dollar-box-fill:before{content:"\ef62"}.ri-money-dollar-box-line:before{content:"\ef63"}.ri-money-dollar-circle-fill:before{content:"\ef64"}.ri-money-dollar-circle-line:before{content:"\ef65"}.ri-money-euro-box-fill:before{content:"\ef66"}.ri-money-euro-box-line:before{content:"\ef67"}.ri-money-euro-circle-fill:before{content:"\ef68"}.ri-money-euro-circle-line:before{content:"\ef69"}.ri-money-pound-box-fill:before{content:"\ef6a"}.ri-money-pound-box-line:before{content:"\ef6b"}.ri-money-pound-circle-fill:before{content:"\ef6c"}.ri-money-pound-circle-line:before{content:"\ef6d"}.ri-moon-clear-fill:before{content:"\ef6e"}.ri-moon-clear-line:before{content:"\ef6f"}.ri-moon-cloudy-fill:before{content:"\ef70"}.ri-moon-cloudy-line:before{content:"\ef71"}.ri-moon-fill:before{content:"\ef72"}.ri-moon-foggy-fill:before{content:"\ef73"}.ri-moon-foggy-line:before{content:"\ef74"}.ri-moon-line:before{content:"\ef75"}.ri-more-2-fill:before{content:"\ef76"}.ri-more-2-line:before{content:"\ef77"}.ri-more-fill:before{content:"\ef78"}.ri-more-line:before{content:"\ef79"}.ri-motorbike-fill:before{content:"\ef7a"}.ri-motorbike-line:before{content:"\ef7b"}.ri-mouse-fill:before{content:"\ef7c"}.ri-mouse-line:before{content:"\ef7d"}.ri-movie-2-fill:before{content:"\ef7e"}.ri-movie-2-line:before{content:"\ef7f"}.ri-movie-fill:before{content:"\ef80"}.ri-movie-line:before{content:"\ef81"}.ri-music-2-fill:before{content:"\ef82"}.ri-music-2-line:before{content:"\ef83"}.ri-music-fill:before{content:"\ef84"}.ri-music-line:before{content:"\ef85"}.ri-mv-fill:before{content:"\ef86"}.ri-mv-line:before{content:"\ef87"}.ri-navigation-fill:before{content:"\ef88"}.ri-navigation-line:before{content:"\ef89"}.ri-netease-cloud-music-fill:before{content:"\ef8a"}.ri-netease-cloud-music-line:before{content:"\ef8b"}.ri-netflix-fill:before{content:"\ef8c"}.ri-netflix-line:before{content:"\ef8d"}.ri-newspaper-fill:before{content:"\ef8e"}.ri-newspaper-line:before{content:"\ef8f"}.ri-node-tree:before{content:"\ef90"}.ri-notification-2-fill:before{content:"\ef91"}.ri-notification-2-line:before{content:"\ef92"}.ri-notification-3-fill:before{content:"\ef93"}.ri-notification-3-line:before{content:"\ef94"}.ri-notification-4-fill:before{content:"\ef95"}.ri-notification-4-line:before{content:"\ef96"}.ri-notification-badge-fill:before{content:"\ef97"}.ri-notification-badge-line:before{content:"\ef98"}.ri-notification-fill:before{content:"\ef99"}.ri-notification-line:before{content:"\ef9a"}.ri-notification-off-fill:before{content:"\ef9b"}.ri-notification-off-line:before{content:"\ef9c"}.ri-npmjs-fill:before{content:"\ef9d"}.ri-npmjs-line:before{content:"\ef9e"}.ri-number-0:before{content:"\ef9f"}.ri-number-1:before{content:"\efa0"}.ri-number-2:before{content:"\efa1"}.ri-number-3:before{content:"\efa2"}.ri-number-4:before{content:"\efa3"}.ri-number-5:before{content:"\efa4"}.ri-number-6:before{content:"\efa5"}.ri-number-7:before{content:"\efa6"}.ri-number-8:before{content:"\efa7"}.ri-number-9:before{content:"\efa8"}.ri-numbers-fill:before{content:"\efa9"}.ri-numbers-line:before{content:"\efaa"}.ri-nurse-fill:before{content:"\efab"}.ri-nurse-line:before{content:"\efac"}.ri-oil-fill:before{content:"\efad"}.ri-oil-line:before{content:"\efae"}.ri-omega:before{content:"\efaf"}.ri-open-arm-fill:before{content:"\efb0"}.ri-open-arm-line:before{content:"\efb1"}.ri-open-source-fill:before{content:"\efb2"}.ri-open-source-line:before{content:"\efb3"}.ri-opera-fill:before{content:"\efb4"}.ri-opera-line:before{content:"\efb5"}.ri-order-play-fill:before{content:"\efb6"}.ri-order-play-line:before{content:"\efb7"}.ri-organization-chart:before{content:"\efb8"}.ri-outlet-2-fill:before{content:"\efb9"}.ri-outlet-2-line:before{content:"\efba"}.ri-outlet-fill:before{content:"\efbb"}.ri-outlet-line:before{content:"\efbc"}.ri-page-separator:before{content:"\efbd"}.ri-pages-fill:before{content:"\efbe"}.ri-pages-line:before{content:"\efbf"}.ri-paint-brush-fill:before{content:"\efc0"}.ri-paint-brush-line:before{content:"\efc1"}.ri-paint-fill:before{content:"\efc2"}.ri-paint-line:before{content:"\efc3"}.ri-palette-fill:before{content:"\efc4"}.ri-palette-line:before{content:"\efc5"}.ri-pantone-fill:before{content:"\efc6"}.ri-pantone-line:before{content:"\efc7"}.ri-paragraph:before{content:"\efc8"}.ri-parent-fill:before{content:"\efc9"}.ri-parent-line:before{content:"\efca"}.ri-parentheses-fill:before{content:"\efcb"}.ri-parentheses-line:before{content:"\efcc"}.ri-parking-box-fill:before{content:"\efcd"}.ri-parking-box-line:before{content:"\efce"}.ri-parking-fill:before{content:"\efcf"}.ri-parking-line:before{content:"\efd0"}.ri-passport-fill:before{content:"\efd1"}.ri-passport-line:before{content:"\efd2"}.ri-patreon-fill:before{content:"\efd3"}.ri-patreon-line:before{content:"\efd4"}.ri-pause-circle-fill:before{content:"\efd5"}.ri-pause-circle-line:before{content:"\efd6"}.ri-pause-fill:before{content:"\efd7"}.ri-pause-line:before{content:"\efd8"}.ri-pause-mini-fill:before{content:"\efd9"}.ri-pause-mini-line:before{content:"\efda"}.ri-paypal-fill:before{content:"\efdb"}.ri-paypal-line:before{content:"\efdc"}.ri-pen-nib-fill:before{content:"\efdd"}.ri-pen-nib-line:before{content:"\efde"}.ri-pencil-fill:before{content:"\efdf"}.ri-pencil-line:before{content:"\efe0"}.ri-pencil-ruler-2-fill:before{content:"\efe1"}.ri-pencil-ruler-2-line:before{content:"\efe2"}.ri-pencil-ruler-fill:before{content:"\efe3"}.ri-pencil-ruler-line:before{content:"\efe4"}.ri-percent-fill:before{content:"\efe5"}.ri-percent-line:before{content:"\efe6"}.ri-phone-camera-fill:before{content:"\efe7"}.ri-phone-camera-line:before{content:"\efe8"}.ri-phone-fill:before{content:"\efe9"}.ri-phone-find-fill:before{content:"\efea"}.ri-phone-find-line:before{content:"\efeb"}.ri-phone-line:before{content:"\efec"}.ri-phone-lock-fill:before{content:"\efed"}.ri-phone-lock-line:before{content:"\efee"}.ri-picture-in-picture-2-fill:before{content:"\efef"}.ri-picture-in-picture-2-line:before{content:"\eff0"}.ri-picture-in-picture-exit-fill:before{content:"\eff1"}.ri-picture-in-picture-exit-line:before{content:"\eff2"}.ri-picture-in-picture-fill:before{content:"\eff3"}.ri-picture-in-picture-line:before{content:"\eff4"}.ri-pie-chart-2-fill:before{content:"\eff5"}.ri-pie-chart-2-line:before{content:"\eff6"}.ri-pie-chart-box-fill:before{content:"\eff7"}.ri-pie-chart-box-line:before{content:"\eff8"}.ri-pie-chart-fill:before{content:"\eff9"}.ri-pie-chart-line:before{content:"\effa"}.ri-pin-distance-fill:before{content:"\effb"}.ri-pin-distance-line:before{content:"\effc"}.ri-ping-pong-fill:before{content:"\effd"}.ri-ping-pong-line:before{content:"\effe"}.ri-pinterest-fill:before{content:"\efff"}.ri-pinterest-line:before{content:"\f000"}.ri-pinyin-input:before{content:"\f001"}.ri-pixelfed-fill:before{content:"\f002"}.ri-pixelfed-line:before{content:"\f003"}.ri-plane-fill:before{content:"\f004"}.ri-plane-line:before{content:"\f005"}.ri-plant-fill:before{content:"\f006"}.ri-plant-line:before{content:"\f007"}.ri-play-circle-fill:before{content:"\f008"}.ri-play-circle-line:before{content:"\f009"}.ri-play-fill:before{content:"\f00a"}.ri-play-line:before{content:"\f00b"}.ri-play-list-2-fill:before{content:"\f00c"}.ri-play-list-2-line:before{content:"\f00d"}.ri-play-list-add-fill:before{content:"\f00e"}.ri-play-list-add-line:before{content:"\f00f"}.ri-play-list-fill:before{content:"\f010"}.ri-play-list-line:before{content:"\f011"}.ri-play-mini-fill:before{content:"\f012"}.ri-play-mini-line:before{content:"\f013"}.ri-playstation-fill:before{content:"\f014"}.ri-playstation-line:before{content:"\f015"}.ri-plug-2-fill:before{content:"\f016"}.ri-plug-2-line:before{content:"\f017"}.ri-plug-fill:before{content:"\f018"}.ri-plug-line:before{content:"\f019"}.ri-polaroid-2-fill:before{content:"\f01a"}.ri-polaroid-2-line:before{content:"\f01b"}.ri-polaroid-fill:before{content:"\f01c"}.ri-polaroid-line:before{content:"\f01d"}.ri-police-car-fill:before{content:"\f01e"}.ri-police-car-line:before{content:"\f01f"}.ri-price-tag-2-fill:before{content:"\f020"}.ri-price-tag-2-line:before{content:"\f021"}.ri-price-tag-3-fill:before{content:"\f022"}.ri-price-tag-3-line:before{content:"\f023"}.ri-price-tag-fill:before{content:"\f024"}.ri-price-tag-line:before{content:"\f025"}.ri-printer-cloud-fill:before{content:"\f026"}.ri-printer-cloud-line:before{content:"\f027"}.ri-printer-fill:before{content:"\f028"}.ri-printer-line:before{content:"\f029"}.ri-product-hunt-fill:before{content:"\f02a"}.ri-product-hunt-line:before{content:"\f02b"}.ri-profile-fill:before{content:"\f02c"}.ri-profile-line:before{content:"\f02d"}.ri-projector-2-fill:before{content:"\f02e"}.ri-projector-2-line:before{content:"\f02f"}.ri-projector-fill:before{content:"\f030"}.ri-projector-line:before{content:"\f031"}.ri-psychotherapy-fill:before{content:"\f032"}.ri-psychotherapy-line:before{content:"\f033"}.ri-pulse-fill:before{content:"\f034"}.ri-pulse-line:before{content:"\f035"}.ri-pushpin-2-fill:before{content:"\f036"}.ri-pushpin-2-line:before{content:"\f037"}.ri-pushpin-fill:before{content:"\f038"}.ri-pushpin-line:before{content:"\f039"}.ri-qq-fill:before{content:"\f03a"}.ri-qq-line:before{content:"\f03b"}.ri-qr-code-fill:before{content:"\f03c"}.ri-qr-code-line:before{content:"\f03d"}.ri-qr-scan-2-fill:before{content:"\f03e"}.ri-qr-scan-2-line:before{content:"\f03f"}.ri-qr-scan-fill:before{content:"\f040"}.ri-qr-scan-line:before{content:"\f041"}.ri-question-answer-fill:before{content:"\f042"}.ri-question-answer-line:before{content:"\f043"}.ri-question-fill:before{content:"\f044"}.ri-question-line:before{content:"\f045"}.ri-question-mark:before{content:"\f046"}.ri-questionnaire-fill:before{content:"\f047"}.ri-questionnaire-line:before{content:"\f048"}.ri-quill-pen-fill:before{content:"\f049"}.ri-quill-pen-line:before{content:"\f04a"}.ri-radar-fill:before{content:"\f04b"}.ri-radar-line:before{content:"\f04c"}.ri-radio-2-fill:before{content:"\f04d"}.ri-radio-2-line:before{content:"\f04e"}.ri-radio-button-fill:before{content:"\f04f"}.ri-radio-button-line:before{content:"\f050"}.ri-radio-fill:before{content:"\f051"}.ri-radio-line:before{content:"\f052"}.ri-rainbow-fill:before{content:"\f053"}.ri-rainbow-line:before{content:"\f054"}.ri-rainy-fill:before{content:"\f055"}.ri-rainy-line:before{content:"\f056"}.ri-reactjs-fill:before{content:"\f057"}.ri-reactjs-line:before{content:"\f058"}.ri-record-circle-fill:before{content:"\f059"}.ri-record-circle-line:before{content:"\f05a"}.ri-record-mail-fill:before{content:"\f05b"}.ri-record-mail-line:before{content:"\f05c"}.ri-recycle-fill:before{content:"\f05d"}.ri-recycle-line:before{content:"\f05e"}.ri-red-packet-fill:before{content:"\f05f"}.ri-red-packet-line:before{content:"\f060"}.ri-reddit-fill:before{content:"\f061"}.ri-reddit-line:before{content:"\f062"}.ri-refresh-fill:before{content:"\f063"}.ri-refresh-line:before{content:"\f064"}.ri-refund-2-fill:before{content:"\f065"}.ri-refund-2-line:before{content:"\f066"}.ri-refund-fill:before{content:"\f067"}.ri-refund-line:before{content:"\f068"}.ri-registered-fill:before{content:"\f069"}.ri-registered-line:before{content:"\f06a"}.ri-remixicon-fill:before{content:"\f06b"}.ri-remixicon-line:before{content:"\f06c"}.ri-remote-control-2-fill:before{content:"\f06d"}.ri-remote-control-2-line:before{content:"\f06e"}.ri-remote-control-fill:before{content:"\f06f"}.ri-remote-control-line:before{content:"\f070"}.ri-repeat-2-fill:before{content:"\f071"}.ri-repeat-2-line:before{content:"\f072"}.ri-repeat-fill:before{content:"\f073"}.ri-repeat-line:before{content:"\f074"}.ri-repeat-one-fill:before{content:"\f075"}.ri-repeat-one-line:before{content:"\f076"}.ri-reply-all-fill:before{content:"\f077"}.ri-reply-all-line:before{content:"\f078"}.ri-reply-fill:before{content:"\f079"}.ri-reply-line:before{content:"\f07a"}.ri-reserved-fill:before{content:"\f07b"}.ri-reserved-line:before{content:"\f07c"}.ri-rest-time-fill:before{content:"\f07d"}.ri-rest-time-line:before{content:"\f07e"}.ri-restart-fill:before{content:"\f07f"}.ri-restart-line:before{content:"\f080"}.ri-restaurant-2-fill:before{content:"\f081"}.ri-restaurant-2-line:before{content:"\f082"}.ri-restaurant-fill:before{content:"\f083"}.ri-restaurant-line:before{content:"\f084"}.ri-rewind-fill:before{content:"\f085"}.ri-rewind-line:before{content:"\f086"}.ri-rewind-mini-fill:before{content:"\f087"}.ri-rewind-mini-line:before{content:"\f088"}.ri-rhythm-fill:before{content:"\f089"}.ri-rhythm-line:before{content:"\f08a"}.ri-riding-fill:before{content:"\f08b"}.ri-riding-line:before{content:"\f08c"}.ri-road-map-fill:before{content:"\f08d"}.ri-road-map-line:before{content:"\f08e"}.ri-roadster-fill:before{content:"\f08f"}.ri-roadster-line:before{content:"\f090"}.ri-robot-fill:before{content:"\f091"}.ri-robot-line:before{content:"\f092"}.ri-rocket-2-fill:before{content:"\f093"}.ri-rocket-2-line:before{content:"\f094"}.ri-rocket-fill:before{content:"\f095"}.ri-rocket-line:before{content:"\f096"}.ri-rotate-lock-fill:before{content:"\f097"}.ri-rotate-lock-line:before{content:"\f098"}.ri-rounded-corner:before{content:"\f099"}.ri-route-fill:before{content:"\f09a"}.ri-route-line:before{content:"\f09b"}.ri-router-fill:before{content:"\f09c"}.ri-router-line:before{content:"\f09d"}.ri-rss-fill:before{content:"\f09e"}.ri-rss-line:before{content:"\f09f"}.ri-ruler-2-fill:before{content:"\f0a0"}.ri-ruler-2-line:before{content:"\f0a1"}.ri-ruler-fill:before{content:"\f0a2"}.ri-ruler-line:before{content:"\f0a3"}.ri-run-fill:before{content:"\f0a4"}.ri-run-line:before{content:"\f0a5"}.ri-safari-fill:before{content:"\f0a6"}.ri-safari-line:before{content:"\f0a7"}.ri-safe-2-fill:before{content:"\f0a8"}.ri-safe-2-line:before{content:"\f0a9"}.ri-safe-fill:before{content:"\f0aa"}.ri-safe-line:before{content:"\f0ab"}.ri-sailboat-fill:before{content:"\f0ac"}.ri-sailboat-line:before{content:"\f0ad"}.ri-save-2-fill:before{content:"\f0ae"}.ri-save-2-line:before{content:"\f0af"}.ri-save-3-fill:before{content:"\f0b0"}.ri-save-3-line:before{content:"\f0b1"}.ri-save-fill:before{content:"\f0b2"}.ri-save-line:before{content:"\f0b3"}.ri-scales-2-fill:before{content:"\f0b4"}.ri-scales-2-line:before{content:"\f0b5"}.ri-scales-3-fill:before{content:"\f0b6"}.ri-scales-3-line:before{content:"\f0b7"}.ri-scales-fill:before{content:"\f0b8"}.ri-scales-line:before{content:"\f0b9"}.ri-scan-2-fill:before{content:"\f0ba"}.ri-scan-2-line:before{content:"\f0bb"}.ri-scan-fill:before{content:"\f0bc"}.ri-scan-line:before{content:"\f0bd"}.ri-scissors-2-fill:before{content:"\f0be"}.ri-scissors-2-line:before{content:"\f0bf"}.ri-scissors-cut-fill:before{content:"\f0c0"}.ri-scissors-cut-line:before{content:"\f0c1"}.ri-scissors-fill:before{content:"\f0c2"}.ri-scissors-line:before{content:"\f0c3"}.ri-screenshot-2-fill:before{content:"\f0c4"}.ri-screenshot-2-line:before{content:"\f0c5"}.ri-screenshot-fill:before{content:"\f0c6"}.ri-screenshot-line:before{content:"\f0c7"}.ri-sd-card-fill:before{content:"\f0c8"}.ri-sd-card-line:before{content:"\f0c9"}.ri-sd-card-mini-fill:before{content:"\f0ca"}.ri-sd-card-mini-line:before{content:"\f0cb"}.ri-search-2-fill:before{content:"\f0cc"}.ri-search-2-line:before{content:"\f0cd"}.ri-search-eye-fill:before{content:"\f0ce"}.ri-search-eye-line:before{content:"\f0cf"}.ri-search-fill:before{content:"\f0d0"}.ri-search-line:before{content:"\f0d1"}.ri-secure-payment-fill:before{content:"\f0d2"}.ri-secure-payment-line:before{content:"\f0d3"}.ri-seedling-fill:before{content:"\f0d4"}.ri-seedling-line:before{content:"\f0d5"}.ri-send-backward:before{content:"\f0d6"}.ri-send-plane-2-fill:before{content:"\f0d7"}.ri-send-plane-2-line:before{content:"\f0d8"}.ri-send-plane-fill:before{content:"\f0d9"}.ri-send-plane-line:before{content:"\f0da"}.ri-send-to-back:before{content:"\f0db"}.ri-sensor-fill:before{content:"\f0dc"}.ri-sensor-line:before{content:"\f0dd"}.ri-separator:before{content:"\f0de"}.ri-server-fill:before{content:"\f0df"}.ri-server-line:before{content:"\f0e0"}.ri-service-fill:before{content:"\f0e1"}.ri-service-line:before{content:"\f0e2"}.ri-settings-2-fill:before{content:"\f0e3"}.ri-settings-2-line:before{content:"\f0e4"}.ri-settings-3-fill:before{content:"\f0e5"}.ri-settings-3-line:before{content:"\f0e6"}.ri-settings-4-fill:before{content:"\f0e7"}.ri-settings-4-line:before{content:"\f0e8"}.ri-settings-5-fill:before{content:"\f0e9"}.ri-settings-5-line:before{content:"\f0ea"}.ri-settings-6-fill:before{content:"\f0eb"}.ri-settings-6-line:before{content:"\f0ec"}.ri-settings-fill:before{content:"\f0ed"}.ri-settings-line:before{content:"\f0ee"}.ri-shape-2-fill:before{content:"\f0ef"}.ri-shape-2-line:before{content:"\f0f0"}.ri-shape-fill:before{content:"\f0f1"}.ri-shape-line:before{content:"\f0f2"}.ri-share-box-fill:before{content:"\f0f3"}.ri-share-box-line:before{content:"\f0f4"}.ri-share-circle-fill:before{content:"\f0f5"}.ri-share-circle-line:before{content:"\f0f6"}.ri-share-fill:before{content:"\f0f7"}.ri-share-forward-2-fill:before{content:"\f0f8"}.ri-share-forward-2-line:before{content:"\f0f9"}.ri-share-forward-box-fill:before{content:"\f0fa"}.ri-share-forward-box-line:before{content:"\f0fb"}.ri-share-forward-fill:before{content:"\f0fc"}.ri-share-forward-line:before{content:"\f0fd"}.ri-share-line:before{content:"\f0fe"}.ri-shield-check-fill:before{content:"\f0ff"}.ri-shield-check-line:before{content:"\f100"}.ri-shield-cross-fill:before{content:"\f101"}.ri-shield-cross-line:before{content:"\f102"}.ri-shield-fill:before{content:"\f103"}.ri-shield-flash-fill:before{content:"\f104"}.ri-shield-flash-line:before{content:"\f105"}.ri-shield-keyhole-fill:before{content:"\f106"}.ri-shield-keyhole-line:before{content:"\f107"}.ri-shield-line:before{content:"\f108"}.ri-shield-star-fill:before{content:"\f109"}.ri-shield-star-line:before{content:"\f10a"}.ri-shield-user-fill:before{content:"\f10b"}.ri-shield-user-line:before{content:"\f10c"}.ri-ship-2-fill:before{content:"\f10d"}.ri-ship-2-line:before{content:"\f10e"}.ri-ship-fill:before{content:"\f10f"}.ri-ship-line:before{content:"\f110"}.ri-shirt-fill:before{content:"\f111"}.ri-shirt-line:before{content:"\f112"}.ri-shopping-bag-2-fill:before{content:"\f113"}.ri-shopping-bag-2-line:before{content:"\f114"}.ri-shopping-bag-3-fill:before{content:"\f115"}.ri-shopping-bag-3-line:before{content:"\f116"}.ri-shopping-bag-fill:before{content:"\f117"}.ri-shopping-bag-line:before{content:"\f118"}.ri-shopping-basket-2-fill:before{content:"\f119"}.ri-shopping-basket-2-line:before{content:"\f11a"}.ri-shopping-basket-fill:before{content:"\f11b"}.ri-shopping-basket-line:before{content:"\f11c"}.ri-shopping-cart-2-fill:before{content:"\f11d"}.ri-shopping-cart-2-line:before{content:"\f11e"}.ri-shopping-cart-fill:before{content:"\f11f"}.ri-shopping-cart-line:before{content:"\f120"}.ri-showers-fill:before{content:"\f121"}.ri-showers-line:before{content:"\f122"}.ri-shuffle-fill:before{content:"\f123"}.ri-shuffle-line:before{content:"\f124"}.ri-shut-down-fill:before{content:"\f125"}.ri-shut-down-line:before{content:"\f126"}.ri-side-bar-fill:before{content:"\f127"}.ri-side-bar-line:before{content:"\f128"}.ri-signal-tower-fill:before{content:"\f129"}.ri-signal-tower-line:before{content:"\f12a"}.ri-signal-wifi-1-fill:before{content:"\f12b"}.ri-signal-wifi-1-line:before{content:"\f12c"}.ri-signal-wifi-2-fill:before{content:"\f12d"}.ri-signal-wifi-2-line:before{content:"\f12e"}.ri-signal-wifi-3-fill:before{content:"\f12f"}.ri-signal-wifi-3-line:before{content:"\f130"}.ri-signal-wifi-error-fill:before{content:"\f131"}.ri-signal-wifi-error-line:before{content:"\f132"}.ri-signal-wifi-fill:before{content:"\f133"}.ri-signal-wifi-line:before{content:"\f134"}.ri-signal-wifi-off-fill:before{content:"\f135"}.ri-signal-wifi-off-line:before{content:"\f136"}.ri-sim-card-2-fill:before{content:"\f137"}.ri-sim-card-2-line:before{content:"\f138"}.ri-sim-card-fill:before{content:"\f139"}.ri-sim-card-line:before{content:"\f13a"}.ri-single-quotes-l:before{content:"\f13b"}.ri-single-quotes-r:before{content:"\f13c"}.ri-sip-fill:before{content:"\f13d"}.ri-sip-line:before{content:"\f13e"}.ri-skip-back-fill:before{content:"\f13f"}.ri-skip-back-line:before{content:"\f140"}.ri-skip-back-mini-fill:before{content:"\f141"}.ri-skip-back-mini-line:before{content:"\f142"}.ri-skip-forward-fill:before{content:"\f143"}.ri-skip-forward-line:before{content:"\f144"}.ri-skip-forward-mini-fill:before{content:"\f145"}.ri-skip-forward-mini-line:before{content:"\f146"}.ri-skull-2-fill:before{content:"\f147"}.ri-skull-2-line:before{content:"\f148"}.ri-skull-fill:before{content:"\f149"}.ri-skull-line:before{content:"\f14a"}.ri-skype-fill:before{content:"\f14b"}.ri-skype-line:before{content:"\f14c"}.ri-slack-fill:before{content:"\f14d"}.ri-slack-line:before{content:"\f14e"}.ri-slice-fill:before{content:"\f14f"}.ri-slice-line:before{content:"\f150"}.ri-slideshow-2-fill:before{content:"\f151"}.ri-slideshow-2-line:before{content:"\f152"}.ri-slideshow-3-fill:before{content:"\f153"}.ri-slideshow-3-line:before{content:"\f154"}.ri-slideshow-4-fill:before{content:"\f155"}.ri-slideshow-4-line:before{content:"\f156"}.ri-slideshow-fill:before{content:"\f157"}.ri-slideshow-line:before{content:"\f158"}.ri-smartphone-fill:before{content:"\f159"}.ri-smartphone-line:before{content:"\f15a"}.ri-snapchat-fill:before{content:"\f15b"}.ri-snapchat-line:before{content:"\f15c"}.ri-snowy-fill:before{content:"\f15d"}.ri-snowy-line:before{content:"\f15e"}.ri-sort-asc:before{content:"\f15f"}.ri-sort-desc:before{content:"\f160"}.ri-sound-module-fill:before{content:"\f161"}.ri-sound-module-line:before{content:"\f162"}.ri-soundcloud-fill:before{content:"\f163"}.ri-soundcloud-line:before{content:"\f164"}.ri-space-ship-fill:before{content:"\f165"}.ri-space-ship-line:before{content:"\f166"}.ri-space:before{content:"\f167"}.ri-spam-2-fill:before{content:"\f168"}.ri-spam-2-line:before{content:"\f169"}.ri-spam-3-fill:before{content:"\f16a"}.ri-spam-3-line:before{content:"\f16b"}.ri-spam-fill:before{content:"\f16c"}.ri-spam-line:before{content:"\f16d"}.ri-speaker-2-fill:before{content:"\f16e"}.ri-speaker-2-line:before{content:"\f16f"}.ri-speaker-3-fill:before{content:"\f170"}.ri-speaker-3-line:before{content:"\f171"}.ri-speaker-fill:before{content:"\f172"}.ri-speaker-line:before{content:"\f173"}.ri-spectrum-fill:before{content:"\f174"}.ri-spectrum-line:before{content:"\f175"}.ri-speed-fill:before{content:"\f176"}.ri-speed-line:before{content:"\f177"}.ri-speed-mini-fill:before{content:"\f178"}.ri-speed-mini-line:before{content:"\f179"}.ri-split-cells-horizontal:before{content:"\f17a"}.ri-split-cells-vertical:before{content:"\f17b"}.ri-spotify-fill:before{content:"\f17c"}.ri-spotify-line:before{content:"\f17d"}.ri-spy-fill:before{content:"\f17e"}.ri-spy-line:before{content:"\f17f"}.ri-stack-fill:before{content:"\f180"}.ri-stack-line:before{content:"\f181"}.ri-stack-overflow-fill:before{content:"\f182"}.ri-stack-overflow-line:before{content:"\f183"}.ri-stackshare-fill:before{content:"\f184"}.ri-stackshare-line:before{content:"\f185"}.ri-star-fill:before{content:"\f186"}.ri-star-half-fill:before{content:"\f187"}.ri-star-half-line:before{content:"\f188"}.ri-star-half-s-fill:before{content:"\f189"}.ri-star-half-s-line:before{content:"\f18a"}.ri-star-line:before{content:"\f18b"}.ri-star-s-fill:before{content:"\f18c"}.ri-star-s-line:before{content:"\f18d"}.ri-star-smile-fill:before{content:"\f18e"}.ri-star-smile-line:before{content:"\f18f"}.ri-steam-fill:before{content:"\f190"}.ri-steam-line:before{content:"\f191"}.ri-steering-2-fill:before{content:"\f192"}.ri-steering-2-line:before{content:"\f193"}.ri-steering-fill:before{content:"\f194"}.ri-steering-line:before{content:"\f195"}.ri-stethoscope-fill:before{content:"\f196"}.ri-stethoscope-line:before{content:"\f197"}.ri-sticky-note-2-fill:before{content:"\f198"}.ri-sticky-note-2-line:before{content:"\f199"}.ri-sticky-note-fill:before{content:"\f19a"}.ri-sticky-note-line:before{content:"\f19b"}.ri-stock-fill:before{content:"\f19c"}.ri-stock-line:before{content:"\f19d"}.ri-stop-circle-fill:before{content:"\f19e"}.ri-stop-circle-line:before{content:"\f19f"}.ri-stop-fill:before{content:"\f1a0"}.ri-stop-line:before{content:"\f1a1"}.ri-stop-mini-fill:before{content:"\f1a2"}.ri-stop-mini-line:before{content:"\f1a3"}.ri-store-2-fill:before{content:"\f1a4"}.ri-store-2-line:before{content:"\f1a5"}.ri-store-3-fill:before{content:"\f1a6"}.ri-store-3-line:before{content:"\f1a7"}.ri-store-fill:before{content:"\f1a8"}.ri-store-line:before{content:"\f1a9"}.ri-strikethrough-2:before{content:"\f1aa"}.ri-strikethrough:before{content:"\f1ab"}.ri-subscript-2:before{content:"\f1ac"}.ri-subscript:before{content:"\f1ad"}.ri-subtract-fill:before{content:"\f1ae"}.ri-subtract-line:before{content:"\f1af"}.ri-subway-fill:before{content:"\f1b0"}.ri-subway-line:before{content:"\f1b1"}.ri-subway-wifi-fill:before{content:"\f1b2"}.ri-subway-wifi-line:before{content:"\f1b3"}.ri-suitcase-2-fill:before{content:"\f1b4"}.ri-suitcase-2-line:before{content:"\f1b5"}.ri-suitcase-3-fill:before{content:"\f1b6"}.ri-suitcase-3-line:before{content:"\f1b7"}.ri-suitcase-fill:before{content:"\f1b8"}.ri-suitcase-line:before{content:"\f1b9"}.ri-sun-cloudy-fill:before{content:"\f1ba"}.ri-sun-cloudy-line:before{content:"\f1bb"}.ri-sun-fill:before{content:"\f1bc"}.ri-sun-foggy-fill:before{content:"\f1bd"}.ri-sun-foggy-line:before{content:"\f1be"}.ri-sun-line:before{content:"\f1bf"}.ri-superscript-2:before{content:"\f1c0"}.ri-superscript:before{content:"\f1c1"}.ri-surgical-mask-fill:before{content:"\f1c2"}.ri-surgical-mask-line:before{content:"\f1c3"}.ri-surround-sound-fill:before{content:"\f1c4"}.ri-surround-sound-line:before{content:"\f1c5"}.ri-survey-fill:before{content:"\f1c6"}.ri-survey-line:before{content:"\f1c7"}.ri-swap-box-fill:before{content:"\f1c8"}.ri-swap-box-line:before{content:"\f1c9"}.ri-swap-fill:before{content:"\f1ca"}.ri-swap-line:before{content:"\f1cb"}.ri-switch-fill:before{content:"\f1cc"}.ri-switch-line:before{content:"\f1cd"}.ri-sword-fill:before{content:"\f1ce"}.ri-sword-line:before{content:"\f1cf"}.ri-syringe-fill:before{content:"\f1d0"}.ri-syringe-line:before{content:"\f1d1"}.ri-t-box-fill:before{content:"\f1d2"}.ri-t-box-line:before{content:"\f1d3"}.ri-t-shirt-2-fill:before{content:"\f1d4"}.ri-t-shirt-2-line:before{content:"\f1d5"}.ri-t-shirt-air-fill:before{content:"\f1d6"}.ri-t-shirt-air-line:before{content:"\f1d7"}.ri-t-shirt-fill:before{content:"\f1d8"}.ri-t-shirt-line:before{content:"\f1d9"}.ri-table-2:before{content:"\f1da"}.ri-table-alt-fill:before{content:"\f1db"}.ri-table-alt-line:before{content:"\f1dc"}.ri-table-fill:before{content:"\f1dd"}.ri-table-line:before{content:"\f1de"}.ri-tablet-fill:before{content:"\f1df"}.ri-tablet-line:before{content:"\f1e0"}.ri-takeaway-fill:before{content:"\f1e1"}.ri-takeaway-line:before{content:"\f1e2"}.ri-taobao-fill:before{content:"\f1e3"}.ri-taobao-line:before{content:"\f1e4"}.ri-tape-fill:before{content:"\f1e5"}.ri-tape-line:before{content:"\f1e6"}.ri-task-fill:before{content:"\f1e7"}.ri-task-line:before{content:"\f1e8"}.ri-taxi-fill:before{content:"\f1e9"}.ri-taxi-line:before{content:"\f1ea"}.ri-taxi-wifi-fill:before{content:"\f1eb"}.ri-taxi-wifi-line:before{content:"\f1ec"}.ri-team-fill:before{content:"\f1ed"}.ri-team-line:before{content:"\f1ee"}.ri-telegram-fill:before{content:"\f1ef"}.ri-telegram-line:before{content:"\f1f0"}.ri-temp-cold-fill:before{content:"\f1f1"}.ri-temp-cold-line:before{content:"\f1f2"}.ri-temp-hot-fill:before{content:"\f1f3"}.ri-temp-hot-line:before{content:"\f1f4"}.ri-terminal-box-fill:before{content:"\f1f5"}.ri-terminal-box-line:before{content:"\f1f6"}.ri-terminal-fill:before{content:"\f1f7"}.ri-terminal-line:before{content:"\f1f8"}.ri-terminal-window-fill:before{content:"\f1f9"}.ri-terminal-window-line:before{content:"\f1fa"}.ri-test-tube-fill:before{content:"\f1fb"}.ri-test-tube-line:before{content:"\f1fc"}.ri-text-direction-l:before{content:"\f1fd"}.ri-text-direction-r:before{content:"\f1fe"}.ri-text-spacing:before{content:"\f1ff"}.ri-text-wrap:before{content:"\f200"}.ri-text:before{content:"\f201"}.ri-thermometer-fill:before{content:"\f202"}.ri-thermometer-line:before{content:"\f203"}.ri-thumb-down-fill:before{content:"\f204"}.ri-thumb-down-line:before{content:"\f205"}.ri-thumb-up-fill:before{content:"\f206"}.ri-thumb-up-line:before{content:"\f207"}.ri-thunderstorms-fill:before{content:"\f208"}.ri-thunderstorms-line:before{content:"\f209"}.ri-ticket-2-fill:before{content:"\f20a"}.ri-ticket-2-line:before{content:"\f20b"}.ri-ticket-fill:before{content:"\f20c"}.ri-ticket-line:before{content:"\f20d"}.ri-time-fill:before{content:"\f20e"}.ri-time-line:before{content:"\f20f"}.ri-timer-2-fill:before{content:"\f210"}.ri-timer-2-line:before{content:"\f211"}.ri-timer-fill:before{content:"\f212"}.ri-timer-flash-fill:before{content:"\f213"}.ri-timer-flash-line:before{content:"\f214"}.ri-timer-line:before{content:"\f215"}.ri-todo-fill:before{content:"\f216"}.ri-todo-line:before{content:"\f217"}.ri-toggle-fill:before{content:"\f218"}.ri-toggle-line:before{content:"\f219"}.ri-tools-fill:before{content:"\f21a"}.ri-tools-line:before{content:"\f21b"}.ri-tornado-fill:before{content:"\f21c"}.ri-tornado-line:before{content:"\f21d"}.ri-trademark-fill:before{content:"\f21e"}.ri-trademark-line:before{content:"\f21f"}.ri-traffic-light-fill:before{content:"\f220"}.ri-traffic-light-line:before{content:"\f221"}.ri-train-fill:before{content:"\f222"}.ri-train-line:before{content:"\f223"}.ri-train-wifi-fill:before{content:"\f224"}.ri-train-wifi-line:before{content:"\f225"}.ri-translate-2:before{content:"\f226"}.ri-translate:before{content:"\f227"}.ri-travesti-fill:before{content:"\f228"}.ri-travesti-line:before{content:"\f229"}.ri-treasure-map-fill:before{content:"\f22a"}.ri-treasure-map-line:before{content:"\f22b"}.ri-trello-fill:before{content:"\f22c"}.ri-trello-line:before{content:"\f22d"}.ri-trophy-fill:before{content:"\f22e"}.ri-trophy-line:before{content:"\f22f"}.ri-truck-fill:before{content:"\f230"}.ri-truck-line:before{content:"\f231"}.ri-tumblr-fill:before{content:"\f232"}.ri-tumblr-line:before{content:"\f233"}.ri-tv-2-fill:before{content:"\f234"}.ri-tv-2-line:before{content:"\f235"}.ri-tv-fill:before{content:"\f236"}.ri-tv-line:before{content:"\f237"}.ri-twitch-fill:before{content:"\f238"}.ri-twitch-line:before{content:"\f239"}.ri-twitter-fill:before{content:"\f23a"}.ri-twitter-line:before{content:"\f23b"}.ri-typhoon-fill:before{content:"\f23c"}.ri-typhoon-line:before{content:"\f23d"}.ri-u-disk-fill:before{content:"\f23e"}.ri-u-disk-line:before{content:"\f23f"}.ri-ubuntu-fill:before{content:"\f240"}.ri-ubuntu-line:before{content:"\f241"}.ri-umbrella-fill:before{content:"\f242"}.ri-umbrella-line:before{content:"\f243"}.ri-underline:before{content:"\f244"}.ri-uninstall-fill:before{content:"\f245"}.ri-uninstall-line:before{content:"\f246"}.ri-unsplash-fill:before{content:"\f247"}.ri-unsplash-line:before{content:"\f248"}.ri-upload-2-fill:before{content:"\f249"}.ri-upload-2-line:before{content:"\f24a"}.ri-upload-cloud-2-fill:before{content:"\f24b"}.ri-upload-cloud-2-line:before{content:"\f24c"}.ri-upload-cloud-fill:before{content:"\f24d"}.ri-upload-cloud-line:before{content:"\f24e"}.ri-upload-fill:before{content:"\f24f"}.ri-upload-line:before{content:"\f250"}.ri-usb-fill:before{content:"\f251"}.ri-usb-line:before{content:"\f252"}.ri-user-2-fill:before{content:"\f253"}.ri-user-2-line:before{content:"\f254"}.ri-user-3-fill:before{content:"\f255"}.ri-user-3-line:before{content:"\f256"}.ri-user-4-fill:before{content:"\f257"}.ri-user-4-line:before{content:"\f258"}.ri-user-5-fill:before{content:"\f259"}.ri-user-5-line:before{content:"\f25a"}.ri-user-6-fill:before{content:"\f25b"}.ri-user-6-line:before{content:"\f25c"}.ri-user-add-fill:before{content:"\f25d"}.ri-user-add-line:before{content:"\f25e"}.ri-user-fill:before{content:"\f25f"}.ri-user-follow-fill:before{content:"\f260"}.ri-user-follow-line:before{content:"\f261"}.ri-user-heart-fill:before{content:"\f262"}.ri-user-heart-line:before{content:"\f263"}.ri-user-line:before{content:"\f264"}.ri-user-location-fill:before{content:"\f265"}.ri-user-location-line:before{content:"\f266"}.ri-user-received-2-fill:before{content:"\f267"}.ri-user-received-2-line:before{content:"\f268"}.ri-user-received-fill:before{content:"\f269"}.ri-user-received-line:before{content:"\f26a"}.ri-user-search-fill:before{content:"\f26b"}.ri-user-search-line:before{content:"\f26c"}.ri-user-settings-fill:before{content:"\f26d"}.ri-user-settings-line:before{content:"\f26e"}.ri-user-shared-2-fill:before{content:"\f26f"}.ri-user-shared-2-line:before{content:"\f270"}.ri-user-shared-fill:before{content:"\f271"}.ri-user-shared-line:before{content:"\f272"}.ri-user-smile-fill:before{content:"\f273"}.ri-user-smile-line:before{content:"\f274"}.ri-user-star-fill:before{content:"\f275"}.ri-user-star-line:before{content:"\f276"}.ri-user-unfollow-fill:before{content:"\f277"}.ri-user-unfollow-line:before{content:"\f278"}.ri-user-voice-fill:before{content:"\f279"}.ri-user-voice-line:before{content:"\f27a"}.ri-video-add-fill:before{content:"\f27b"}.ri-video-add-line:before{content:"\f27c"}.ri-video-chat-fill:before{content:"\f27d"}.ri-video-chat-line:before{content:"\f27e"}.ri-video-download-fill:before{content:"\f27f"}.ri-video-download-line:before{content:"\f280"}.ri-video-fill:before{content:"\f281"}.ri-video-line:before{content:"\f282"}.ri-video-upload-fill:before{content:"\f283"}.ri-video-upload-line:before{content:"\f284"}.ri-vidicon-2-fill:before{content:"\f285"}.ri-vidicon-2-line:before{content:"\f286"}.ri-vidicon-fill:before{content:"\f287"}.ri-vidicon-line:before{content:"\f288"}.ri-vimeo-fill:before{content:"\f289"}.ri-vimeo-line:before{content:"\f28a"}.ri-vip-crown-2-fill:before{content:"\f28b"}.ri-vip-crown-2-line:before{content:"\f28c"}.ri-vip-crown-fill:before{content:"\f28d"}.ri-vip-crown-line:before{content:"\f28e"}.ri-vip-diamond-fill:before{content:"\f28f"}.ri-vip-diamond-line:before{content:"\f290"}.ri-vip-fill:before{content:"\f291"}.ri-vip-line:before{content:"\f292"}.ri-virus-fill:before{content:"\f293"}.ri-virus-line:before{content:"\f294"}.ri-visa-fill:before{content:"\f295"}.ri-visa-line:before{content:"\f296"}.ri-voice-recognition-fill:before{content:"\f297"}.ri-voice-recognition-line:before{content:"\f298"}.ri-voiceprint-fill:before{content:"\f299"}.ri-voiceprint-line:before{content:"\f29a"}.ri-volume-down-fill:before{content:"\f29b"}.ri-volume-down-line:before{content:"\f29c"}.ri-volume-mute-fill:before{content:"\f29d"}.ri-volume-mute-line:before{content:"\f29e"}.ri-volume-off-vibrate-fill:before{content:"\f29f"}.ri-volume-off-vibrate-line:before{content:"\f2a0"}.ri-volume-up-fill:before{content:"\f2a1"}.ri-volume-up-line:before{content:"\f2a2"}.ri-volume-vibrate-fill:before{content:"\f2a3"}.ri-volume-vibrate-line:before{content:"\f2a4"}.ri-vuejs-fill:before{content:"\f2a5"}.ri-vuejs-line:before{content:"\f2a6"}.ri-walk-fill:before{content:"\f2a7"}.ri-walk-line:before{content:"\f2a8"}.ri-wallet-2-fill:before{content:"\f2a9"}.ri-wallet-2-line:before{content:"\f2aa"}.ri-wallet-3-fill:before{content:"\f2ab"}.ri-wallet-3-line:before{content:"\f2ac"}.ri-wallet-fill:before{content:"\f2ad"}.ri-wallet-line:before{content:"\f2ae"}.ri-water-flash-fill:before{content:"\f2af"}.ri-water-flash-line:before{content:"\f2b0"}.ri-webcam-fill:before{content:"\f2b1"}.ri-webcam-line:before{content:"\f2b2"}.ri-wechat-2-fill:before{content:"\f2b3"}.ri-wechat-2-line:before{content:"\f2b4"}.ri-wechat-fill:before{content:"\f2b5"}.ri-wechat-line:before{content:"\f2b6"}.ri-wechat-pay-fill:before{content:"\f2b7"}.ri-wechat-pay-line:before{content:"\f2b8"}.ri-weibo-fill:before{content:"\f2b9"}.ri-weibo-line:before{content:"\f2ba"}.ri-whatsapp-fill:before{content:"\f2bb"}.ri-whatsapp-line:before{content:"\f2bc"}.ri-wheelchair-fill:before{content:"\f2bd"}.ri-wheelchair-line:before{content:"\f2be"}.ri-wifi-fill:before{content:"\f2bf"}.ri-wifi-line:before{content:"\f2c0"}.ri-wifi-off-fill:before{content:"\f2c1"}.ri-wifi-off-line:before{content:"\f2c2"}.ri-window-2-fill:before{content:"\f2c3"}.ri-window-2-line:before{content:"\f2c4"}.ri-window-fill:before{content:"\f2c5"}.ri-window-line:before{content:"\f2c6"}.ri-windows-fill:before{content:"\f2c7"}.ri-windows-line:before{content:"\f2c8"}.ri-windy-fill:before{content:"\f2c9"}.ri-windy-line:before{content:"\f2ca"}.ri-wireless-charging-fill:before{content:"\f2cb"}.ri-wireless-charging-line:before{content:"\f2cc"}.ri-women-fill:before{content:"\f2cd"}.ri-women-line:before{content:"\f2ce"}.ri-wubi-input:before{content:"\f2cf"}.ri-xbox-fill:before{content:"\f2d0"}.ri-xbox-line:before{content:"\f2d1"}.ri-xing-fill:before{content:"\f2d2"}.ri-xing-line:before{content:"\f2d3"}.ri-youtube-fill:before{content:"\f2d4"}.ri-youtube-line:before{content:"\f2d5"}.ri-zcool-fill:before{content:"\f2d6"}.ri-zcool-line:before{content:"\f2d7"}.ri-zhihu-fill:before{content:"\f2d8"}.ri-zhihu-line:before{content:"\f2d9"}.ri-zoom-in-fill:before{content:"\f2da"}.ri-zoom-in-line:before{content:"\f2db"}.ri-zoom-out-fill:before{content:"\f2dc"}.ri-zoom-out-line:before{content:"\f2dd"}.ri-zzz-fill:before{content:"\f2de"}.ri-zzz-line:before{content:"\f2df"} \ No newline at end of file diff --git a/content/components/icons/1/html.inc b/content/components/icons/1/html.inc new file mode 100644 index 000000000..524deff64 --- /dev/null +++ b/content/components/icons/1/html.inc @@ -0,0 +1,4 @@ +Find all available icons here ! + + + \ No newline at end of file diff --git a/content/components/icons/1/index.md b/content/components/icons/1/index.md new file mode 100644 index 000000000..3234c1986 --- /dev/null +++ b/content/components/icons/1/index.md @@ -0,0 +1,23 @@ +--- +title: "Import a font icon library - Remix Icon" +avoidCSSHighlight: true +--- + +_[https://remixicon.com](https://remixicon.com) - Simply Delightful Icon System_ + + +**Install guide:** + +- Copy the CSS into your portal theme (in `backoffice -> look & feel -> theme -> stylesheet`, en Français : `Backoffice -> Apparence -> Thème -> Feuille de style`) +- Make live (save and apply your theme) +- Finally, simply use icons into your pages + +**Usage:** + +In your HTML, on `i` tag, set the class to `ri-` followed by the name of the icon. +For example, for the `alarm-fill` and `alarm-line` icons, try: +- `` +- `` + + +> Note: Attribution is required by [Remix Icon license](https://github.com/Remix-Design/RemixIcon/blob/master/License). The provided CSS contains embedded comments with necessary attribution. While using this code normally, you shouldn't need to do anything additional to provide attribution. \ No newline at end of file diff --git a/content/components/icons/1_bis/css.inc b/content/components/icons/1_bis/css.inc new file mode 100644 index 000000000..56200be84 --- /dev/null +++ b/content/components/icons/1_bis/css.inc @@ -0,0 +1,7 @@ +/*! +* @package IcoFont +* @version 1.0.1 +* @author IcoFont https://icofont.com +* @copyright Copyright (c) 2015 - 2018 IcoFont +* @license - https://icofont.com/license/ +*/@font-face{font-family:IcoFont;font-weight:400;font-style:Regular;src:url(https://static.huwise.com/fonts/icofont/latest/icofont.woff2) format("woff2")}[class*=" icofont-"],[class^=icofont-]{font-family:IcoFont!important;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;white-space:nowrap;word-wrap:normal;direction:ltr;line-height:1;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased}.icofont-angry-monster:before{content:"\e800"}.icofont-bathtub:before{content:"\e801"}.icofont-bird-wings:before{content:"\e802"}.icofont-bow:before{content:"\e803"}.icofont-castle:before{content:"\e804"}.icofont-circuit:before{content:"\e805"}.icofont-crown-king:before{content:"\e806"}.icofont-crown-queen:before{content:"\e807"}.icofont-dart:before{content:"\e808"}.icofont-disability-race:before{content:"\e809"}.icofont-diving-goggle:before{content:"\e80a"}.icofont-eye-open:before{content:"\e80b"}.icofont-flora-flower:before{content:"\e80c"}.icofont-flora:before{content:"\e80d"}.icofont-gift-box:before{content:"\e80e"}.icofont-halloween-pumpkin:before{content:"\e80f"}.icofont-hand-power:before{content:"\e810"}.icofont-hand-thunder:before{content:"\e811"}.icofont-king-monster:before{content:"\e812"}.icofont-love:before{content:"\e813"}.icofont-magician-hat:before{content:"\e814"}.icofont-native-american:before{content:"\e815"}.icofont-owl-look:before{content:"\e816"}.icofont-phoenix:before{content:"\e817"}.icofont-robot-face:before{content:"\e818"}.icofont-sand-clock:before{content:"\e819"}.icofont-shield-alt:before{content:"\e81a"}.icofont-ship-wheel:before{content:"\e81b"}.icofont-skull-danger:before{content:"\e81c"}.icofont-skull-face:before{content:"\e81d"}.icofont-snowmobile:before{content:"\e81e"}.icofont-space-shuttle:before{content:"\e81f"}.icofont-star-shape:before{content:"\e820"}.icofont-swirl:before{content:"\e821"}.icofont-tattoo-wing:before{content:"\e822"}.icofont-throne:before{content:"\e823"}.icofont-tree-alt:before{content:"\e824"}.icofont-triangle:before{content:"\e825"}.icofont-unity-hand:before{content:"\e826"}.icofont-weed:before{content:"\e827"}.icofont-woman-bird:before{content:"\e828"}.icofont-bat:before{content:"\e829"}.icofont-bear-face:before{content:"\e82a"}.icofont-bear-tracks:before{content:"\e82b"}.icofont-bear:before{content:"\e82c"}.icofont-bird-alt:before{content:"\e82d"}.icofont-bird-flying:before{content:"\e82e"}.icofont-bird:before{content:"\e82f"}.icofont-birds:before{content:"\e830"}.icofont-bone:before{content:"\e831"}.icofont-bull:before{content:"\e832"}.icofont-butterfly-alt:before{content:"\e833"}.icofont-butterfly:before{content:"\e834"}.icofont-camel-alt:before{content:"\e835"}.icofont-camel-head:before{content:"\e836"}.icofont-camel:before{content:"\e837"}.icofont-cat-alt-1:before{content:"\e838"}.icofont-cat-alt-2:before{content:"\e839"}.icofont-cat-alt-3:before{content:"\e83a"}.icofont-cat-dog:before{content:"\e83b"}.icofont-cat-face:before{content:"\e83c"}.icofont-cat:before{content:"\e83d"}.icofont-cow-head:before{content:"\e83e"}.icofont-cow:before{content:"\e83f"}.icofont-crab:before{content:"\e840"}.icofont-crocodile:before{content:"\e841"}.icofont-deer-head:before{content:"\e842"}.icofont-dog-alt:before{content:"\e843"}.icofont-dog-barking:before{content:"\e844"}.icofont-dog:before{content:"\e845"}.icofont-dolphin:before{content:"\e846"}.icofont-duck-tracks:before{content:"\e847"}.icofont-eagle-head:before{content:"\e848"}.icofont-eaten-fish:before{content:"\e849"}.icofont-elephant-alt:before{content:"\e84a"}.icofont-elephant-head-alt:before{content:"\e84b"}.icofont-elephant-head:before{content:"\e84c"}.icofont-elephant:before{content:"\e84d"}.icofont-elk:before{content:"\e84e"}.icofont-fish-1:before{content:"\e84f"}.icofont-fish-2:before{content:"\e850"}.icofont-fish-3:before{content:"\e851"}.icofont-fish-4:before{content:"\e852"}.icofont-fish-5:before{content:"\e853"}.icofont-fish:before{content:"\e854"}.icofont-fox-alt:before{content:"\e855"}.icofont-fox:before{content:"\e856"}.icofont-frog-tracks:before{content:"\e857"}.icofont-frog:before{content:"\e858"}.icofont-froggy:before{content:"\e859"}.icofont-giraffe-head-1:before{content:"\e85a"}.icofont-giraffe-head-2:before{content:"\e85b"}.icofont-giraffe-head:before{content:"\e85c"}.icofont-giraffe:before{content:"\e85d"}.icofont-goat-head:before{content:"\e85e"}.icofont-gorilla:before{content:"\e85f"}.icofont-hen-tracks:before{content:"\e860"}.icofont-horse-head-1:before{content:"\e861"}.icofont-horse-head-2:before{content:"\e862"}.icofont-horse-head:before{content:"\e863"}.icofont-horse-tracks:before{content:"\e864"}.icofont-jellyfish:before{content:"\e865"}.icofont-kangaroo:before{content:"\e866"}.icofont-lemur:before{content:"\e867"}.icofont-lion-head-1:before{content:"\e868"}.icofont-lion-head-2:before{content:"\e869"}.icofont-lion-head:before{content:"\e86a"}.icofont-lion:before{content:"\e86b"}.icofont-monkey-2:before{content:"\e86c"}.icofont-monkey-3:before{content:"\e86d"}.icofont-monkey-face:before{content:"\e86e"}.icofont-monkey:before{content:"\e86f"}.icofont-octopus-alt:before{content:"\e870"}.icofont-octopus:before{content:"\e871"}.icofont-owl:before{content:"\e872"}.icofont-panda-face:before{content:"\e873"}.icofont-panda:before{content:"\e874"}.icofont-panther:before{content:"\e875"}.icofont-parrot-lip:before{content:"\e876"}.icofont-parrot:before{content:"\e877"}.icofont-paw:before{content:"\e878"}.icofont-pelican:before{content:"\e879"}.icofont-penguin:before{content:"\e87a"}.icofont-pig-face:before{content:"\e87b"}.icofont-pig:before{content:"\e87c"}.icofont-pigeon-1:before{content:"\e87d"}.icofont-pigeon-2:before{content:"\e87e"}.icofont-pigeon:before{content:"\e87f"}.icofont-rabbit:before{content:"\e880"}.icofont-rat:before{content:"\e881"}.icofont-rhino-head:before{content:"\e882"}.icofont-rhino:before{content:"\e883"}.icofont-rooster:before{content:"\e884"}.icofont-seahorse:before{content:"\e885"}.icofont-seal:before{content:"\e886"}.icofont-shrimp-alt:before{content:"\e887"}.icofont-shrimp:before{content:"\e888"}.icofont-snail-1:before{content:"\e889"}.icofont-snail-2:before{content:"\e88a"}.icofont-snail-3:before{content:"\e88b"}.icofont-snail:before{content:"\e88c"}.icofont-snake:before{content:"\e88d"}.icofont-squid:before{content:"\e88e"}.icofont-squirrel:before{content:"\e88f"}.icofont-tiger-face:before{content:"\e890"}.icofont-tiger:before{content:"\e891"}.icofont-turtle:before{content:"\e892"}.icofont-whale:before{content:"\e893"}.icofont-woodpecker:before{content:"\e894"}.icofont-zebra:before{content:"\e895"}.icofont-brand-acer:before{content:"\e896"}.icofont-brand-adidas:before{content:"\e897"}.icofont-brand-adobe:before{content:"\e898"}.icofont-brand-air-new-zealand:before{content:"\e899"}.icofont-brand-airbnb:before{content:"\e89a"}.icofont-brand-aircell:before{content:"\e89b"}.icofont-brand-airtel:before{content:"\e89c"}.icofont-brand-alcatel:before{content:"\e89d"}.icofont-brand-alibaba:before{content:"\e89e"}.icofont-brand-aliexpress:before{content:"\e89f"}.icofont-brand-alipay:before{content:"\e8a0"}.icofont-brand-amazon:before{content:"\e8a1"}.icofont-brand-amd:before{content:"\e8a2"}.icofont-brand-american-airlines:before{content:"\e8a3"}.icofont-brand-android-robot:before{content:"\e8a4"}.icofont-brand-android:before{content:"\e8a5"}.icofont-brand-aol:before{content:"\e8a6"}.icofont-brand-apple:before{content:"\e8a7"}.icofont-brand-appstore:before{content:"\e8a8"}.icofont-brand-asus:before{content:"\e8a9"}.icofont-brand-ati:before{content:"\e8aa"}.icofont-brand-att:before{content:"\e8ab"}.icofont-brand-audi:before{content:"\e8ac"}.icofont-brand-axiata:before{content:"\e8ad"}.icofont-brand-bada:before{content:"\e8ae"}.icofont-brand-bbc:before{content:"\e8af"}.icofont-brand-bing:before{content:"\e8b0"}.icofont-brand-blackberry:before{content:"\e8b1"}.icofont-brand-bmw:before{content:"\e8b2"}.icofont-brand-box:before{content:"\e8b3"}.icofont-brand-burger-king:before{content:"\e8b4"}.icofont-brand-business-insider:before{content:"\e8b5"}.icofont-brand-buzzfeed:before{content:"\e8b6"}.icofont-brand-cannon:before{content:"\e8b7"}.icofont-brand-casio:before{content:"\e8b8"}.icofont-brand-china-mobile:before{content:"\e8b9"}.icofont-brand-china-telecom:before{content:"\e8ba"}.icofont-brand-china-unicom:before{content:"\e8bb"}.icofont-brand-cisco:before{content:"\e8bc"}.icofont-brand-citibank:before{content:"\e8bd"}.icofont-brand-cnet:before{content:"\e8be"}.icofont-brand-cnn:before{content:"\e8bf"}.icofont-brand-cocal-cola:before{content:"\e8c0"}.icofont-brand-compaq:before{content:"\e8c1"}.icofont-brand-debian:before{content:"\e8c2"}.icofont-brand-delicious:before{content:"\e8c3"}.icofont-brand-dell:before{content:"\e8c4"}.icofont-brand-designbump:before{content:"\e8c5"}.icofont-brand-designfloat:before{content:"\e8c6"}.icofont-brand-disney:before{content:"\e8c7"}.icofont-brand-dodge:before{content:"\e8c8"}.icofont-brand-dove:before{content:"\e8c9"}.icofont-brand-drupal:before{content:"\e8ca"}.icofont-brand-ebay:before{content:"\e8cb"}.icofont-brand-eleven:before{content:"\e8cc"}.icofont-brand-emirates:before{content:"\e8cd"}.icofont-brand-espn:before{content:"\e8ce"}.icofont-brand-etihad-airways:before{content:"\e8cf"}.icofont-brand-etisalat:before{content:"\e8d0"}.icofont-brand-etsy:before{content:"\e8d1"}.icofont-brand-fastrack:before{content:"\e8d2"}.icofont-brand-fedex:before{content:"\e8d3"}.icofont-brand-ferrari:before{content:"\e8d4"}.icofont-brand-fitbit:before{content:"\e8d5"}.icofont-brand-flikr:before{content:"\e8d6"}.icofont-brand-forbes:before{content:"\e8d7"}.icofont-brand-foursquare:before{content:"\e8d8"}.icofont-brand-foxconn:before{content:"\e8d9"}.icofont-brand-fujitsu:before{content:"\e8da"}.icofont-brand-general-electric:before{content:"\e8db"}.icofont-brand-gillette:before{content:"\e8dc"}.icofont-brand-gizmodo:before{content:"\e8dd"}.icofont-brand-gnome:before{content:"\e8de"}.icofont-brand-google:before{content:"\e8df"}.icofont-brand-gopro:before{content:"\e8e0"}.icofont-brand-gucci:before{content:"\e8e1"}.icofont-brand-hallmark:before{content:"\e8e2"}.icofont-brand-hi5:before{content:"\e8e3"}.icofont-brand-honda:before{content:"\e8e4"}.icofont-brand-hp:before{content:"\e8e5"}.icofont-brand-hsbc:before{content:"\e8e6"}.icofont-brand-htc:before{content:"\e8e7"}.icofont-brand-huawei:before{content:"\e8e8"}.icofont-brand-hulu:before{content:"\e8e9"}.icofont-brand-hyundai:before{content:"\e8ea"}.icofont-brand-ibm:before{content:"\e8eb"}.icofont-brand-icofont:before{content:"\e8ec"}.icofont-brand-icq:before{content:"\e8ed"}.icofont-brand-ikea:before{content:"\e8ee"}.icofont-brand-imdb:before{content:"\e8ef"}.icofont-brand-indiegogo:before{content:"\e8f0"}.icofont-brand-intel:before{content:"\e8f1"}.icofont-brand-ipair:before{content:"\e8f2"}.icofont-brand-jaguar:before{content:"\e8f3"}.icofont-brand-java:before{content:"\e8f4"}.icofont-brand-joomla:before{content:"\e8f5"}.icofont-brand-kickstarter:before{content:"\e8f6"}.icofont-brand-kik:before{content:"\e8f7"}.icofont-brand-lastfm:before{content:"\e8f8"}.icofont-brand-lego:before{content:"\e8f9"}.icofont-brand-lenovo:before{content:"\e8fa"}.icofont-brand-levis:before{content:"\e8fb"}.icofont-brand-lexus:before{content:"\e8fc"}.icofont-brand-lg:before{content:"\e8fd"}.icofont-brand-life-hacker:before{content:"\e8fe"}.icofont-brand-linux-mint:before{content:"\e8ff"}.icofont-brand-linux:before{content:"\e900"}.icofont-brand-lionix:before{content:"\e901"}.icofont-brand-loreal:before{content:"\e902"}.icofont-brand-louis-vuitton:before{content:"\e903"}.icofont-brand-mac-os:before{content:"\e904"}.icofont-brand-marvel-app:before{content:"\e905"}.icofont-brand-mashable:before{content:"\e906"}.icofont-brand-mazda:before{content:"\e907"}.icofont-brand-mcdonals:before{content:"\e908"}.icofont-brand-mercedes:before{content:"\e909"}.icofont-brand-micromax:before{content:"\e90a"}.icofont-brand-microsoft:before{content:"\e90b"}.icofont-brand-mobileme:before{content:"\e90c"}.icofont-brand-mobily:before{content:"\e90d"}.icofont-brand-motorola:before{content:"\e90e"}.icofont-brand-msi:before{content:"\e90f"}.icofont-brand-mts:before{content:"\e910"}.icofont-brand-myspace:before{content:"\e911"}.icofont-brand-mytv:before{content:"\e912"}.icofont-brand-nasa:before{content:"\e913"}.icofont-brand-natgeo:before{content:"\e914"}.icofont-brand-nbc:before{content:"\e915"}.icofont-brand-nescafe:before{content:"\e916"}.icofont-brand-nestle:before{content:"\e917"}.icofont-brand-netflix:before{content:"\e918"}.icofont-brand-nexus:before{content:"\e919"}.icofont-brand-nike:before{content:"\e91a"}.icofont-brand-nokia:before{content:"\e91b"}.icofont-brand-nvidia:before{content:"\e91c"}.icofont-brand-omega:before{content:"\e91d"}.icofont-brand-opensuse:before{content:"\e91e"}.icofont-brand-oracle:before{content:"\e91f"}.icofont-brand-panasonic:before{content:"\e920"}.icofont-brand-paypal:before{content:"\e921"}.icofont-brand-pepsi:before{content:"\e922"}.icofont-brand-philips:before{content:"\e923"}.icofont-brand-pizza-hut:before{content:"\e924"}.icofont-brand-playstation:before{content:"\e925"}.icofont-brand-puma:before{content:"\e926"}.icofont-brand-qatar-air:before{content:"\e927"}.icofont-brand-qvc:before{content:"\e928"}.icofont-brand-readernaut:before{content:"\e929"}.icofont-brand-redbull:before{content:"\e92a"}.icofont-brand-reebok:before{content:"\e92b"}.icofont-brand-reuters:before{content:"\e92c"}.icofont-brand-samsung:before{content:"\e92d"}.icofont-brand-sap:before{content:"\e92e"}.icofont-brand-saudia-airlines:before{content:"\e92f"}.icofont-brand-scribd:before{content:"\e930"}.icofont-brand-shell:before{content:"\e931"}.icofont-brand-siemens:before{content:"\e932"}.icofont-brand-sk-telecom:before{content:"\e933"}.icofont-brand-slideshare:before{content:"\e934"}.icofont-brand-smashing-magazine:before{content:"\e935"}.icofont-brand-snapchat:before{content:"\e936"}.icofont-brand-sony-ericsson:before{content:"\e937"}.icofont-brand-sony:before{content:"\e938"}.icofont-brand-soundcloud:before{content:"\e939"}.icofont-brand-sprint:before{content:"\e93a"}.icofont-brand-squidoo:before{content:"\e93b"}.icofont-brand-starbucks:before{content:"\e93c"}.icofont-brand-stc:before{content:"\e93d"}.icofont-brand-steam:before{content:"\e93e"}.icofont-brand-suzuki:before{content:"\e93f"}.icofont-brand-symbian:before{content:"\e940"}.icofont-brand-t-mobile:before{content:"\e941"}.icofont-brand-tango:before{content:"\e942"}.icofont-brand-target:before{content:"\e943"}.icofont-brand-tata-indicom:before{content:"\e944"}.icofont-brand-techcrunch:before{content:"\e945"}.icofont-brand-telenor:before{content:"\e946"}.icofont-brand-teliasonera:before{content:"\e947"}.icofont-brand-tesla:before{content:"\e948"}.icofont-brand-the-verge:before{content:"\e949"}.icofont-brand-thenextweb:before{content:"\e94a"}.icofont-brand-toshiba:before{content:"\e94b"}.icofont-brand-toyota:before{content:"\e94c"}.icofont-brand-tribenet:before{content:"\e94d"}.icofont-brand-ubuntu:before{content:"\e94e"}.icofont-brand-unilever:before{content:"\e94f"}.icofont-brand-vaio:before{content:"\e950"}.icofont-brand-verizon:before{content:"\e951"}.icofont-brand-viber:before{content:"\e952"}.icofont-brand-vodafone:before{content:"\e953"}.icofont-brand-volkswagen:before{content:"\e954"}.icofont-brand-walmart:before{content:"\e955"}.icofont-brand-warnerbros:before{content:"\e956"}.icofont-brand-whatsapp:before{content:"\e957"}.icofont-brand-wikipedia:before{content:"\e958"}.icofont-brand-windows:before{content:"\e959"}.icofont-brand-wire:before{content:"\e95a"}.icofont-brand-wordpress:before{content:"\e95b"}.icofont-brand-xiaomi:before{content:"\e95c"}.icofont-brand-yahoobuzz:before{content:"\e95d"}.icofont-brand-yamaha:before{content:"\e95e"}.icofont-brand-youtube:before{content:"\e95f"}.icofont-brand-zain:before{content:"\e960"}.icofont-bank-alt:before{content:"\e961"}.icofont-bank:before{content:"\e962"}.icofont-barcode:before{content:"\e963"}.icofont-bill-alt:before{content:"\e964"}.icofont-billboard:before{content:"\e965"}.icofont-briefcase-1:before{content:"\e966"}.icofont-briefcase-2:before{content:"\e967"}.icofont-businessman:before{content:"\e968"}.icofont-businesswoman:before{content:"\e969"}.icofont-chair:before{content:"\e96a"}.icofont-coins:before{content:"\e96b"}.icofont-company:before{content:"\e96c"}.icofont-contact-add:before{content:"\e96d"}.icofont-files-stack:before{content:"\e96e"}.icofont-handshake-deal:before{content:"\e96f"}.icofont-id-card:before{content:"\e970"}.icofont-meeting-add:before{content:"\e971"}.icofont-money-bag:before{content:"\e972"}.icofont-pie-chart:before{content:"\e973"}.icofont-presentation-alt:before{content:"\e974"}.icofont-presentation:before{content:"\e975"}.icofont-stamp:before{content:"\e976"}.icofont-stock-mobile:before{content:"\e977"}.icofont-chart-arrows-axis:before{content:"\e978"}.icofont-chart-bar-graph:before{content:"\e979"}.icofont-chart-flow-1:before{content:"\e97a"}.icofont-chart-flow-2:before{content:"\e97b"}.icofont-chart-flow:before{content:"\e97c"}.icofont-chart-growth:before{content:"\e97d"}.icofont-chart-histogram-alt:before{content:"\e97e"}.icofont-chart-histogram:before{content:"\e97f"}.icofont-chart-line-alt:before{content:"\e980"}.icofont-chart-line:before{content:"\e981"}.icofont-chart-pie-alt:before{content:"\e982"}.icofont-chart-pie:before{content:"\e983"}.icofont-chart-radar-graph:before{content:"\e984"}.icofont-architecture-alt:before{content:"\e985"}.icofont-architecture:before{content:"\e986"}.icofont-barricade:before{content:"\e987"}.icofont-bolt:before{content:"\e988"}.icofont-bricks:before{content:"\e989"}.icofont-building-alt:before{content:"\e98a"}.icofont-bull-dozer:before{content:"\e98b"}.icofont-calculations:before{content:"\e98c"}.icofont-cement-mix:before{content:"\e98d"}.icofont-cement-mixer:before{content:"\e98e"}.icofont-concrete-mixer:before{content:"\e98f"}.icofont-danger-zone:before{content:"\e990"}.icofont-drill:before{content:"\e991"}.icofont-eco-energy:before{content:"\e992"}.icofont-eco-environmen:before{content:"\e993"}.icofont-energy-air:before{content:"\e994"}.icofont-energy-oil:before{content:"\e995"}.icofont-energy-savings:before{content:"\e996"}.icofont-energy-solar:before{content:"\e997"}.icofont-energy-water:before{content:"\e998"}.icofont-engineer:before{content:"\e999"}.icofont-fire-extinguisher-alt:before{content:"\e99a"}.icofont-fire-extinguisher:before{content:"\e99b"}.icofont-fix-tools:before{content:"\e99c"}.icofont-fork-lift:before{content:"\e99d"}.icofont-glue-oil:before{content:"\e99e"}.icofont-hammer-alt:before{content:"\e99f"}.icofont-hammer:before{content:"\e9a0"}.icofont-help-robot:before{content:"\e9a1"}.icofont-industries-1:before{content:"\e9a2"}.icofont-industries-2:before{content:"\e9a3"}.icofont-industries-3:before{content:"\e9a4"}.icofont-industries-4:before{content:"\e9a5"}.icofont-industries-5:before{content:"\e9a6"}.icofont-industries:before{content:"\e9a7"}.icofont-labour:before{content:"\e9a8"}.icofont-mining:before{content:"\e9a9"}.icofont-paint-brush:before{content:"\e9aa"}.icofont-pollution:before{content:"\e9ab"}.icofont-power-zone:before{content:"\e9ac"}.icofont-radio-active:before{content:"\e9ad"}.icofont-recycle-alt:before{content:"\e9ae"}.icofont-recycling-man:before{content:"\e9af"}.icofont-safety-hat-light:before{content:"\e9b0"}.icofont-safety-hat:before{content:"\e9b1"}.icofont-saw:before{content:"\e9b2"}.icofont-screw-driver:before{content:"\e9b3"}.icofont-tools-1:before{content:"\e9b4"}.icofont-tools-bag:before{content:"\e9b5"}.icofont-tow-truck:before{content:"\e9b6"}.icofont-trolley:before{content:"\e9b7"}.icofont-trowel:before{content:"\e9b8"}.icofont-under-construction-alt:before{content:"\e9b9"}.icofont-under-construction:before{content:"\e9ba"}.icofont-vehicle-cement:before{content:"\e9bb"}.icofont-vehicle-crane:before{content:"\e9bc"}.icofont-vehicle-delivery-van:before{content:"\e9bd"}.icofont-vehicle-dozer:before{content:"\e9be"}.icofont-vehicle-excavator:before{content:"\e9bf"}.icofont-vehicle-trucktor:before{content:"\e9c0"}.icofont-vehicle-wrecking:before{content:"\e9c1"}.icofont-worker:before{content:"\e9c2"}.icofont-workers-group:before{content:"\e9c3"}.icofont-wrench:before{content:"\e9c4"}.icofont-afghani-false:before{content:"\e9c5"}.icofont-afghani-minus:before{content:"\e9c6"}.icofont-afghani-plus:before{content:"\e9c7"}.icofont-afghani-true:before{content:"\e9c8"}.icofont-afghani:before{content:"\e9c9"}.icofont-baht-false:before{content:"\e9ca"}.icofont-baht-minus:before{content:"\e9cb"}.icofont-baht-plus:before{content:"\e9cc"}.icofont-baht-true:before{content:"\e9cd"}.icofont-baht:before{content:"\e9ce"}.icofont-bitcoin-false:before{content:"\e9cf"}.icofont-bitcoin-minus:before{content:"\e9d0"}.icofont-bitcoin-plus:before{content:"\e9d1"}.icofont-bitcoin-true:before{content:"\e9d2"}.icofont-bitcoin:before{content:"\e9d3"}.icofont-dollar-flase:before{content:"\e9d4"}.icofont-dollar-minus:before{content:"\e9d5"}.icofont-dollar-plus:before{content:"\e9d6"}.icofont-dollar-true:before{content:"\e9d7"}.icofont-dollar:before{content:"\e9d8"}.icofont-dong-false:before{content:"\e9d9"}.icofont-dong-minus:before{content:"\e9da"}.icofont-dong-plus:before{content:"\e9db"}.icofont-dong-true:before{content:"\e9dc"}.icofont-dong:before{content:"\e9dd"}.icofont-euro-false:before{content:"\e9de"}.icofont-euro-minus:before{content:"\e9df"}.icofont-euro-plus:before{content:"\e9e0"}.icofont-euro-true:before{content:"\e9e1"}.icofont-euro:before{content:"\e9e2"}.icofont-frank-false:before{content:"\e9e3"}.icofont-frank-minus:before{content:"\e9e4"}.icofont-frank-plus:before{content:"\e9e5"}.icofont-frank-true:before{content:"\e9e6"}.icofont-frank:before{content:"\e9e7"}.icofont-hryvnia-false:before{content:"\e9e8"}.icofont-hryvnia-minus:before{content:"\e9e9"}.icofont-hryvnia-plus:before{content:"\e9ea"}.icofont-hryvnia-true:before{content:"\e9eb"}.icofont-hryvnia:before{content:"\e9ec"}.icofont-lira-false:before{content:"\e9ed"}.icofont-lira-minus:before{content:"\e9ee"}.icofont-lira-plus:before{content:"\e9ef"}.icofont-lira-true:before{content:"\e9f0"}.icofont-lira:before{content:"\e9f1"}.icofont-peseta-false:before{content:"\e9f2"}.icofont-peseta-minus:before{content:"\e9f3"}.icofont-peseta-plus:before{content:"\e9f4"}.icofont-peseta-true:before{content:"\e9f5"}.icofont-peseta:before{content:"\e9f6"}.icofont-peso-false:before{content:"\e9f7"}.icofont-peso-minus:before{content:"\e9f8"}.icofont-peso-plus:before{content:"\e9f9"}.icofont-peso-true:before{content:"\e9fa"}.icofont-peso:before{content:"\e9fb"}.icofont-pound-false:before{content:"\e9fc"}.icofont-pound-minus:before{content:"\e9fd"}.icofont-pound-plus:before{content:"\e9fe"}.icofont-pound-true:before{content:"\e9ff"}.icofont-pound:before{content:"\ea00"}.icofont-renminbi-false:before{content:"\ea01"}.icofont-renminbi-minus:before{content:"\ea02"}.icofont-renminbi-plus:before{content:"\ea03"}.icofont-renminbi-true:before{content:"\ea04"}.icofont-renminbi:before{content:"\ea05"}.icofont-riyal-false:before{content:"\ea06"}.icofont-riyal-minus:before{content:"\ea07"}.icofont-riyal-plus:before{content:"\ea08"}.icofont-riyal-true:before{content:"\ea09"}.icofont-riyal:before{content:"\ea0a"}.icofont-rouble-false:before{content:"\ea0b"}.icofont-rouble-minus:before{content:"\ea0c"}.icofont-rouble-plus:before{content:"\ea0d"}.icofont-rouble-true:before{content:"\ea0e"}.icofont-rouble:before{content:"\ea0f"}.icofont-rupee-false:before{content:"\ea10"}.icofont-rupee-minus:before{content:"\ea11"}.icofont-rupee-plus:before{content:"\ea12"}.icofont-rupee-true:before{content:"\ea13"}.icofont-rupee:before{content:"\ea14"}.icofont-taka-false:before{content:"\ea15"}.icofont-taka-minus:before{content:"\ea16"}.icofont-taka-plus:before{content:"\ea17"}.icofont-taka-true:before{content:"\ea18"}.icofont-taka:before{content:"\ea19"}.icofont-turkish-lira-false:before{content:"\ea1a"}.icofont-turkish-lira-minus:before{content:"\ea1b"}.icofont-turkish-lira-plus:before{content:"\ea1c"}.icofont-turkish-lira-true:before{content:"\ea1d"}.icofont-turkish-lira:before{content:"\ea1e"}.icofont-won-false:before{content:"\ea1f"}.icofont-won-minus:before{content:"\ea20"}.icofont-won-plus:before{content:"\ea21"}.icofont-won-true:before{content:"\ea22"}.icofont-won:before{content:"\ea23"}.icofont-yen-false:before{content:"\ea24"}.icofont-yen-minus:before{content:"\ea25"}.icofont-yen-plus:before{content:"\ea26"}.icofont-yen-true:before{content:"\ea27"}.icofont-yen:before{content:"\ea28"}.icofont-android-nexus:before{content:"\ea29"}.icofont-android-tablet:before{content:"\ea2a"}.icofont-apple-watch:before{content:"\ea2b"}.icofont-drawing-tablet:before{content:"\ea2c"}.icofont-earphone:before{content:"\ea2d"}.icofont-flash-drive:before{content:"\ea2e"}.icofont-game-console:before{content:"\ea2f"}.icofont-game-controller:before{content:"\ea30"}.icofont-game-pad:before{content:"\ea31"}.icofont-game:before{content:"\ea32"}.icofont-headphone-alt-1:before{content:"\ea33"}.icofont-headphone-alt-2:before{content:"\ea34"}.icofont-headphone-alt-3:before{content:"\ea35"}.icofont-headphone-alt:before{content:"\ea36"}.icofont-headphone:before{content:"\ea37"}.icofont-htc-one:before{content:"\ea38"}.icofont-imac:before{content:"\ea39"}.icofont-ipad:before{content:"\ea3a"}.icofont-iphone:before{content:"\ea3b"}.icofont-ipod-nano:before{content:"\ea3c"}.icofont-ipod-touch:before{content:"\ea3d"}.icofont-keyboard-alt:before{content:"\ea3e"}.icofont-keyboard-wireless:before{content:"\ea3f"}.icofont-keyboard:before{content:"\ea40"}.icofont-laptop-alt:before{content:"\ea41"}.icofont-laptop:before{content:"\ea42"}.icofont-macbook:before{content:"\ea43"}.icofont-magic-mouse:before{content:"\ea44"}.icofont-micro-chip:before{content:"\ea45"}.icofont-microphone-alt:before{content:"\ea46"}.icofont-microphone:before{content:"\ea47"}.icofont-monitor:before{content:"\ea48"}.icofont-mouse:before{content:"\ea49"}.icofont-mp3-player:before{content:"\ea4a"}.icofont-nintendo:before{content:"\ea4b"}.icofont-playstation-alt:before{content:"\ea4c"}.icofont-psvita:before{content:"\ea4d"}.icofont-radio-mic:before{content:"\ea4e"}.icofont-radio:before{content:"\ea4f"}.icofont-refrigerator:before{content:"\ea50"}.icofont-samsung-galaxy:before{content:"\ea51"}.icofont-surface-tablet:before{content:"\ea52"}.icofont-ui-head-phone:before{content:"\ea53"}.icofont-ui-keyboard:before{content:"\ea54"}.icofont-washing-machine:before{content:"\ea55"}.icofont-wifi-router:before{content:"\ea56"}.icofont-wii-u:before{content:"\ea57"}.icofont-windows-lumia:before{content:"\ea58"}.icofont-wireless-mouse:before{content:"\ea59"}.icofont-xbox-360:before{content:"\ea5a"}.icofont-arrow-down:before{content:"\ea5b"}.icofont-arrow-left:before{content:"\ea5c"}.icofont-arrow-right:before{content:"\ea5d"}.icofont-arrow-up:before{content:"\ea5e"}.icofont-block-down:before{content:"\ea5f"}.icofont-block-left:before{content:"\ea60"}.icofont-block-right:before{content:"\ea61"}.icofont-block-up:before{content:"\ea62"}.icofont-bubble-down:before{content:"\ea63"}.icofont-bubble-left:before{content:"\ea64"}.icofont-bubble-right:before{content:"\ea65"}.icofont-bubble-up:before{content:"\ea66"}.icofont-caret-down:before{content:"\ea67"}.icofont-caret-left:before{content:"\ea68"}.icofont-caret-right:before{content:"\ea69"}.icofont-caret-up:before{content:"\ea6a"}.icofont-circled-down:before{content:"\ea6b"}.icofont-circled-left:before{content:"\ea6c"}.icofont-circled-right:before{content:"\ea6d"}.icofont-circled-up:before{content:"\ea6e"}.icofont-collapse:before{content:"\ea6f"}.icofont-cursor-drag:before{content:"\ea70"}.icofont-curved-double-left:before{content:"\ea71"}.icofont-curved-double-right:before{content:"\ea72"}.icofont-curved-down:before{content:"\ea73"}.icofont-curved-left:before{content:"\ea74"}.icofont-curved-right:before{content:"\ea75"}.icofont-curved-up:before{content:"\ea76"}.icofont-dotted-down:before{content:"\ea77"}.icofont-dotted-left:before{content:"\ea78"}.icofont-dotted-right:before{content:"\ea79"}.icofont-dotted-up:before{content:"\ea7a"}.icofont-double-left:before{content:"\ea7b"}.icofont-double-right:before{content:"\ea7c"}.icofont-expand-alt:before{content:"\ea7d"}.icofont-hand-down:before{content:"\ea7e"}.icofont-hand-drag:before{content:"\ea7f"}.icofont-hand-drag1:before{content:"\ea80"}.icofont-hand-drag2:before{content:"\ea81"}.icofont-hand-drawn-alt-down:before{content:"\ea82"}.icofont-hand-drawn-alt-left:before{content:"\ea83"}.icofont-hand-drawn-alt-right:before{content:"\ea84"}.icofont-hand-drawn-alt-up:before{content:"\ea85"}.icofont-hand-drawn-down:before{content:"\ea86"}.icofont-hand-drawn-left:before{content:"\ea87"}.icofont-hand-drawn-right:before{content:"\ea88"}.icofont-hand-drawn-up:before{content:"\ea89"}.icofont-hand-grippers:before{content:"\ea8a"}.icofont-hand-left:before{content:"\ea8b"}.icofont-hand-right:before{content:"\ea8c"}.icofont-hand-up:before{content:"\ea8d"}.icofont-line-block-down:before{content:"\ea8e"}.icofont-line-block-left:before{content:"\ea8f"}.icofont-line-block-right:before{content:"\ea90"}.icofont-line-block-up:before{content:"\ea91"}.icofont-long-arrow-down:before{content:"\ea92"}.icofont-long-arrow-left:before{content:"\ea93"}.icofont-long-arrow-right:before{content:"\ea94"}.icofont-long-arrow-up:before{content:"\ea95"}.icofont-rounded-collapse:before{content:"\ea96"}.icofont-rounded-double-left:before{content:"\ea97"}.icofont-rounded-double-right:before{content:"\ea98"}.icofont-rounded-down:before{content:"\ea99"}.icofont-rounded-expand:before{content:"\ea9a"}.icofont-rounded-left-down:before{content:"\ea9b"}.icofont-rounded-left-up:before{content:"\ea9c"}.icofont-rounded-left:before{content:"\ea9d"}.icofont-rounded-right-down:before{content:"\ea9e"}.icofont-rounded-right-up:before{content:"\ea9f"}.icofont-rounded-right:before{content:"\eaa0"}.icofont-rounded-up:before{content:"\eaa1"}.icofont-scroll-bubble-down:before{content:"\eaa2"}.icofont-scroll-bubble-left:before{content:"\eaa3"}.icofont-scroll-bubble-right:before{content:"\eaa4"}.icofont-scroll-bubble-up:before{content:"\eaa5"}.icofont-scroll-double-down:before{content:"\eaa6"}.icofont-scroll-double-left:before{content:"\eaa7"}.icofont-scroll-double-right:before{content:"\eaa8"}.icofont-scroll-double-up:before{content:"\eaa9"}.icofont-scroll-down:before{content:"\eaaa"}.icofont-scroll-left:before{content:"\eaab"}.icofont-scroll-long-down:before{content:"\eaac"}.icofont-scroll-long-left:before{content:"\eaad"}.icofont-scroll-long-right:before{content:"\eaae"}.icofont-scroll-long-up:before{content:"\eaaf"}.icofont-scroll-right:before{content:"\eab0"}.icofont-scroll-up:before{content:"\eab1"}.icofont-simple-down:before{content:"\eab2"}.icofont-simple-left-down:before{content:"\eab3"}.icofont-simple-left-up:before{content:"\eab4"}.icofont-simple-left:before{content:"\eab5"}.icofont-simple-right-down:before{content:"\eab6"}.icofont-simple-right-up:before{content:"\eab7"}.icofont-simple-right:before{content:"\eab8"}.icofont-simple-up:before{content:"\eab9"}.icofont-square-down:before{content:"\eaba"}.icofont-square-left:before{content:"\eabb"}.icofont-square-right:before{content:"\eabc"}.icofont-square-up:before{content:"\eabd"}.icofont-stylish-down:before{content:"\eabe"}.icofont-stylish-left:before{content:"\eabf"}.icofont-stylish-right:before{content:"\eac0"}.icofont-stylish-up:before{content:"\eac1"}.icofont-swoosh-down:before{content:"\eac2"}.icofont-swoosh-left:before{content:"\eac3"}.icofont-swoosh-right:before{content:"\eac4"}.icofont-swoosh-up:before{content:"\eac5"}.icofont-thin-double-left:before{content:"\eac6"}.icofont-thin-double-right:before{content:"\eac7"}.icofont-thin-down:before{content:"\eac8"}.icofont-thin-left:before{content:"\eac9"}.icofont-thin-right:before{content:"\eaca"}.icofont-thin-up:before{content:"\eacb"}.icofont-abc:before{content:"\eacc"}.icofont-atom:before{content:"\eacd"}.icofont-award:before{content:"\eace"}.icofont-bell-alt:before{content:"\eacf"}.icofont-black-board:before{content:"\ead0"}.icofont-book-alt:before{content:"\ead1"}.icofont-book:before{content:"\ead2"}.icofont-brainstorming:before{content:"\ead3"}.icofont-certificate-alt-1:before{content:"\ead4"}.icofont-certificate-alt-2:before{content:"\ead5"}.icofont-certificate:before{content:"\ead6"}.icofont-education:before{content:"\ead7"}.icofont-electron:before{content:"\ead8"}.icofont-fountain-pen:before{content:"\ead9"}.icofont-globe-alt:before{content:"\eada"}.icofont-graduate-alt:before{content:"\eadb"}.icofont-graduate:before{content:"\eadc"}.icofont-group-students:before{content:"\eadd"}.icofont-hat-alt:before{content:"\eade"}.icofont-hat:before{content:"\eadf"}.icofont-instrument:before{content:"\eae0"}.icofont-lamp-light:before{content:"\eae1"}.icofont-medal:before{content:"\eae2"}.icofont-microscope-alt:before{content:"\eae3"}.icofont-microscope:before{content:"\eae4"}.icofont-paper:before{content:"\eae5"}.icofont-pen-alt-4:before{content:"\eae6"}.icofont-pen-nib:before{content:"\eae7"}.icofont-pencil-alt-5:before{content:"\eae8"}.icofont-quill-pen:before{content:"\eae9"}.icofont-read-book-alt:before{content:"\eaea"}.icofont-read-book:before{content:"\eaeb"}.icofont-school-bag:before{content:"\eaec"}.icofont-school-bus:before{content:"\eaed"}.icofont-student-alt:before{content:"\eaee"}.icofont-student:before{content:"\eaef"}.icofont-teacher:before{content:"\eaf0"}.icofont-test-bulb:before{content:"\eaf1"}.icofont-test-tube-alt:before{content:"\eaf2"}.icofont-university:before{content:"\eaf3"}.icofont-angry:before{content:"\eaf4"}.icofont-astonished:before{content:"\eaf5"}.icofont-confounded:before{content:"\eaf6"}.icofont-confused:before{content:"\eaf7"}.icofont-crying:before{content:"\eaf8"}.icofont-dizzy:before{content:"\eaf9"}.icofont-expressionless:before{content:"\eafa"}.icofont-heart-eyes:before{content:"\eafb"}.icofont-laughing:before{content:"\eafc"}.icofont-nerd-smile:before{content:"\eafd"}.icofont-open-mouth:before{content:"\eafe"}.icofont-rage:before{content:"\eaff"}.icofont-rolling-eyes:before{content:"\eb00"}.icofont-sad:before{content:"\eb01"}.icofont-simple-smile:before{content:"\eb02"}.icofont-slightly-smile:before{content:"\eb03"}.icofont-smirk:before{content:"\eb04"}.icofont-stuck-out-tongue:before{content:"\eb05"}.icofont-wink-smile:before{content:"\eb06"}.icofont-worried:before{content:"\eb07"}.icofont-file-alt:before{content:"\eb08"}.icofont-file-audio:before{content:"\eb09"}.icofont-file-avi-mp4:before{content:"\eb0a"}.icofont-file-bmp:before{content:"\eb0b"}.icofont-file-code:before{content:"\eb0c"}.icofont-file-css:before{content:"\eb0d"}.icofont-file-document:before{content:"\eb0e"}.icofont-file-eps:before{content:"\eb0f"}.icofont-file-excel:before{content:"\eb10"}.icofont-file-exe:before{content:"\eb11"}.icofont-file-file:before{content:"\eb12"}.icofont-file-flv:before{content:"\eb13"}.icofont-file-gif:before{content:"\eb14"}.icofont-file-html5:before{content:"\eb15"}.icofont-file-image:before{content:"\eb16"}.icofont-file-iso:before{content:"\eb17"}.icofont-file-java:before{content:"\eb18"}.icofont-file-jpg:before{content:"\eb1a"}.icofont-file-midi:before{content:"\eb1b"}.icofont-file-mov:before{content:"\eb1c"}.icofont-file-mp3:before{content:"\eb1d"}.icofont-file-pdf:before{content:"\eb1e"}.icofont-file-php:before{content:"\eb1f"}.icofont-file-png:before{content:"\eb20"}.icofont-file-powerpoint:before{content:"\eb21"}.icofont-file-presentation:before{content:"\eb22"}.icofont-file-psb:before{content:"\eb23"}.icofont-file-psd:before{content:"\eb24"}.icofont-file-python:before{content:"\eb25"}.icofont-file-ruby:before{content:"\eb26"}.icofont-file-spreadsheet:before{content:"\eb27"}.icofont-file-sql:before{content:"\eb28"}.icofont-file-svg:before{content:"\eb29"}.icofont-file-text:before{content:"\eb2a"}.icofont-file-tiff:before{content:"\eb2b"}.icofont-file-video:before{content:"\eb2c"}.icofont-file-wave:before{content:"\eb2d"}.icofont-file-wmv:before{content:"\eb2e"}.icofont-file-word:before{content:"\eb2f"}.icofont-file-zip:before{content:"\eb30"}.icofont-cycling-alt:before{content:"\eb31"}.icofont-cycling:before{content:"\eb32"}.icofont-dumbbell:before{content:"\eb33"}.icofont-dumbbells:before{content:"\eb34"}.icofont-gym-alt-1:before{content:"\eb35"}.icofont-gym-alt-2:before{content:"\eb36"}.icofont-gym-alt-3:before{content:"\eb37"}.icofont-gym:before{content:"\eb38"}.icofont-muscle-weight:before{content:"\eb39"}.icofont-muscle:before{content:"\eb3a"}.icofont-apple:before{content:"\eb3b"}.icofont-arabian-coffee:before{content:"\eb3c"}.icofont-artichoke:before{content:"\eb3d"}.icofont-asparagus:before{content:"\eb3e"}.icofont-avocado:before{content:"\eb3f"}.icofont-baby-food:before{content:"\eb40"}.icofont-banana:before{content:"\eb41"}.icofont-bbq:before{content:"\eb42"}.icofont-beans:before{content:"\eb43"}.icofont-beer:before{content:"\eb44"}.icofont-bell-pepper-capsicum:before{content:"\eb45"}.icofont-birthday-cake:before{content:"\eb46"}.icofont-bread:before{content:"\eb47"}.icofont-broccoli:before{content:"\eb48"}.icofont-burger:before{content:"\eb49"}.icofont-cabbage:before{content:"\eb4a"}.icofont-carrot:before{content:"\eb4b"}.icofont-cauli-flower:before{content:"\eb4c"}.icofont-cheese:before{content:"\eb4d"}.icofont-chef:before{content:"\eb4e"}.icofont-cherry:before{content:"\eb4f"}.icofont-chicken-fry:before{content:"\eb50"}.icofont-chicken:before{content:"\eb51"}.icofont-cocktail:before{content:"\eb52"}.icofont-coconut-water:before{content:"\eb53"}.icofont-coconut:before{content:"\eb54"}.icofont-coffee-alt:before{content:"\eb55"}.icofont-coffee-cup:before{content:"\eb56"}.icofont-coffee-mug:before{content:"\eb57"}.icofont-coffee-pot:before{content:"\eb58"}.icofont-cola:before{content:"\eb59"}.icofont-corn:before{content:"\eb5a"}.icofont-croissant:before{content:"\eb5b"}.icofont-crop-plant:before{content:"\eb5c"}.icofont-cucumber:before{content:"\eb5d"}.icofont-culinary:before{content:"\eb5e"}.icofont-cup-cake:before{content:"\eb5f"}.icofont-dining-table:before{content:"\eb60"}.icofont-donut:before{content:"\eb61"}.icofont-egg-plant:before{content:"\eb62"}.icofont-egg-poached:before{content:"\eb63"}.icofont-farmer-alt:before{content:"\eb64"}.icofont-farmer:before{content:"\eb65"}.icofont-fast-food:before{content:"\eb66"}.icofont-food-basket:before{content:"\eb67"}.icofont-food-cart:before{content:"\eb68"}.icofont-fork-and-knife:before{content:"\eb69"}.icofont-french-fries:before{content:"\eb6a"}.icofont-fruits:before{content:"\eb6b"}.icofont-grapes:before{content:"\eb6c"}.icofont-honey:before{content:"\eb6d"}.icofont-hot-dog:before{content:"\eb6e"}.icofont-ice-cream-alt:before{content:"\eb6f"}.icofont-ice-cream:before{content:"\eb70"}.icofont-juice:before{content:"\eb71"}.icofont-ketchup:before{content:"\eb72"}.icofont-kiwi:before{content:"\eb73"}.icofont-layered-cake:before{content:"\eb74"}.icofont-lemon-alt:before{content:"\eb75"}.icofont-lemon:before{content:"\eb76"}.icofont-lobster:before{content:"\eb77"}.icofont-mango:before{content:"\eb78"}.icofont-milk:before{content:"\eb79"}.icofont-mushroom:before{content:"\eb7a"}.icofont-noodles:before{content:"\eb7b"}.icofont-onion:before{content:"\eb7c"}.icofont-orange:before{content:"\eb7d"}.icofont-pear:before{content:"\eb7e"}.icofont-peas:before{content:"\eb7f"}.icofont-pepper:before{content:"\eb80"}.icofont-pie-alt:before{content:"\eb81"}.icofont-pie:before{content:"\eb82"}.icofont-pineapple:before{content:"\eb83"}.icofont-pizza-slice:before{content:"\eb84"}.icofont-pizza:before{content:"\eb85"}.icofont-plant:before{content:"\eb86"}.icofont-popcorn:before{content:"\eb87"}.icofont-potato:before{content:"\eb88"}.icofont-pumpkin:before{content:"\eb89"}.icofont-raddish:before{content:"\eb8a"}.icofont-restaurant-menu:before{content:"\eb8b"}.icofont-restaurant:before{content:"\eb8c"}.icofont-salt-and-pepper:before{content:"\eb8d"}.icofont-sandwich:before{content:"\eb8e"}.icofont-sausage:before{content:"\eb8f"}.icofont-soft-drinks:before{content:"\eb90"}.icofont-soup-bowl:before{content:"\eb91"}.icofont-spoon-and-fork:before{content:"\eb92"}.icofont-steak:before{content:"\eb93"}.icofont-strawberry:before{content:"\eb94"}.icofont-sub-sandwich:before{content:"\eb95"}.icofont-sushi:before{content:"\eb96"}.icofont-taco:before{content:"\eb97"}.icofont-tea-pot:before{content:"\eb98"}.icofont-tea:before{content:"\eb99"}.icofont-tomato:before{content:"\eb9a"}.icofont-watermelon:before{content:"\eb9b"}.icofont-wheat:before{content:"\eb9c"}.icofont-baby-backpack:before{content:"\eb9d"}.icofont-baby-cloth:before{content:"\eb9e"}.icofont-baby-milk-bottle:before{content:"\eb9f"}.icofont-baby-trolley:before{content:"\eba0"}.icofont-baby:before{content:"\eba1"}.icofont-candy:before{content:"\eba2"}.icofont-holding-hands:before{content:"\eba3"}.icofont-infant-nipple:before{content:"\eba4"}.icofont-kids-scooter:before{content:"\eba5"}.icofont-safety-pin:before{content:"\eba6"}.icofont-teddy-bear:before{content:"\eba7"}.icofont-toy-ball:before{content:"\eba8"}.icofont-toy-cat:before{content:"\eba9"}.icofont-toy-duck:before{content:"\ebaa"}.icofont-toy-elephant:before{content:"\ebab"}.icofont-toy-hand:before{content:"\ebac"}.icofont-toy-horse:before{content:"\ebad"}.icofont-toy-lattu:before{content:"\ebae"}.icofont-toy-train:before{content:"\ebaf"}.icofont-burglar:before{content:"\ebb0"}.icofont-cannon-firing:before{content:"\ebb1"}.icofont-cc-camera:before{content:"\ebb2"}.icofont-cop-badge:before{content:"\ebb3"}.icofont-cop:before{content:"\ebb4"}.icofont-court-hammer:before{content:"\ebb5"}.icofont-court:before{content:"\ebb6"}.icofont-finger-print:before{content:"\ebb7"}.icofont-gavel:before{content:"\ebb8"}.icofont-handcuff-alt:before{content:"\ebb9"}.icofont-handcuff:before{content:"\ebba"}.icofont-investigation:before{content:"\ebbb"}.icofont-investigator:before{content:"\ebbc"}.icofont-jail:before{content:"\ebbd"}.icofont-judge:before{content:"\ebbe"}.icofont-law-alt-1:before{content:"\ebbf"}.icofont-law-alt-2:before{content:"\ebc0"}.icofont-law-alt-3:before{content:"\ebc1"}.icofont-law-book:before{content:"\ebc2"}.icofont-law-document:before{content:"\ebc3"}.icofont-law-order:before{content:"\ebc4"}.icofont-law-protect:before{content:"\ebc5"}.icofont-law-scales:before{content:"\ebc6"}.icofont-law:before{content:"\ebc7"}.icofont-lawyer-alt-1:before{content:"\ebc8"}.icofont-lawyer-alt-2:before{content:"\ebc9"}.icofont-lawyer:before{content:"\ebca"}.icofont-legal:before{content:"\ebcb"}.icofont-pistol:before{content:"\ebcc"}.icofont-police-badge:before{content:"\ebcd"}.icofont-police-cap:before{content:"\ebce"}.icofont-police-car-alt-1:before{content:"\ebcf"}.icofont-police-car-alt-2:before{content:"\ebd0"}.icofont-police-car:before{content:"\ebd1"}.icofont-police-hat:before{content:"\ebd2"}.icofont-police-van:before{content:"\ebd3"}.icofont-police:before{content:"\ebd4"}.icofont-thief-alt:before{content:"\ebd5"}.icofont-thief:before{content:"\ebd6"}.icofont-abacus-alt:before{content:"\ebd7"}.icofont-abacus:before{content:"\ebd8"}.icofont-angle-180:before{content:"\ebd9"}.icofont-angle-45:before{content:"\ebda"}.icofont-angle-90:before{content:"\ebdb"}.icofont-angle:before{content:"\ebdc"}.icofont-calculator-alt-1:before{content:"\ebdd"}.icofont-calculator-alt-2:before{content:"\ebde"}.icofont-calculator:before{content:"\ebdf"}.icofont-circle-ruler-alt:before{content:"\ebe0"}.icofont-circle-ruler:before{content:"\ebe1"}.icofont-compass-alt-1:before{content:"\ebe2"}.icofont-compass-alt-2:before{content:"\ebe3"}.icofont-compass-alt-3:before{content:"\ebe4"}.icofont-compass-alt-4:before{content:"\ebe5"}.icofont-golden-ratio:before{content:"\ebe6"}.icofont-marker-alt-1:before{content:"\ebe7"}.icofont-marker-alt-2:before{content:"\ebe8"}.icofont-marker-alt-3:before{content:"\ebe9"}.icofont-marker:before{content:"\ebea"}.icofont-math:before{content:"\ebeb"}.icofont-mathematical-alt-1:before{content:"\ebec"}.icofont-mathematical-alt-2:before{content:"\ebed"}.icofont-mathematical:before{content:"\ebee"}.icofont-pen-alt-1:before{content:"\ebef"}.icofont-pen-alt-2:before{content:"\ebf0"}.icofont-pen-alt-3:before{content:"\ebf1"}.icofont-pen-holder-alt-1:before{content:"\ebf2"}.icofont-pen-holder:before{content:"\ebf3"}.icofont-pen:before{content:"\ebf4"}.icofont-pencil-alt-1:before{content:"\ebf5"}.icofont-pencil-alt-2:before{content:"\ebf6"}.icofont-pencil-alt-3:before{content:"\ebf7"}.icofont-pencil-alt-4:before{content:"\ebf8"}.icofont-pencil:before{content:"\ebf9"}.icofont-ruler-alt-1:before{content:"\ebfa"}.icofont-ruler-alt-2:before{content:"\ebfb"}.icofont-ruler-compass-alt:before{content:"\ebfc"}.icofont-ruler-compass:before{content:"\ebfd"}.icofont-ruler-pencil-alt-1:before{content:"\ebfe"}.icofont-ruler-pencil-alt-2:before{content:"\ebff"}.icofont-ruler-pencil:before{content:"\ec00"}.icofont-ruler:before{content:"\ec01"}.icofont-rulers-alt:before{content:"\ec02"}.icofont-rulers:before{content:"\ec03"}.icofont-square-root:before{content:"\ec04"}.icofont-ui-calculator:before{content:"\ec05"}.icofont-aids:before{content:"\ec06"}.icofont-ambulance-crescent:before{content:"\ec07"}.icofont-ambulance-cross:before{content:"\ec08"}.icofont-ambulance:before{content:"\ec09"}.icofont-autism:before{content:"\ec0a"}.icofont-bandage:before{content:"\ec0b"}.icofont-blind:before{content:"\ec0c"}.icofont-blood-drop:before{content:"\ec0d"}.icofont-blood-test:before{content:"\ec0e"}.icofont-blood:before{content:"\ec0f"}.icofont-brain-alt:before{content:"\ec10"}.icofont-brain:before{content:"\ec11"}.icofont-capsule:before{content:"\ec12"}.icofont-crutch:before{content:"\ec13"}.icofont-disabled:before{content:"\ec14"}.icofont-dna-alt-1:before{content:"\ec15"}.icofont-dna-alt-2:before{content:"\ec16"}.icofont-dna:before{content:"\ec17"}.icofont-doctor-alt:before{content:"\ec18"}.icofont-doctor:before{content:"\ec19"}.icofont-drug-pack:before{content:"\ec1a"}.icofont-drug:before{content:"\ec1b"}.icofont-first-aid-alt:before{content:"\ec1c"}.icofont-first-aid:before{content:"\ec1d"}.icofont-heart-beat-alt:before{content:"\ec1e"}.icofont-heart-beat:before{content:"\ec1f"}.icofont-heartbeat:before{content:"\ec20"}.icofont-herbal:before{content:"\ec21"}.icofont-hospital:before{content:"\ec22"}.icofont-icu:before{content:"\ec23"}.icofont-injection-syringe:before{content:"\ec24"}.icofont-laboratory:before{content:"\ec25"}.icofont-medical-sign-alt:before{content:"\ec26"}.icofont-medical-sign:before{content:"\ec27"}.icofont-nurse-alt:before{content:"\ec28"}.icofont-nurse:before{content:"\ec29"}.icofont-nursing-home:before{content:"\ec2a"}.icofont-operation-theater:before{content:"\ec2b"}.icofont-paralysis-disability:before{content:"\ec2c"}.icofont-patient-bed:before{content:"\ec2d"}.icofont-patient-file:before{content:"\ec2e"}.icofont-pills:before{content:"\ec2f"}.icofont-prescription:before{content:"\ec30"}.icofont-pulse:before{content:"\ec31"}.icofont-stethoscope-alt:before{content:"\ec32"}.icofont-stethoscope:before{content:"\ec33"}.icofont-stretcher:before{content:"\ec34"}.icofont-surgeon-alt:before{content:"\ec35"}.icofont-surgeon:before{content:"\ec36"}.icofont-tablets:before{content:"\ec37"}.icofont-test-bottle:before{content:"\ec38"}.icofont-test-tube:before{content:"\ec39"}.icofont-thermometer-alt:before{content:"\ec3a"}.icofont-thermometer:before{content:"\ec3b"}.icofont-tooth:before{content:"\ec3c"}.icofont-xray:before{content:"\ec3d"}.icofont-ui-add:before{content:"\ec3e"}.icofont-ui-alarm:before{content:"\ec3f"}.icofont-ui-battery:before{content:"\ec40"}.icofont-ui-block:before{content:"\ec41"}.icofont-ui-bluetooth:before{content:"\ec42"}.icofont-ui-brightness:before{content:"\ec43"}.icofont-ui-browser:before{content:"\ec44"}.icofont-ui-calendar:before{content:"\ec45"}.icofont-ui-call:before{content:"\ec46"}.icofont-ui-camera:before{content:"\ec47"}.icofont-ui-cart:before{content:"\ec48"}.icofont-ui-cell-phone:before{content:"\ec49"}.icofont-ui-chat:before{content:"\ec4a"}.icofont-ui-check:before{content:"\ec4b"}.icofont-ui-clip-board:before{content:"\ec4c"}.icofont-ui-clip:before{content:"\ec4d"}.icofont-ui-clock:before{content:"\ec4e"}.icofont-ui-close:before{content:"\ec4f"}.icofont-ui-contact-list:before{content:"\ec50"}.icofont-ui-copy:before{content:"\ec51"}.icofont-ui-cut:before{content:"\ec52"}.icofont-ui-delete:before{content:"\ec53"}.icofont-ui-dial-phone:before{content:"\ec54"}.icofont-ui-edit:before{content:"\ec55"}.icofont-ui-email:before{content:"\ec56"}.icofont-ui-file:before{content:"\ec57"}.icofont-ui-fire-wall:before{content:"\ec58"}.icofont-ui-flash-light:before{content:"\ec59"}.icofont-ui-flight:before{content:"\ec5a"}.icofont-ui-folder:before{content:"\ec5b"}.icofont-ui-game:before{content:"\ec5c"}.icofont-ui-handicapped:before{content:"\ec5d"}.icofont-ui-home:before{content:"\ec5e"}.icofont-ui-image:before{content:"\ec5f"}.icofont-ui-laoding:before{content:"\ec60"}.icofont-ui-lock:before{content:"\ec61"}.icofont-ui-love-add:before{content:"\ec62"}.icofont-ui-love-broken:before{content:"\ec63"}.icofont-ui-love-remove:before{content:"\ec64"}.icofont-ui-love:before{content:"\ec65"}.icofont-ui-map:before{content:"\ec66"}.icofont-ui-message:before{content:"\ec67"}.icofont-ui-messaging:before{content:"\ec68"}.icofont-ui-movie:before{content:"\ec69"}.icofont-ui-music-player:before{content:"\ec6a"}.icofont-ui-music:before{content:"\ec6b"}.icofont-ui-mute:before{content:"\ec6c"}.icofont-ui-network:before{content:"\ec6d"}.icofont-ui-next:before{content:"\ec6e"}.icofont-ui-note:before{content:"\ec6f"}.icofont-ui-office:before{content:"\ec70"}.icofont-ui-password:before{content:"\ec71"}.icofont-ui-pause:before{content:"\ec72"}.icofont-ui-play-stop:before{content:"\ec73"}.icofont-ui-play:before{content:"\ec74"}.icofont-ui-pointer:before{content:"\ec75"}.icofont-ui-power:before{content:"\ec76"}.icofont-ui-press:before{content:"\ec77"}.icofont-ui-previous:before{content:"\ec78"}.icofont-ui-rate-add:before{content:"\ec79"}.icofont-ui-rate-blank:before{content:"\ec7a"}.icofont-ui-rate-remove:before{content:"\ec7b"}.icofont-ui-rating:before{content:"\ec7c"}.icofont-ui-record:before{content:"\ec7d"}.icofont-ui-remove:before{content:"\ec7e"}.icofont-ui-reply:before{content:"\ec7f"}.icofont-ui-rotation:before{content:"\ec80"}.icofont-ui-rss:before{content:"\ec81"}.icofont-ui-search:before{content:"\ec82"}.icofont-ui-settings:before{content:"\ec83"}.icofont-ui-social-link:before{content:"\ec84"}.icofont-ui-tag:before{content:"\ec85"}.icofont-ui-text-chat:before{content:"\ec86"}.icofont-ui-text-loading:before{content:"\ec87"}.icofont-ui-theme:before{content:"\ec88"}.icofont-ui-timer:before{content:"\ec89"}.icofont-ui-touch-phone:before{content:"\ec8a"}.icofont-ui-travel:before{content:"\ec8b"}.icofont-ui-unlock:before{content:"\ec8c"}.icofont-ui-user-group:before{content:"\ec8d"}.icofont-ui-user:before{content:"\ec8e"}.icofont-ui-v-card:before{content:"\ec8f"}.icofont-ui-video-chat:before{content:"\ec90"}.icofont-ui-video-message:before{content:"\ec91"}.icofont-ui-video-play:before{content:"\ec92"}.icofont-ui-video:before{content:"\ec93"}.icofont-ui-volume:before{content:"\ec94"}.icofont-ui-weather:before{content:"\ec95"}.icofont-ui-wifi:before{content:"\ec96"}.icofont-ui-zoom-in:before{content:"\ec97"}.icofont-ui-zoom-out:before{content:"\ec98"}.icofont-cassette-player:before{content:"\ec99"}.icofont-cassette:before{content:"\ec9a"}.icofont-forward:before{content:"\ec9b"}.icofont-guiter:before{content:"\ec9c"}.icofont-movie:before{content:"\ec9d"}.icofont-multimedia:before{content:"\ec9e"}.icofont-music-alt:before{content:"\ec9f"}.icofont-music-disk:before{content:"\eca0"}.icofont-music-note:before{content:"\eca1"}.icofont-music-notes:before{content:"\eca2"}.icofont-music:before{content:"\eca3"}.icofont-mute-volume:before{content:"\eca4"}.icofont-pause:before{content:"\eca5"}.icofont-play-alt-1:before{content:"\eca6"}.icofont-play-alt-2:before{content:"\eca7"}.icofont-play-alt-3:before{content:"\eca8"}.icofont-play-pause:before{content:"\eca9"}.icofont-play:before{content:"\ecaa"}.icofont-record:before{content:"\ecab"}.icofont-retro-music-disk:before{content:"\ecac"}.icofont-rewind:before{content:"\ecad"}.icofont-song-notes:before{content:"\ecae"}.icofont-sound-wave-alt:before{content:"\ecaf"}.icofont-sound-wave:before{content:"\ecb0"}.icofont-stop:before{content:"\ecb1"}.icofont-video-alt:before{content:"\ecb2"}.icofont-video-cam:before{content:"\ecb3"}.icofont-video-clapper:before{content:"\ecb4"}.icofont-video:before{content:"\ecb5"}.icofont-volume-bar:before{content:"\ecb6"}.icofont-volume-down:before{content:"\ecb7"}.icofont-volume-mute:before{content:"\ecb8"}.icofont-volume-off:before{content:"\ecb9"}.icofont-volume-up:before{content:"\ecba"}.icofont-youtube-play:before{content:"\ecbb"}.icofont-2checkout-alt:before{content:"\ecbc"}.icofont-2checkout:before{content:"\ecbd"}.icofont-amazon-alt:before{content:"\ecbe"}.icofont-amazon:before{content:"\ecbf"}.icofont-american-express-alt:before{content:"\ecc0"}.icofont-american-express:before{content:"\ecc1"}.icofont-apple-pay-alt:before{content:"\ecc2"}.icofont-apple-pay:before{content:"\ecc3"}.icofont-bank-transfer-alt:before{content:"\ecc4"}.icofont-bank-transfer:before{content:"\ecc5"}.icofont-braintree-alt:before{content:"\ecc6"}.icofont-braintree:before{content:"\ecc7"}.icofont-cash-on-delivery-alt:before{content:"\ecc8"}.icofont-cash-on-delivery:before{content:"\ecc9"}.icofont-diners-club-alt-1:before{content:"\ecca"}.icofont-diners-club-alt-2:before{content:"\eccb"}.icofont-diners-club-alt-3:before{content:"\eccc"}.icofont-diners-club:before{content:"\eccd"}.icofont-discover-alt:before{content:"\ecce"}.icofont-discover:before{content:"\eccf"}.icofont-eway-alt:before{content:"\ecd0"}.icofont-eway:before{content:"\ecd1"}.icofont-google-wallet-alt-1:before{content:"\ecd2"}.icofont-google-wallet-alt-2:before{content:"\ecd3"}.icofont-google-wallet-alt-3:before{content:"\ecd4"}.icofont-google-wallet:before{content:"\ecd5"}.icofont-jcb-alt:before{content:"\ecd6"}.icofont-jcb:before{content:"\ecd7"}.icofont-maestro-alt:before{content:"\ecd8"}.icofont-maestro:before{content:"\ecd9"}.icofont-mastercard-alt:before{content:"\ecda"}.icofont-mastercard:before{content:"\ecdb"}.icofont-payoneer-alt:before{content:"\ecdc"}.icofont-payoneer:before{content:"\ecdd"}.icofont-paypal-alt:before{content:"\ecde"}.icofont-paypal:before{content:"\ecdf"}.icofont-sage-alt:before{content:"\ece0"}.icofont-sage:before{content:"\ece1"}.icofont-skrill-alt:before{content:"\ece2"}.icofont-skrill:before{content:"\ece3"}.icofont-stripe-alt:before{content:"\ece4"}.icofont-stripe:before{content:"\ece5"}.icofont-visa-alt:before{content:"\ece6"}.icofont-visa-electron:before{content:"\ece7"}.icofont-visa:before{content:"\ece8"}.icofont-western-union-alt:before{content:"\ece9"}.icofont-western-union:before{content:"\ecea"}.icofont-boy:before{content:"\eceb"}.icofont-business-man-alt-1:before{content:"\ecec"}.icofont-business-man-alt-2:before{content:"\eced"}.icofont-business-man-alt-3:before{content:"\ecee"}.icofont-business-man:before{content:"\ecef"}.icofont-female:before{content:"\ecf0"}.icofont-funky-man:before{content:"\ecf1"}.icofont-girl-alt:before{content:"\ecf2"}.icofont-girl:before{content:"\ecf3"}.icofont-group:before{content:"\ecf4"}.icofont-hotel-boy-alt:before{content:"\ecf5"}.icofont-hotel-boy:before{content:"\ecf6"}.icofont-kid:before{content:"\ecf7"}.icofont-man-in-glasses:before{content:"\ecf8"}.icofont-people:before{content:"\ecf9"}.icofont-support:before{content:"\ecfa"}.icofont-user-alt-1:before{content:"\ecfb"}.icofont-user-alt-2:before{content:"\ecfc"}.icofont-user-alt-3:before{content:"\ecfd"}.icofont-user-alt-4:before{content:"\ecfe"}.icofont-user-alt-5:before{content:"\ecff"}.icofont-user-alt-6:before{content:"\ed00"}.icofont-user-alt-7:before{content:"\ed01"}.icofont-user-female:before{content:"\ed02"}.icofont-user-male:before{content:"\ed03"}.icofont-user-suited:before{content:"\ed04"}.icofont-user:before{content:"\ed05"}.icofont-users-alt-1:before{content:"\ed06"}.icofont-users-alt-2:before{content:"\ed07"}.icofont-users-alt-3:before{content:"\ed08"}.icofont-users-alt-4:before{content:"\ed09"}.icofont-users-alt-5:before{content:"\ed0a"}.icofont-users-alt-6:before{content:"\ed0b"}.icofont-users-social:before{content:"\ed0c"}.icofont-users:before{content:"\ed0d"}.icofont-waiter-alt:before{content:"\ed0e"}.icofont-waiter:before{content:"\ed0f"}.icofont-woman-in-glasses:before{content:"\ed10"}.icofont-search-1:before{content:"\ed11"}.icofont-search-2:before{content:"\ed12"}.icofont-search-document:before{content:"\ed13"}.icofont-search-folder:before{content:"\ed14"}.icofont-search-job:before{content:"\ed15"}.icofont-search-map:before{content:"\ed16"}.icofont-search-property:before{content:"\ed17"}.icofont-search-restaurant:before{content:"\ed18"}.icofont-search-stock:before{content:"\ed19"}.icofont-search-user:before{content:"\ed1a"}.icofont-search:before{content:"\ed1b"}.icofont-500px:before{content:"\ed1c"}.icofont-aim:before{content:"\ed1d"}.icofont-badoo:before{content:"\ed1e"}.icofont-baidu-tieba:before{content:"\ed1f"}.icofont-bbm-messenger:before{content:"\ed20"}.icofont-bebo:before{content:"\ed21"}.icofont-behance:before{content:"\ed22"}.icofont-blogger:before{content:"\ed23"}.icofont-bootstrap:before{content:"\ed24"}.icofont-brightkite:before{content:"\ed25"}.icofont-cloudapp:before{content:"\ed26"}.icofont-concrete5:before{content:"\ed27"}.icofont-delicious:before{content:"\ed28"}.icofont-designbump:before{content:"\ed29"}.icofont-designfloat:before{content:"\ed2a"}.icofont-deviantart:before{content:"\ed2b"}.icofont-digg:before{content:"\ed2c"}.icofont-dotcms:before{content:"\ed2d"}.icofont-dribbble:before{content:"\ed2e"}.icofont-dribble:before{content:"\ed2f"}.icofont-dropbox:before{content:"\ed30"}.icofont-ebuddy:before{content:"\ed31"}.icofont-ello:before{content:"\ed32"}.icofont-ember:before{content:"\ed33"}.icofont-envato:before{content:"\ed34"}.icofont-evernote:before{content:"\ed35"}.icofont-facebook-messenger:before{content:"\ed36"}.icofont-facebook:before{content:"\ed37"}.icofont-feedburner:before{content:"\ed38"}.icofont-flikr:before{content:"\ed39"}.icofont-folkd:before{content:"\ed3a"}.icofont-foursquare:before{content:"\ed3b"}.icofont-friendfeed:before{content:"\ed3c"}.icofont-ghost:before{content:"\ed3d"}.icofont-github:before{content:"\ed3e"}.icofont-gnome:before{content:"\ed3f"}.icofont-google-buzz:before{content:"\ed40"}.icofont-google-hangouts:before{content:"\ed41"}.icofont-google-map:before{content:"\ed42"}.icofont-google-plus:before{content:"\ed43"}.icofont-google-talk:before{content:"\ed44"}.icofont-hype-machine:before{content:"\ed45"}.icofont-instagram:before{content:"\ed46"}.icofont-kakaotalk:before{content:"\ed47"}.icofont-kickstarter:before{content:"\ed48"}.icofont-kik:before{content:"\ed49"}.icofont-kiwibox:before{content:"\ed4a"}.icofont-line-messenger:before{content:"\ed4b"}.icofont-line:before{content:"\ed4c"}.icofont-linkedin:before{content:"\ed4d"}.icofont-linux-mint:before{content:"\ed4e"}.icofont-live-messenger:before{content:"\ed4f"}.icofont-livejournal:before{content:"\ed50"}.icofont-magento:before{content:"\ed51"}.icofont-meetme:before{content:"\ed52"}.icofont-meetup:before{content:"\ed53"}.icofont-mixx:before{content:"\ed54"}.icofont-newsvine:before{content:"\ed55"}.icofont-nimbuss:before{content:"\ed56"}.icofont-odnoklassniki:before{content:"\ed57"}.icofont-opencart:before{content:"\ed58"}.icofont-oscommerce:before{content:"\ed59"}.icofont-pandora:before{content:"\ed5a"}.icofont-photobucket:before{content:"\ed5b"}.icofont-picasa:before{content:"\ed5c"}.icofont-pinterest:before{content:"\ed5d"}.icofont-prestashop:before{content:"\ed5e"}.icofont-qik:before{content:"\ed5f"}.icofont-qq:before{content:"\ed60"}.icofont-readernaut:before{content:"\ed61"}.icofont-reddit:before{content:"\ed62"}.icofont-renren:before{content:"\ed63"}.icofont-rss:before{content:"\ed64"}.icofont-shopify:before{content:"\ed65"}.icofont-silverstripe:before{content:"\ed66"}.icofont-skype:before{content:"\ed67"}.icofont-slack:before{content:"\ed68"}.icofont-slashdot:before{content:"\ed69"}.icofont-slidshare:before{content:"\ed6a"}.icofont-smugmug:before{content:"\ed6b"}.icofont-snapchat:before{content:"\ed6c"}.icofont-soundcloud:before{content:"\ed6d"}.icofont-spotify:before{content:"\ed6e"}.icofont-stack-exchange:before{content:"\ed6f"}.icofont-stack-overflow:before{content:"\ed70"}.icofont-steam:before{content:"\ed71"}.icofont-stumbleupon:before{content:"\ed72"}.icofont-tagged:before{content:"\ed73"}.icofont-technorati:before{content:"\ed74"}.icofont-telegram:before{content:"\ed75"}.icofont-tinder:before{content:"\ed76"}.icofont-trello:before{content:"\ed77"}.icofont-tumblr:before{content:"\ed78"}.icofont-twitch:before{content:"\ed79"}.icofont-twitter:before{content:"\ed7a"}.icofont-typo3:before{content:"\ed7b"}.icofont-ubercart:before{content:"\ed7c"}.icofont-viber:before{content:"\ed7d"}.icofont-viddler:before{content:"\ed7e"}.icofont-vimeo:before{content:"\ed7f"}.icofont-vine:before{content:"\ed80"}.icofont-virb:before{content:"\ed81"}.icofont-virtuemart:before{content:"\ed82"}.icofont-vk:before{content:"\ed83"}.icofont-wechat:before{content:"\ed84"}.icofont-weibo:before{content:"\ed85"}.icofont-whatsapp:before{content:"\ed86"}.icofont-xing:before{content:"\ed87"}.icofont-yahoo:before{content:"\ed88"}.icofont-yelp:before{content:"\ed89"}.icofont-youku:before{content:"\ed8a"}.icofont-youtube:before{content:"\ed8b"}.icofont-zencart:before{content:"\ed8c"}.icofont-badminton-birdie:before{content:"\ed8d"}.icofont-baseball:before{content:"\ed8e"}.icofont-baseballer:before{content:"\ed8f"}.icofont-basketball-hoop:before{content:"\ed90"}.icofont-basketball:before{content:"\ed91"}.icofont-billiard-ball:before{content:"\ed92"}.icofont-boot-alt-1:before{content:"\ed93"}.icofont-boot-alt-2:before{content:"\ed94"}.icofont-boot:before{content:"\ed95"}.icofont-bowling-alt:before{content:"\ed96"}.icofont-bowling:before{content:"\ed97"}.icofont-canoe:before{content:"\ed98"}.icofont-cheer-leader:before{content:"\ed99"}.icofont-climbing:before{content:"\ed9a"}.icofont-corner:before{content:"\ed9b"}.icofont-field-alt:before{content:"\ed9c"}.icofont-field:before{content:"\ed9d"}.icofont-football-alt:before{content:"\ed9e"}.icofont-football-american:before{content:"\ed9f"}.icofont-football:before{content:"\eda0"}.icofont-foul:before{content:"\eda1"}.icofont-goal-keeper:before{content:"\eda2"}.icofont-goal:before{content:"\eda3"}.icofont-golf-alt:before{content:"\eda4"}.icofont-golf-bag:before{content:"\eda5"}.icofont-golf-cart:before{content:"\eda6"}.icofont-golf-field:before{content:"\eda7"}.icofont-golf:before{content:"\eda8"}.icofont-golfer:before{content:"\eda9"}.icofont-helmet:before{content:"\edaa"}.icofont-hockey-alt:before{content:"\edab"}.icofont-hockey:before{content:"\edac"}.icofont-ice-skate:before{content:"\edad"}.icofont-jersey-alt:before{content:"\edae"}.icofont-jersey:before{content:"\edaf"}.icofont-jumping:before{content:"\edb0"}.icofont-kick:before{content:"\edb1"}.icofont-leg:before{content:"\edb2"}.icofont-match-review:before{content:"\edb3"}.icofont-medal-sport:before{content:"\edb4"}.icofont-offside:before{content:"\edb5"}.icofont-olympic-logo:before{content:"\edb6"}.icofont-olympic:before{content:"\edb7"}.icofont-padding:before{content:"\edb8"}.icofont-penalty-card:before{content:"\edb9"}.icofont-racer:before{content:"\edba"}.icofont-racing-car:before{content:"\edbb"}.icofont-racing-flag-alt:before{content:"\edbc"}.icofont-racing-flag:before{content:"\edbd"}.icofont-racings-wheel:before{content:"\edbe"}.icofont-referee:before{content:"\edbf"}.icofont-refree-jersey:before{content:"\edc0"}.icofont-result-sport:before{content:"\edc1"}.icofont-rugby-ball:before{content:"\edc2"}.icofont-rugby-player:before{content:"\edc3"}.icofont-rugby:before{content:"\edc4"}.icofont-runner-alt-1:before{content:"\edc5"}.icofont-runner-alt-2:before{content:"\edc6"}.icofont-runner:before{content:"\edc7"}.icofont-score-board:before{content:"\edc8"}.icofont-skiing-man:before{content:"\edc9"}.icofont-skydiving-goggles:before{content:"\edca"}.icofont-snow-mobile:before{content:"\edcb"}.icofont-steering:before{content:"\edcc"}.icofont-stopwatch:before{content:"\edcd"}.icofont-substitute:before{content:"\edce"}.icofont-swimmer:before{content:"\edcf"}.icofont-table-tennis:before{content:"\edd0"}.icofont-team-alt:before{content:"\edd1"}.icofont-team:before{content:"\edd2"}.icofont-tennis-player:before{content:"\edd3"}.icofont-tennis:before{content:"\edd4"}.icofont-tracking:before{content:"\edd5"}.icofont-trophy-alt:before{content:"\edd6"}.icofont-trophy:before{content:"\edd7"}.icofont-volleyball-alt:before{content:"\edd8"}.icofont-volleyball-fire:before{content:"\edd9"}.icofont-volleyball:before{content:"\edda"}.icofont-water-bottle:before{content:"\eddb"}.icofont-whistle-alt:before{content:"\eddc"}.icofont-whistle:before{content:"\eddd"}.icofont-win-trophy:before{content:"\edde"}.icofont-align-center:before{content:"\eddf"}.icofont-align-left:before{content:"\ede0"}.icofont-align-right:before{content:"\ede1"}.icofont-all-caps:before{content:"\ede2"}.icofont-bold:before{content:"\ede3"}.icofont-brush:before{content:"\ede4"}.icofont-clip-board:before{content:"\ede5"}.icofont-code-alt:before{content:"\ede6"}.icofont-color-bucket:before{content:"\ede7"}.icofont-color-picker:before{content:"\ede8"}.icofont-copy-invert:before{content:"\ede9"}.icofont-copy:before{content:"\edea"}.icofont-cut:before{content:"\edeb"}.icofont-delete-alt:before{content:"\edec"}.icofont-edit-alt:before{content:"\eded"}.icofont-eraser-alt:before{content:"\edee"}.icofont-font:before{content:"\edef"}.icofont-heading:before{content:"\edf0"}.icofont-indent:before{content:"\edf1"}.icofont-italic-alt:before{content:"\edf2"}.icofont-italic:before{content:"\edf3"}.icofont-justify-all:before{content:"\edf4"}.icofont-justify-center:before{content:"\edf5"}.icofont-justify-left:before{content:"\edf6"}.icofont-justify-right:before{content:"\edf7"}.icofont-link-broken:before{content:"\edf8"}.icofont-outdent:before{content:"\edf9"}.icofont-paper-clip:before{content:"\edfa"}.icofont-paragraph:before{content:"\edfb"}.icofont-pin:before{content:"\edfc"}.icofont-printer:before{content:"\edfd"}.icofont-redo:before{content:"\edfe"}.icofont-rotation:before{content:"\edff"}.icofont-save:before{content:"\ee00"}.icofont-small-cap:before{content:"\ee01"}.icofont-strike-through:before{content:"\ee02"}.icofont-sub-listing:before{content:"\ee03"}.icofont-subscript:before{content:"\ee04"}.icofont-superscript:before{content:"\ee05"}.icofont-table:before{content:"\ee06"}.icofont-text-height:before{content:"\ee07"}.icofont-text-width:before{content:"\ee08"}.icofont-trash:before{content:"\ee09"}.icofont-underline:before{content:"\ee0a"}.icofont-undo:before{content:"\ee0b"}.icofont-air-balloon:before{content:"\ee0c"}.icofont-airplane-alt:before{content:"\ee0d"}.icofont-airplane:before{content:"\ee0e"}.icofont-articulated-truck:before{content:"\ee0f"}.icofont-auto-mobile:before{content:"\ee10"}.icofont-auto-rickshaw:before{content:"\ee11"}.icofont-bicycle-alt-1:before{content:"\ee12"}.icofont-bicycle-alt-2:before{content:"\ee13"}.icofont-bicycle:before{content:"\ee14"}.icofont-bus-alt-1:before{content:"\ee15"}.icofont-bus-alt-2:before{content:"\ee16"}.icofont-bus-alt-3:before{content:"\ee17"}.icofont-bus:before{content:"\ee18"}.icofont-cab:before{content:"\ee19"}.icofont-cable-car:before{content:"\ee1a"}.icofont-car-alt-1:before{content:"\ee1b"}.icofont-car-alt-2:before{content:"\ee1c"}.icofont-car-alt-3:before{content:"\ee1d"}.icofont-car-alt-4:before{content:"\ee1e"}.icofont-car:before{content:"\ee1f"}.icofont-delivery-time:before{content:"\ee20"}.icofont-fast-delivery:before{content:"\ee21"}.icofont-fire-truck-alt:before{content:"\ee22"}.icofont-fire-truck:before{content:"\ee23"}.icofont-free-delivery:before{content:"\ee24"}.icofont-helicopter:before{content:"\ee25"}.icofont-motor-bike-alt:before{content:"\ee26"}.icofont-motor-bike:before{content:"\ee27"}.icofont-motor-biker:before{content:"\ee28"}.icofont-oil-truck:before{content:"\ee29"}.icofont-rickshaw:before{content:"\ee2a"}.icofont-rocket-alt-1:before{content:"\ee2b"}.icofont-rocket-alt-2:before{content:"\ee2c"}.icofont-rocket:before{content:"\ee2d"}.icofont-sail-boat-alt-1:before{content:"\ee2e"}.icofont-sail-boat-alt-2:before{content:"\ee2f"}.icofont-sail-boat:before{content:"\ee30"}.icofont-scooter:before{content:"\ee31"}.icofont-sea-plane:before{content:"\ee32"}.icofont-ship-alt:before{content:"\ee33"}.icofont-ship:before{content:"\ee34"}.icofont-speed-boat:before{content:"\ee35"}.icofont-taxi:before{content:"\ee36"}.icofont-tractor:before{content:"\ee37"}.icofont-train-line:before{content:"\ee38"}.icofont-train-steam:before{content:"\ee39"}.icofont-tram:before{content:"\ee3a"}.icofont-truck-alt:before{content:"\ee3b"}.icofont-truck-loaded:before{content:"\ee3c"}.icofont-truck:before{content:"\ee3d"}.icofont-van-alt:before{content:"\ee3e"}.icofont-van:before{content:"\ee3f"}.icofont-yacht:before{content:"\ee40"}.icofont-5-star-hotel:before{content:"\ee41"}.icofont-air-ticket:before{content:"\ee42"}.icofont-beach-bed:before{content:"\ee43"}.icofont-beach:before{content:"\ee44"}.icofont-camping-vest:before{content:"\ee45"}.icofont-direction-sign:before{content:"\ee46"}.icofont-hill-side:before{content:"\ee47"}.icofont-hill:before{content:"\ee48"}.icofont-hotel:before{content:"\ee49"}.icofont-island-alt:before{content:"\ee4a"}.icofont-island:before{content:"\ee4b"}.icofont-sandals-female:before{content:"\ee4c"}.icofont-sandals-male:before{content:"\ee4d"}.icofont-travelling:before{content:"\ee4e"}.icofont-breakdown:before{content:"\ee4f"}.icofont-celsius:before{content:"\ee50"}.icofont-clouds:before{content:"\ee51"}.icofont-cloudy:before{content:"\ee52"}.icofont-dust:before{content:"\ee53"}.icofont-eclipse:before{content:"\ee54"}.icofont-fahrenheit:before{content:"\ee55"}.icofont-forest-fire:before{content:"\ee56"}.icofont-full-night:before{content:"\ee57"}.icofont-full-sunny:before{content:"\ee58"}.icofont-hail-night:before{content:"\ee59"}.icofont-hail-rainy-night:before{content:"\ee5a"}.icofont-hail-rainy-sunny:before{content:"\ee5b"}.icofont-hail-rainy:before{content:"\ee5c"}.icofont-hail-sunny:before{content:"\ee5d"}.icofont-hail-thunder-night:before{content:"\ee5e"}.icofont-hail-thunder-sunny:before{content:"\ee5f"}.icofont-hail-thunder:before{content:"\ee60"}.icofont-hail:before{content:"\ee61"}.icofont-hill-night:before{content:"\ee62"}.icofont-hill-sunny:before{content:"\ee63"}.icofont-hurricane:before{content:"\ee64"}.icofont-meteor:before{content:"\ee65"}.icofont-night:before{content:"\ee66"}.icofont-rainy-night:before{content:"\ee67"}.icofont-rainy-sunny:before{content:"\ee68"}.icofont-rainy-thunder:before{content:"\ee69"}.icofont-rainy:before{content:"\ee6a"}.icofont-snow-alt:before{content:"\ee6b"}.icofont-snow-flake:before{content:"\ee6c"}.icofont-snow-temp:before{content:"\ee6d"}.icofont-snow:before{content:"\ee6e"}.icofont-snowy-hail:before{content:"\ee6f"}.icofont-snowy-night-hail:before{content:"\ee70"}.icofont-snowy-night-rainy:before{content:"\ee71"}.icofont-snowy-night:before{content:"\ee72"}.icofont-snowy-rainy:before{content:"\ee73"}.icofont-snowy-sunny-hail:before{content:"\ee74"}.icofont-snowy-sunny-rainy:before{content:"\ee75"}.icofont-snowy-sunny:before{content:"\ee76"}.icofont-snowy-thunder-night:before{content:"\ee77"}.icofont-snowy-thunder-sunny:before{content:"\ee78"}.icofont-snowy-thunder:before{content:"\ee79"}.icofont-snowy-windy-night:before{content:"\ee7a"}.icofont-snowy-windy-sunny:before{content:"\ee7b"}.icofont-snowy-windy:before{content:"\ee7c"}.icofont-snowy:before{content:"\ee7d"}.icofont-sun-alt:before{content:"\ee7e"}.icofont-sun-rise:before{content:"\ee7f"}.icofont-sun-set:before{content:"\ee80"}.icofont-sun:before{content:"\ee81"}.icofont-sunny-day-temp:before{content:"\ee82"}.icofont-sunny:before{content:"\ee83"}.icofont-thunder-light:before{content:"\ee84"}.icofont-tornado:before{content:"\ee85"}.icofont-umbrella-alt:before{content:"\ee86"}.icofont-umbrella:before{content:"\ee87"}.icofont-volcano:before{content:"\ee88"}.icofont-wave:before{content:"\ee89"}.icofont-wind-scale-0:before{content:"\ee8a"}.icofont-wind-scale-1:before{content:"\ee8b"}.icofont-wind-scale-10:before{content:"\ee8c"}.icofont-wind-scale-11:before{content:"\ee8d"}.icofont-wind-scale-12:before{content:"\ee8e"}.icofont-wind-scale-2:before{content:"\ee8f"}.icofont-wind-scale-3:before{content:"\ee90"}.icofont-wind-scale-4:before{content:"\ee91"}.icofont-wind-scale-5:before{content:"\ee92"}.icofont-wind-scale-6:before{content:"\ee93"}.icofont-wind-scale-7:before{content:"\ee94"}.icofont-wind-scale-8:before{content:"\ee95"}.icofont-wind-scale-9:before{content:"\ee96"}.icofont-wind-waves:before{content:"\ee97"}.icofont-wind:before{content:"\ee98"}.icofont-windy-hail:before{content:"\ee99"}.icofont-windy-night:before{content:"\ee9a"}.icofont-windy-raining:before{content:"\ee9b"}.icofont-windy-sunny:before{content:"\ee9c"}.icofont-windy-thunder-raining:before{content:"\ee9d"}.icofont-windy-thunder:before{content:"\ee9e"}.icofont-windy:before{content:"\ee9f"}.icofont-addons:before{content:"\eea0"}.icofont-address-book:before{content:"\eea1"}.icofont-adjust:before{content:"\eea2"}.icofont-alarm:before{content:"\eea3"}.icofont-anchor:before{content:"\eea4"}.icofont-archive:before{content:"\eea5"}.icofont-at:before{content:"\eea6"}.icofont-attachment:before{content:"\eea7"}.icofont-audio:before{content:"\eea8"}.icofont-automation:before{content:"\eea9"}.icofont-badge:before{content:"\eeaa"}.icofont-bag-alt:before{content:"\eeab"}.icofont-bag:before{content:"\eeac"}.icofont-ban:before{content:"\eead"}.icofont-bar-code:before{content:"\eeae"}.icofont-bars:before{content:"\eeaf"}.icofont-basket:before{content:"\eeb0"}.icofont-battery-empty:before{content:"\eeb1"}.icofont-battery-full:before{content:"\eeb2"}.icofont-battery-half:before{content:"\eeb3"}.icofont-battery-low:before{content:"\eeb4"}.icofont-beaker:before{content:"\eeb5"}.icofont-beard:before{content:"\eeb6"}.icofont-bed:before{content:"\eeb7"}.icofont-bell:before{content:"\eeb8"}.icofont-beverage:before{content:"\eeb9"}.icofont-bill:before{content:"\eeba"}.icofont-bin:before{content:"\eebb"}.icofont-binary:before{content:"\eebc"}.icofont-binoculars:before{content:"\eebd"}.icofont-bluetooth:before{content:"\eebe"}.icofont-bomb:before{content:"\eebf"}.icofont-book-mark:before{content:"\eec0"}.icofont-box:before{content:"\eec1"}.icofont-briefcase:before{content:"\eec2"}.icofont-broken:before{content:"\eec3"}.icofont-bucket:before{content:"\eec4"}.icofont-bucket1:before{content:"\eec5"}.icofont-bucket2:before{content:"\eec6"}.icofont-bug:before{content:"\eec7"}.icofont-building:before{content:"\eec8"}.icofont-bulb-alt:before{content:"\eec9"}.icofont-bullet:before{content:"\eeca"}.icofont-bullhorn:before{content:"\eecb"}.icofont-bullseye:before{content:"\eecc"}.icofont-calendar:before{content:"\eecd"}.icofont-camera-alt:before{content:"\eece"}.icofont-camera:before{content:"\eecf"}.icofont-card:before{content:"\eed0"}.icofont-cart-alt:before{content:"\eed1"}.icofont-cart:before{content:"\eed2"}.icofont-cc:before{content:"\eed3"}.icofont-charging:before{content:"\eed4"}.icofont-chat:before{content:"\eed5"}.icofont-check-alt:before{content:"\eed6"}.icofont-check-circled:before{content:"\eed7"}.icofont-check:before{content:"\eed8"}.icofont-checked:before{content:"\eed9"}.icofont-children-care:before{content:"\eeda"}.icofont-clip:before{content:"\eedb"}.icofont-clock-time:before{content:"\eedc"}.icofont-close-circled:before{content:"\eedd"}.icofont-close-line-circled:before{content:"\eede"}.icofont-close-line-squared-alt:before{content:"\eedf"}.icofont-close-line-squared:before{content:"\eee0"}.icofont-close-line:before{content:"\eee1"}.icofont-close-squared-alt:before{content:"\eee2"}.icofont-close-squared:before{content:"\eee3"}.icofont-close:before{content:"\eee4"}.icofont-cloud-download:before{content:"\eee5"}.icofont-cloud-refresh:before{content:"\eee6"}.icofont-cloud-upload:before{content:"\eee7"}.icofont-cloud:before{content:"\eee8"}.icofont-code-not-allowed:before{content:"\eee9"}.icofont-code:before{content:"\eeea"}.icofont-comment:before{content:"\eeeb"}.icofont-compass-alt:before{content:"\eeec"}.icofont-compass:before{content:"\eeed"}.icofont-computer:before{content:"\eeee"}.icofont-connection:before{content:"\eeef"}.icofont-console:before{content:"\eef0"}.icofont-contacts:before{content:"\eef1"}.icofont-contrast:before{content:"\eef2"}.icofont-copyright:before{content:"\eef3"}.icofont-credit-card:before{content:"\eef4"}.icofont-crop:before{content:"\eef5"}.icofont-crown:before{content:"\eef6"}.icofont-cube:before{content:"\eef7"}.icofont-cubes:before{content:"\eef8"}.icofont-dashboard-web:before{content:"\eef9"}.icofont-dashboard:before{content:"\eefa"}.icofont-data:before{content:"\eefb"}.icofont-database-add:before{content:"\eefc"}.icofont-database-locked:before{content:"\eefd"}.icofont-database-remove:before{content:"\eefe"}.icofont-database:before{content:"\eeff"}.icofont-delete:before{content:"\ef00"}.icofont-diamond:before{content:"\ef01"}.icofont-dice-multiple:before{content:"\ef02"}.icofont-dice:before{content:"\ef03"}.icofont-disc:before{content:"\ef04"}.icofont-diskette:before{content:"\ef05"}.icofont-document-folder:before{content:"\ef06"}.icofont-download-alt:before{content:"\ef07"}.icofont-download:before{content:"\ef08"}.icofont-downloaded:before{content:"\ef09"}.icofont-drag:before{content:"\ef0a"}.icofont-drag1:before{content:"\ef0b"}.icofont-drag2:before{content:"\ef0c"}.icofont-drag3:before{content:"\ef0d"}.icofont-earth:before{content:"\ef0e"}.icofont-ebook:before{content:"\ef0f"}.icofont-edit:before{content:"\ef10"}.icofont-eject:before{content:"\ef11"}.icofont-email:before{content:"\ef12"}.icofont-envelope-open:before{content:"\ef13"}.icofont-envelope:before{content:"\ef14"}.icofont-eraser:before{content:"\ef15"}.icofont-error:before{content:"\ef16"}.icofont-excavator:before{content:"\ef17"}.icofont-exchange:before{content:"\ef18"}.icofont-exclamation-circle:before{content:"\ef19"}.icofont-exclamation-square:before{content:"\ef1a"}.icofont-exclamation-tringle:before{content:"\ef1b"}.icofont-exclamation:before{content:"\ef1c"}.icofont-exit:before{content:"\ef1d"}.icofont-expand:before{content:"\ef1e"}.icofont-external-link:before{content:"\ef1f"}.icofont-external:before{content:"\ef20"}.icofont-eye-alt:before{content:"\ef21"}.icofont-eye-blocked:before{content:"\ef22"}.icofont-eye-dropper:before{content:"\ef23"}.icofont-eye:before{content:"\ef24"}.icofont-favourite:before{content:"\ef25"}.icofont-fax:before{content:"\ef26"}.icofont-file-fill:before{content:"\ef27"}.icofont-film:before{content:"\ef28"}.icofont-filter:before{content:"\ef29"}.icofont-fire-alt:before{content:"\ef2a"}.icofont-fire-burn:before{content:"\ef2b"}.icofont-fire:before{content:"\ef2c"}.icofont-flag-alt-1:before{content:"\ef2d"}.icofont-flag-alt-2:before{content:"\ef2e"}.icofont-flag:before{content:"\ef2f"}.icofont-flame-torch:before{content:"\ef30"}.icofont-flash-light:before{content:"\ef31"}.icofont-flash:before{content:"\ef32"}.icofont-flask:before{content:"\ef33"}.icofont-focus:before{content:"\ef34"}.icofont-folder-open:before{content:"\ef35"}.icofont-folder:before{content:"\ef36"}.icofont-foot-print:before{content:"\ef37"}.icofont-garbage:before{content:"\ef38"}.icofont-gear-alt:before{content:"\ef39"}.icofont-gear:before{content:"\ef3a"}.icofont-gears:before{content:"\ef3b"}.icofont-gift:before{content:"\ef3c"}.icofont-glass:before{content:"\ef3d"}.icofont-globe:before{content:"\ef3e"}.icofont-graffiti:before{content:"\ef3f"}.icofont-grocery:before{content:"\ef40"}.icofont-hand:before{content:"\ef41"}.icofont-hanger:before{content:"\ef42"}.icofont-hard-disk:before{content:"\ef43"}.icofont-heart-alt:before{content:"\ef44"}.icofont-heart:before{content:"\ef45"}.icofont-history:before{content:"\ef46"}.icofont-home:before{content:"\ef47"}.icofont-horn:before{content:"\ef48"}.icofont-hour-glass:before{content:"\ef49"}.icofont-id:before{content:"\ef4a"}.icofont-image:before{content:"\ef4b"}.icofont-inbox:before{content:"\ef4c"}.icofont-infinite:before{content:"\ef4d"}.icofont-info-circle:before{content:"\ef4e"}.icofont-info-square:before{content:"\ef4f"}.icofont-info:before{content:"\ef50"}.icofont-institution:before{content:"\ef51"}.icofont-interface:before{content:"\ef52"}.icofont-invisible:before{content:"\ef53"}.icofont-jacket:before{content:"\ef54"}.icofont-jar:before{content:"\ef55"}.icofont-jewlery:before{content:"\ef56"}.icofont-karate:before{content:"\ef57"}.icofont-key-hole:before{content:"\ef58"}.icofont-key:before{content:"\ef59"}.icofont-label:before{content:"\ef5a"}.icofont-lamp:before{content:"\ef5b"}.icofont-layers:before{content:"\ef5c"}.icofont-layout:before{content:"\ef5d"}.icofont-leaf:before{content:"\ef5e"}.icofont-leaflet:before{content:"\ef5f"}.icofont-learn:before{content:"\ef60"}.icofont-lego:before{content:"\ef61"}.icofont-lens:before{content:"\ef62"}.icofont-letter:before{content:"\ef63"}.icofont-letterbox:before{content:"\ef64"}.icofont-library:before{content:"\ef65"}.icofont-license:before{content:"\ef66"}.icofont-life-bouy:before{content:"\ef67"}.icofont-life-buoy:before{content:"\ef68"}.icofont-life-jacket:before{content:"\ef69"}.icofont-life-ring:before{content:"\ef6a"}.icofont-light-bulb:before{content:"\ef6b"}.icofont-lighter:before{content:"\ef6c"}.icofont-lightning-ray:before{content:"\ef6d"}.icofont-like:before{content:"\ef6e"}.icofont-line-height:before{content:"\ef6f"}.icofont-link-alt:before{content:"\ef70"}.icofont-link:before{content:"\ef71"}.icofont-list:before{content:"\ef72"}.icofont-listening:before{content:"\ef73"}.icofont-listine-dots:before{content:"\ef74"}.icofont-listing-box:before{content:"\ef75"}.icofont-listing-number:before{content:"\ef76"}.icofont-live-support:before{content:"\ef77"}.icofont-location-arrow:before{content:"\ef78"}.icofont-location-pin:before{content:"\ef79"}.icofont-lock:before{content:"\ef7a"}.icofont-login:before{content:"\ef7b"}.icofont-logout:before{content:"\ef7c"}.icofont-lollipop:before{content:"\ef7d"}.icofont-long-drive:before{content:"\ef7e"}.icofont-look:before{content:"\ef7f"}.icofont-loop:before{content:"\ef80"}.icofont-luggage:before{content:"\ef81"}.icofont-lunch:before{content:"\ef82"}.icofont-lungs:before{content:"\ef83"}.icofont-magic-alt:before{content:"\ef84"}.icofont-magic:before{content:"\ef85"}.icofont-magnet:before{content:"\ef86"}.icofont-mail-box:before{content:"\ef87"}.icofont-mail:before{content:"\ef88"}.icofont-male:before{content:"\ef89"}.icofont-map-pins:before{content:"\ef8a"}.icofont-map:before{content:"\ef8b"}.icofont-maximize:before{content:"\ef8c"}.icofont-measure:before{content:"\ef8d"}.icofont-medicine:before{content:"\ef8e"}.icofont-mega-phone:before{content:"\ef8f"}.icofont-megaphone-alt:before{content:"\ef90"}.icofont-megaphone:before{content:"\ef91"}.icofont-memorial:before{content:"\ef92"}.icofont-memory-card:before{content:"\ef93"}.icofont-mic-mute:before{content:"\ef94"}.icofont-mic:before{content:"\ef95"}.icofont-military:before{content:"\ef96"}.icofont-mill:before{content:"\ef97"}.icofont-minus-circle:before{content:"\ef98"}.icofont-minus-square:before{content:"\ef99"}.icofont-minus:before{content:"\ef9a"}.icofont-mobile-phone:before{content:"\ef9b"}.icofont-molecule:before{content:"\ef9c"}.icofont-money:before{content:"\ef9d"}.icofont-moon:before{content:"\ef9e"}.icofont-mop:before{content:"\ef9f"}.icofont-muffin:before{content:"\efa0"}.icofont-mustache:before{content:"\efa1"}.icofont-navigation-menu:before{content:"\efa2"}.icofont-navigation:before{content:"\efa3"}.icofont-network-tower:before{content:"\efa4"}.icofont-network:before{content:"\efa5"}.icofont-news:before{content:"\efa6"}.icofont-newspaper:before{content:"\efa7"}.icofont-no-smoking:before{content:"\efa8"}.icofont-not-allowed:before{content:"\efa9"}.icofont-notebook:before{content:"\efaa"}.icofont-notepad:before{content:"\efab"}.icofont-notification:before{content:"\efac"}.icofont-numbered:before{content:"\efad"}.icofont-opposite:before{content:"\efae"}.icofont-optic:before{content:"\efaf"}.icofont-options:before{content:"\efb0"}.icofont-package:before{content:"\efb1"}.icofont-page:before{content:"\efb2"}.icofont-paint:before{content:"\efb3"}.icofont-paper-plane:before{content:"\efb4"}.icofont-paperclip:before{content:"\efb5"}.icofont-papers:before{content:"\efb6"}.icofont-pay:before{content:"\efb7"}.icofont-penguin-linux:before{content:"\efb8"}.icofont-pestle:before{content:"\efb9"}.icofont-phone-circle:before{content:"\efba"}.icofont-phone:before{content:"\efbb"}.icofont-picture:before{content:"\efbc"}.icofont-pine:before{content:"\efbd"}.icofont-pixels:before{content:"\efbe"}.icofont-plugin:before{content:"\efbf"}.icofont-plus-circle:before{content:"\efc0"}.icofont-plus-square:before{content:"\efc1"}.icofont-plus:before{content:"\efc2"}.icofont-polygonal:before{content:"\efc3"}.icofont-power:before{content:"\efc4"}.icofont-price:before{content:"\efc5"}.icofont-print:before{content:"\efc6"}.icofont-puzzle:before{content:"\efc7"}.icofont-qr-code:before{content:"\efc8"}.icofont-queen:before{content:"\efc9"}.icofont-question-circle:before{content:"\efca"}.icofont-question-square:before{content:"\efcb"}.icofont-question:before{content:"\efcc"}.icofont-quote-left:before{content:"\efcd"}.icofont-quote-right:before{content:"\efce"}.icofont-random:before{content:"\efcf"}.icofont-recycle:before{content:"\efd0"}.icofont-refresh:before{content:"\efd1"}.icofont-repair:before{content:"\efd2"}.icofont-reply-all:before{content:"\efd3"}.icofont-reply:before{content:"\efd4"}.icofont-resize:before{content:"\efd5"}.icofont-responsive:before{content:"\efd6"}.icofont-retweet:before{content:"\efd7"}.icofont-road:before{content:"\efd8"}.icofont-robot:before{content:"\efd9"}.icofont-royal:before{content:"\efda"}.icofont-rss-feed:before{content:"\efdb"}.icofont-safety:before{content:"\efdc"}.icofont-sale-discount:before{content:"\efdd"}.icofont-satellite:before{content:"\efde"}.icofont-send-mail:before{content:"\efdf"}.icofont-server:before{content:"\efe0"}.icofont-settings-alt:before{content:"\efe1"}.icofont-settings:before{content:"\efe2"}.icofont-share-alt:before{content:"\efe3"}.icofont-share-boxed:before{content:"\efe4"}.icofont-share:before{content:"\efe5"}.icofont-shield:before{content:"\efe6"}.icofont-shopping-cart:before{content:"\efe7"}.icofont-sign-in:before{content:"\efe8"}.icofont-sign-out:before{content:"\efe9"}.icofont-signal:before{content:"\efea"}.icofont-site-map:before{content:"\efeb"}.icofont-smart-phone:before{content:"\efec"}.icofont-soccer:before{content:"\efed"}.icofont-sort-alt:before{content:"\efee"}.icofont-sort:before{content:"\efef"}.icofont-space:before{content:"\eff0"}.icofont-spanner:before{content:"\eff1"}.icofont-speech-comments:before{content:"\eff2"}.icofont-speed-meter:before{content:"\eff3"}.icofont-spinner-alt-1:before{content:"\eff4"}.icofont-spinner-alt-2:before{content:"\eff5"}.icofont-spinner-alt-3:before{content:"\eff6"}.icofont-spinner-alt-4:before{content:"\eff7"}.icofont-spinner-alt-5:before{content:"\eff8"}.icofont-spinner-alt-6:before{content:"\eff9"}.icofont-spinner:before{content:"\effa"}.icofont-spreadsheet:before{content:"\effb"}.icofont-square:before{content:"\effc"}.icofont-ssl-security:before{content:"\effd"}.icofont-star-alt-1:before{content:"\effe"}.icofont-star-alt-2:before{content:"\efff"}.icofont-star:before{content:"\f000"}.icofont-street-view:before{content:"\f001"}.icofont-support-faq:before{content:"\f002"}.icofont-tack-pin:before{content:"\f003"}.icofont-tag:before{content:"\f004"}.icofont-tags:before{content:"\f005"}.icofont-tasks-alt:before{content:"\f006"}.icofont-tasks:before{content:"\f007"}.icofont-telephone:before{content:"\f008"}.icofont-telescope:before{content:"\f009"}.icofont-terminal:before{content:"\f00a"}.icofont-thumbs-down:before{content:"\f00b"}.icofont-thumbs-up:before{content:"\f00c"}.icofont-tick-boxed:before{content:"\f00d"}.icofont-tick-mark:before{content:"\f00e"}.icofont-ticket:before{content:"\f00f"}.icofont-tie:before{content:"\f010"}.icofont-toggle-off:before{content:"\f011"}.icofont-toggle-on:before{content:"\f012"}.icofont-tools-alt-2:before{content:"\f013"}.icofont-tools:before{content:"\f014"}.icofont-touch:before{content:"\f015"}.icofont-traffic-light:before{content:"\f016"}.icofont-transparent:before{content:"\f017"}.icofont-tree:before{content:"\f018"}.icofont-unique-idea:before{content:"\f019"}.icofont-unlock:before{content:"\f01a"}.icofont-unlocked:before{content:"\f01b"}.icofont-upload-alt:before{content:"\f01c"}.icofont-upload:before{content:"\f01d"}.icofont-usb-drive:before{content:"\f01e"}.icofont-usb:before{content:"\f01f"}.icofont-vector-path:before{content:"\f020"}.icofont-verification-check:before{content:"\f021"}.icofont-wall-clock:before{content:"\f022"}.icofont-wall:before{content:"\f023"}.icofont-wallet:before{content:"\f024"}.icofont-warning-alt:before{content:"\f025"}.icofont-warning:before{content:"\f026"}.icofont-water-drop:before{content:"\f027"}.icofont-web:before{content:"\f028"}.icofont-wheelchair:before{content:"\f029"}.icofont-wifi-alt:before{content:"\f02a"}.icofont-wifi:before{content:"\f02b"}.icofont-world:before{content:"\f02c"}.icofont-zigzag:before{content:"\f02d"}.icofont-zipped:before{content:"\f02e"}.icofont-xs{font-size:.5em}.icofont-sm{font-size:.75em}.icofont-md{font-size:1.25em}.icofont-lg{font-size:1.5em}.icofont-1x{font-size:1em}.icofont-2x{font-size:2em}.icofont-3x{font-size:3em}.icofont-4x{font-size:4em}.icofont-5x{font-size:5em}.icofont-6x{font-size:6em}.icofont-7x{font-size:7em}.icofont-8x{font-size:8em}.icofont-9x{font-size:9em}.icofont-10x{font-size:10em}.icofont-fw{text-align:center;width:1.25em}.icofont-ul{list-style-type:none;padding-left:0;margin-left:0}.icofont-ul>li{position:relative;line-height:2em}.icofont-ul>li .icofont{display:inline-block;vertical-align:middle}.icofont-border{border:solid .08em #f1f1f1;border-radius:.1em;padding:.2em .25em .15em}.icofont-pull-left{float:left}.icofont-pull-right{float:right}.icofont.icofont-pull-left{margin-right:.3em}.icofont.icofont-pull-right{margin-left:.3em}.icofont-spin{-webkit-animation:icofont-spin 2s infinite linear;animation:icofont-spin 2s infinite linear;display:inline-block}.icofont-pulse{-webkit-animation:icofont-spin 1s infinite steps(8);animation:icofont-spin 1s infinite steps(8);display:inline-block}@-webkit-keyframes icofont-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes icofont-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.icofont-rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.icofont-rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.icofont-rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.icofont-flip-horizontal{-webkit-transform:scale(-1,1);transform:scale(-1,1)}.icofont-flip-vertical{-webkit-transform:scale(1,-1);transform:scale(1,-1)}.icofont-flip-horizontal.icofont-flip-vertical{-webkit-transform:scale(-1,-1);transform:scale(-1,-1)}:root .icofont-flip-horizontal,:root .icofont-flip-vertical,:root .icofont-rotate-180,:root .icofont-rotate-270,:root .icofont-rotate-90{-webkit-filter:none;filter:none;display:inline-block}.icofont-inverse{color:#fff}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto} diff --git a/content/components/icons/1_bis/html.inc b/content/components/icons/1_bis/html.inc new file mode 100644 index 000000000..0e4a2a73e --- /dev/null +++ b/content/components/icons/1_bis/html.inc @@ -0,0 +1,6 @@ +Examples here +
+Find all available icons here ! + + + \ No newline at end of file diff --git a/content/components/icons/1_bis/index.md b/content/components/icons/1_bis/index.md new file mode 100644 index 000000000..6408e4c3f --- /dev/null +++ b/content/components/icons/1_bis/index.md @@ -0,0 +1,23 @@ +--- +title: "Import a font icon library - IcoFont" +avoidCSSHighlight: true +--- + +_[IcoFont.com](https://www.icofont.com/) - 2100+ free icons to spice up your creative designs_ + + +**Install guide:** + +- Copy the CSS into your portal theme (in `backoffice -> look & feel -> theme -> stylesheet`, en Français : `Backoffice -> Apparence -> Thème -> Feuille de style`) +- Make live (save and apply your theme) +- Finally, simply use icons into your pages + +**Usage:** + +In your HTML, on `i` tag, set the class to `icofont-` followed by the name of the icon. +For example, for the `alarm` icon, try: +- `` +- `` + + +> Note: Attribution is required by [IcoFont licenses](https://www.icofont.com/license). The provided CSS contains embedded comments with necessary attribution. While using this code normally, you shouldn't need to do anything additional to provide attribution. \ No newline at end of file diff --git a/content/components/icons/2/css.inc b/content/components/icons/2/css.inc new file mode 100644 index 000000000..b2acd4594 --- /dev/null +++ b/content/components/icons/2/css.inc @@ -0,0 +1,7 @@ +/* +* Boostrap Icons +* https://icons.getbootstrap.com/#icons +* V1.5.0 +* https://github.com/twbs/icons/releases/tag/v1.5.0 +* @license - MIT +*/@font-face{font-family:bootstrap-icons;src:url(https://static.huwise.com/fonts/bootstrap-icons/latest/bootstrap-icons.woff2) format("woff2")}[class*=" bi-"]::before,[class^=bi-]::before{display:inline-block;font-family:bootstrap-icons!important;font-style:normal;font-weight:400!important;font-variant:normal;text-transform:none;line-height:1;vertical-align:-.125em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.bi-alarm-fill::before{content:"\f101"}.bi-alarm::before{content:"\f102"}.bi-align-bottom::before{content:"\f103"}.bi-align-center::before{content:"\f104"}.bi-align-end::before{content:"\f105"}.bi-align-middle::before{content:"\f106"}.bi-align-start::before{content:"\f107"}.bi-align-top::before{content:"\f108"}.bi-alt::before{content:"\f109"}.bi-app-indicator::before{content:"\f10a"}.bi-app::before{content:"\f10b"}.bi-archive-fill::before{content:"\f10c"}.bi-archive::before{content:"\f10d"}.bi-arrow-90deg-down::before{content:"\f10e"}.bi-arrow-90deg-left::before{content:"\f10f"}.bi-arrow-90deg-right::before{content:"\f110"}.bi-arrow-90deg-up::before{content:"\f111"}.bi-arrow-bar-down::before{content:"\f112"}.bi-arrow-bar-left::before{content:"\f113"}.bi-arrow-bar-right::before{content:"\f114"}.bi-arrow-bar-up::before{content:"\f115"}.bi-arrow-clockwise::before{content:"\f116"}.bi-arrow-counterclockwise::before{content:"\f117"}.bi-arrow-down-circle-fill::before{content:"\f118"}.bi-arrow-down-circle::before{content:"\f119"}.bi-arrow-down-left-circle-fill::before{content:"\f11a"}.bi-arrow-down-left-circle::before{content:"\f11b"}.bi-arrow-down-left-square-fill::before{content:"\f11c"}.bi-arrow-down-left-square::before{content:"\f11d"}.bi-arrow-down-left::before{content:"\f11e"}.bi-arrow-down-right-circle-fill::before{content:"\f11f"}.bi-arrow-down-right-circle::before{content:"\f120"}.bi-arrow-down-right-square-fill::before{content:"\f121"}.bi-arrow-down-right-square::before{content:"\f122"}.bi-arrow-down-right::before{content:"\f123"}.bi-arrow-down-short::before{content:"\f124"}.bi-arrow-down-square-fill::before{content:"\f125"}.bi-arrow-down-square::before{content:"\f126"}.bi-arrow-down-up::before{content:"\f127"}.bi-arrow-down::before{content:"\f128"}.bi-arrow-left-circle-fill::before{content:"\f129"}.bi-arrow-left-circle::before{content:"\f12a"}.bi-arrow-left-right::before{content:"\f12b"}.bi-arrow-left-short::before{content:"\f12c"}.bi-arrow-left-square-fill::before{content:"\f12d"}.bi-arrow-left-square::before{content:"\f12e"}.bi-arrow-left::before{content:"\f12f"}.bi-arrow-repeat::before{content:"\f130"}.bi-arrow-return-left::before{content:"\f131"}.bi-arrow-return-right::before{content:"\f132"}.bi-arrow-right-circle-fill::before{content:"\f133"}.bi-arrow-right-circle::before{content:"\f134"}.bi-arrow-right-short::before{content:"\f135"}.bi-arrow-right-square-fill::before{content:"\f136"}.bi-arrow-right-square::before{content:"\f137"}.bi-arrow-right::before{content:"\f138"}.bi-arrow-up-circle-fill::before{content:"\f139"}.bi-arrow-up-circle::before{content:"\f13a"}.bi-arrow-up-left-circle-fill::before{content:"\f13b"}.bi-arrow-up-left-circle::before{content:"\f13c"}.bi-arrow-up-left-square-fill::before{content:"\f13d"}.bi-arrow-up-left-square::before{content:"\f13e"}.bi-arrow-up-left::before{content:"\f13f"}.bi-arrow-up-right-circle-fill::before{content:"\f140"}.bi-arrow-up-right-circle::before{content:"\f141"}.bi-arrow-up-right-square-fill::before{content:"\f142"}.bi-arrow-up-right-square::before{content:"\f143"}.bi-arrow-up-right::before{content:"\f144"}.bi-arrow-up-short::before{content:"\f145"}.bi-arrow-up-square-fill::before{content:"\f146"}.bi-arrow-up-square::before{content:"\f147"}.bi-arrow-up::before{content:"\f148"}.bi-arrows-angle-contract::before{content:"\f149"}.bi-arrows-angle-expand::before{content:"\f14a"}.bi-arrows-collapse::before{content:"\f14b"}.bi-arrows-expand::before{content:"\f14c"}.bi-arrows-fullscreen::before{content:"\f14d"}.bi-arrows-move::before{content:"\f14e"}.bi-aspect-ratio-fill::before{content:"\f14f"}.bi-aspect-ratio::before{content:"\f150"}.bi-asterisk::before{content:"\f151"}.bi-at::before{content:"\f152"}.bi-award-fill::before{content:"\f153"}.bi-award::before{content:"\f154"}.bi-back::before{content:"\f155"}.bi-backspace-fill::before{content:"\f156"}.bi-backspace-reverse-fill::before{content:"\f157"}.bi-backspace-reverse::before{content:"\f158"}.bi-backspace::before{content:"\f159"}.bi-badge-3d-fill::before{content:"\f15a"}.bi-badge-3d::before{content:"\f15b"}.bi-badge-4k-fill::before{content:"\f15c"}.bi-badge-4k::before{content:"\f15d"}.bi-badge-8k-fill::before{content:"\f15e"}.bi-badge-8k::before{content:"\f15f"}.bi-badge-ad-fill::before{content:"\f160"}.bi-badge-ad::before{content:"\f161"}.bi-badge-ar-fill::before{content:"\f162"}.bi-badge-ar::before{content:"\f163"}.bi-badge-cc-fill::before{content:"\f164"}.bi-badge-cc::before{content:"\f165"}.bi-badge-hd-fill::before{content:"\f166"}.bi-badge-hd::before{content:"\f167"}.bi-badge-tm-fill::before{content:"\f168"}.bi-badge-tm::before{content:"\f169"}.bi-badge-vo-fill::before{content:"\f16a"}.bi-badge-vo::before{content:"\f16b"}.bi-badge-vr-fill::before{content:"\f16c"}.bi-badge-vr::before{content:"\f16d"}.bi-badge-wc-fill::before{content:"\f16e"}.bi-badge-wc::before{content:"\f16f"}.bi-bag-check-fill::before{content:"\f170"}.bi-bag-check::before{content:"\f171"}.bi-bag-dash-fill::before{content:"\f172"}.bi-bag-dash::before{content:"\f173"}.bi-bag-fill::before{content:"\f174"}.bi-bag-plus-fill::before{content:"\f175"}.bi-bag-plus::before{content:"\f176"}.bi-bag-x-fill::before{content:"\f177"}.bi-bag-x::before{content:"\f178"}.bi-bag::before{content:"\f179"}.bi-bar-chart-fill::before{content:"\f17a"}.bi-bar-chart-line-fill::before{content:"\f17b"}.bi-bar-chart-line::before{content:"\f17c"}.bi-bar-chart-steps::before{content:"\f17d"}.bi-bar-chart::before{content:"\f17e"}.bi-basket-fill::before{content:"\f17f"}.bi-basket::before{content:"\f180"}.bi-basket2-fill::before{content:"\f181"}.bi-basket2::before{content:"\f182"}.bi-basket3-fill::before{content:"\f183"}.bi-basket3::before{content:"\f184"}.bi-battery-charging::before{content:"\f185"}.bi-battery-full::before{content:"\f186"}.bi-battery-half::before{content:"\f187"}.bi-battery::before{content:"\f188"}.bi-bell-fill::before{content:"\f189"}.bi-bell::before{content:"\f18a"}.bi-bezier::before{content:"\f18b"}.bi-bezier2::before{content:"\f18c"}.bi-bicycle::before{content:"\f18d"}.bi-binoculars-fill::before{content:"\f18e"}.bi-binoculars::before{content:"\f18f"}.bi-blockquote-left::before{content:"\f190"}.bi-blockquote-right::before{content:"\f191"}.bi-book-fill::before{content:"\f192"}.bi-book-half::before{content:"\f193"}.bi-book::before{content:"\f194"}.bi-bookmark-check-fill::before{content:"\f195"}.bi-bookmark-check::before{content:"\f196"}.bi-bookmark-dash-fill::before{content:"\f197"}.bi-bookmark-dash::before{content:"\f198"}.bi-bookmark-fill::before{content:"\f199"}.bi-bookmark-heart-fill::before{content:"\f19a"}.bi-bookmark-heart::before{content:"\f19b"}.bi-bookmark-plus-fill::before{content:"\f19c"}.bi-bookmark-plus::before{content:"\f19d"}.bi-bookmark-star-fill::before{content:"\f19e"}.bi-bookmark-star::before{content:"\f19f"}.bi-bookmark-x-fill::before{content:"\f1a0"}.bi-bookmark-x::before{content:"\f1a1"}.bi-bookmark::before{content:"\f1a2"}.bi-bookmarks-fill::before{content:"\f1a3"}.bi-bookmarks::before{content:"\f1a4"}.bi-bookshelf::before{content:"\f1a5"}.bi-bootstrap-fill::before{content:"\f1a6"}.bi-bootstrap-reboot::before{content:"\f1a7"}.bi-bootstrap::before{content:"\f1a8"}.bi-border-all::before{content:"\f1a9"}.bi-border-bottom::before{content:"\f1aa"}.bi-border-center::before{content:"\f1ab"}.bi-border-inner::before{content:"\f1ac"}.bi-border-left::before{content:"\f1ad"}.bi-border-middle::before{content:"\f1ae"}.bi-border-outer::before{content:"\f1af"}.bi-border-right::before{content:"\f1b0"}.bi-border-style::before{content:"\f1b1"}.bi-border-top::before{content:"\f1b2"}.bi-border-width::before{content:"\f1b3"}.bi-border::before{content:"\f1b4"}.bi-bounding-box-circles::before{content:"\f1b5"}.bi-bounding-box::before{content:"\f1b6"}.bi-box-arrow-down-left::before{content:"\f1b7"}.bi-box-arrow-down-right::before{content:"\f1b8"}.bi-box-arrow-down::before{content:"\f1b9"}.bi-box-arrow-in-down-left::before{content:"\f1ba"}.bi-box-arrow-in-down-right::before{content:"\f1bb"}.bi-box-arrow-in-down::before{content:"\f1bc"}.bi-box-arrow-in-left::before{content:"\f1bd"}.bi-box-arrow-in-right::before{content:"\f1be"}.bi-box-arrow-in-up-left::before{content:"\f1bf"}.bi-box-arrow-in-up-right::before{content:"\f1c0"}.bi-box-arrow-in-up::before{content:"\f1c1"}.bi-box-arrow-left::before{content:"\f1c2"}.bi-box-arrow-right::before{content:"\f1c3"}.bi-box-arrow-up-left::before{content:"\f1c4"}.bi-box-arrow-up-right::before{content:"\f1c5"}.bi-box-arrow-up::before{content:"\f1c6"}.bi-box-seam::before{content:"\f1c7"}.bi-box::before{content:"\f1c8"}.bi-braces::before{content:"\f1c9"}.bi-bricks::before{content:"\f1ca"}.bi-briefcase-fill::before{content:"\f1cb"}.bi-briefcase::before{content:"\f1cc"}.bi-brightness-alt-high-fill::before{content:"\f1cd"}.bi-brightness-alt-high::before{content:"\f1ce"}.bi-brightness-alt-low-fill::before{content:"\f1cf"}.bi-brightness-alt-low::before{content:"\f1d0"}.bi-brightness-high-fill::before{content:"\f1d1"}.bi-brightness-high::before{content:"\f1d2"}.bi-brightness-low-fill::before{content:"\f1d3"}.bi-brightness-low::before{content:"\f1d4"}.bi-broadcast-pin::before{content:"\f1d5"}.bi-broadcast::before{content:"\f1d6"}.bi-brush-fill::before{content:"\f1d7"}.bi-brush::before{content:"\f1d8"}.bi-bucket-fill::before{content:"\f1d9"}.bi-bucket::before{content:"\f1da"}.bi-bug-fill::before{content:"\f1db"}.bi-bug::before{content:"\f1dc"}.bi-building::before{content:"\f1dd"}.bi-bullseye::before{content:"\f1de"}.bi-calculator-fill::before{content:"\f1df"}.bi-calculator::before{content:"\f1e0"}.bi-calendar-check-fill::before{content:"\f1e1"}.bi-calendar-check::before{content:"\f1e2"}.bi-calendar-date-fill::before{content:"\f1e3"}.bi-calendar-date::before{content:"\f1e4"}.bi-calendar-day-fill::before{content:"\f1e5"}.bi-calendar-day::before{content:"\f1e6"}.bi-calendar-event-fill::before{content:"\f1e7"}.bi-calendar-event::before{content:"\f1e8"}.bi-calendar-fill::before{content:"\f1e9"}.bi-calendar-minus-fill::before{content:"\f1ea"}.bi-calendar-minus::before{content:"\f1eb"}.bi-calendar-month-fill::before{content:"\f1ec"}.bi-calendar-month::before{content:"\f1ed"}.bi-calendar-plus-fill::before{content:"\f1ee"}.bi-calendar-plus::before{content:"\f1ef"}.bi-calendar-range-fill::before{content:"\f1f0"}.bi-calendar-range::before{content:"\f1f1"}.bi-calendar-week-fill::before{content:"\f1f2"}.bi-calendar-week::before{content:"\f1f3"}.bi-calendar-x-fill::before{content:"\f1f4"}.bi-calendar-x::before{content:"\f1f5"}.bi-calendar::before{content:"\f1f6"}.bi-calendar2-check-fill::before{content:"\f1f7"}.bi-calendar2-check::before{content:"\f1f8"}.bi-calendar2-date-fill::before{content:"\f1f9"}.bi-calendar2-date::before{content:"\f1fa"}.bi-calendar2-day-fill::before{content:"\f1fb"}.bi-calendar2-day::before{content:"\f1fc"}.bi-calendar2-event-fill::before{content:"\f1fd"}.bi-calendar2-event::before{content:"\f1fe"}.bi-calendar2-fill::before{content:"\f1ff"}.bi-calendar2-minus-fill::before{content:"\f200"}.bi-calendar2-minus::before{content:"\f201"}.bi-calendar2-month-fill::before{content:"\f202"}.bi-calendar2-month::before{content:"\f203"}.bi-calendar2-plus-fill::before{content:"\f204"}.bi-calendar2-plus::before{content:"\f205"}.bi-calendar2-range-fill::before{content:"\f206"}.bi-calendar2-range::before{content:"\f207"}.bi-calendar2-week-fill::before{content:"\f208"}.bi-calendar2-week::before{content:"\f209"}.bi-calendar2-x-fill::before{content:"\f20a"}.bi-calendar2-x::before{content:"\f20b"}.bi-calendar2::before{content:"\f20c"}.bi-calendar3-event-fill::before{content:"\f20d"}.bi-calendar3-event::before{content:"\f20e"}.bi-calendar3-fill::before{content:"\f20f"}.bi-calendar3-range-fill::before{content:"\f210"}.bi-calendar3-range::before{content:"\f211"}.bi-calendar3-week-fill::before{content:"\f212"}.bi-calendar3-week::before{content:"\f213"}.bi-calendar3::before{content:"\f214"}.bi-calendar4-event::before{content:"\f215"}.bi-calendar4-range::before{content:"\f216"}.bi-calendar4-week::before{content:"\f217"}.bi-calendar4::before{content:"\f218"}.bi-camera-fill::before{content:"\f219"}.bi-camera-reels-fill::before{content:"\f21a"}.bi-camera-reels::before{content:"\f21b"}.bi-camera-video-fill::before{content:"\f21c"}.bi-camera-video-off-fill::before{content:"\f21d"}.bi-camera-video-off::before{content:"\f21e"}.bi-camera-video::before{content:"\f21f"}.bi-camera::before{content:"\f220"}.bi-camera2::before{content:"\f221"}.bi-capslock-fill::before{content:"\f222"}.bi-capslock::before{content:"\f223"}.bi-card-checklist::before{content:"\f224"}.bi-card-heading::before{content:"\f225"}.bi-card-image::before{content:"\f226"}.bi-card-list::before{content:"\f227"}.bi-card-text::before{content:"\f228"}.bi-caret-down-fill::before{content:"\f229"}.bi-caret-down-square-fill::before{content:"\f22a"}.bi-caret-down-square::before{content:"\f22b"}.bi-caret-down::before{content:"\f22c"}.bi-caret-left-fill::before{content:"\f22d"}.bi-caret-left-square-fill::before{content:"\f22e"}.bi-caret-left-square::before{content:"\f22f"}.bi-caret-left::before{content:"\f230"}.bi-caret-right-fill::before{content:"\f231"}.bi-caret-right-square-fill::before{content:"\f232"}.bi-caret-right-square::before{content:"\f233"}.bi-caret-right::before{content:"\f234"}.bi-caret-up-fill::before{content:"\f235"}.bi-caret-up-square-fill::before{content:"\f236"}.bi-caret-up-square::before{content:"\f237"}.bi-caret-up::before{content:"\f238"}.bi-cart-check-fill::before{content:"\f239"}.bi-cart-check::before{content:"\f23a"}.bi-cart-dash-fill::before{content:"\f23b"}.bi-cart-dash::before{content:"\f23c"}.bi-cart-fill::before{content:"\f23d"}.bi-cart-plus-fill::before{content:"\f23e"}.bi-cart-plus::before{content:"\f23f"}.bi-cart-x-fill::before{content:"\f240"}.bi-cart-x::before{content:"\f241"}.bi-cart::before{content:"\f242"}.bi-cart2::before{content:"\f243"}.bi-cart3::before{content:"\f244"}.bi-cart4::before{content:"\f245"}.bi-cash-stack::before{content:"\f246"}.bi-cash::before{content:"\f247"}.bi-cast::before{content:"\f248"}.bi-chat-dots-fill::before{content:"\f249"}.bi-chat-dots::before{content:"\f24a"}.bi-chat-fill::before{content:"\f24b"}.bi-chat-left-dots-fill::before{content:"\f24c"}.bi-chat-left-dots::before{content:"\f24d"}.bi-chat-left-fill::before{content:"\f24e"}.bi-chat-left-quote-fill::before{content:"\f24f"}.bi-chat-left-quote::before{content:"\f250"}.bi-chat-left-text-fill::before{content:"\f251"}.bi-chat-left-text::before{content:"\f252"}.bi-chat-left::before{content:"\f253"}.bi-chat-quote-fill::before{content:"\f254"}.bi-chat-quote::before{content:"\f255"}.bi-chat-right-dots-fill::before{content:"\f256"}.bi-chat-right-dots::before{content:"\f257"}.bi-chat-right-fill::before{content:"\f258"}.bi-chat-right-quote-fill::before{content:"\f259"}.bi-chat-right-quote::before{content:"\f25a"}.bi-chat-right-text-fill::before{content:"\f25b"}.bi-chat-right-text::before{content:"\f25c"}.bi-chat-right::before{content:"\f25d"}.bi-chat-square-dots-fill::before{content:"\f25e"}.bi-chat-square-dots::before{content:"\f25f"}.bi-chat-square-fill::before{content:"\f260"}.bi-chat-square-quote-fill::before{content:"\f261"}.bi-chat-square-quote::before{content:"\f262"}.bi-chat-square-text-fill::before{content:"\f263"}.bi-chat-square-text::before{content:"\f264"}.bi-chat-square::before{content:"\f265"}.bi-chat-text-fill::before{content:"\f266"}.bi-chat-text::before{content:"\f267"}.bi-chat::before{content:"\f268"}.bi-check-all::before{content:"\f269"}.bi-check-circle-fill::before{content:"\f26a"}.bi-check-circle::before{content:"\f26b"}.bi-check-square-fill::before{content:"\f26c"}.bi-check-square::before{content:"\f26d"}.bi-check::before{content:"\f26e"}.bi-check2-all::before{content:"\f26f"}.bi-check2-circle::before{content:"\f270"}.bi-check2-square::before{content:"\f271"}.bi-check2::before{content:"\f272"}.bi-chevron-bar-contract::before{content:"\f273"}.bi-chevron-bar-down::before{content:"\f274"}.bi-chevron-bar-expand::before{content:"\f275"}.bi-chevron-bar-left::before{content:"\f276"}.bi-chevron-bar-right::before{content:"\f277"}.bi-chevron-bar-up::before{content:"\f278"}.bi-chevron-compact-down::before{content:"\f279"}.bi-chevron-compact-left::before{content:"\f27a"}.bi-chevron-compact-right::before{content:"\f27b"}.bi-chevron-compact-up::before{content:"\f27c"}.bi-chevron-contract::before{content:"\f27d"}.bi-chevron-double-down::before{content:"\f27e"}.bi-chevron-double-left::before{content:"\f27f"}.bi-chevron-double-right::before{content:"\f280"}.bi-chevron-double-up::before{content:"\f281"}.bi-chevron-down::before{content:"\f282"}.bi-chevron-expand::before{content:"\f283"}.bi-chevron-left::before{content:"\f284"}.bi-chevron-right::before{content:"\f285"}.bi-chevron-up::before{content:"\f286"}.bi-circle-fill::before{content:"\f287"}.bi-circle-half::before{content:"\f288"}.bi-circle-square::before{content:"\f289"}.bi-circle::before{content:"\f28a"}.bi-clipboard-check::before{content:"\f28b"}.bi-clipboard-data::before{content:"\f28c"}.bi-clipboard-minus::before{content:"\f28d"}.bi-clipboard-plus::before{content:"\f28e"}.bi-clipboard-x::before{content:"\f28f"}.bi-clipboard::before{content:"\f290"}.bi-clock-fill::before{content:"\f291"}.bi-clock-history::before{content:"\f292"}.bi-clock::before{content:"\f293"}.bi-cloud-arrow-down-fill::before{content:"\f294"}.bi-cloud-arrow-down::before{content:"\f295"}.bi-cloud-arrow-up-fill::before{content:"\f296"}.bi-cloud-arrow-up::before{content:"\f297"}.bi-cloud-check-fill::before{content:"\f298"}.bi-cloud-check::before{content:"\f299"}.bi-cloud-download-fill::before{content:"\f29a"}.bi-cloud-download::before{content:"\f29b"}.bi-cloud-drizzle-fill::before{content:"\f29c"}.bi-cloud-drizzle::before{content:"\f29d"}.bi-cloud-fill::before{content:"\f29e"}.bi-cloud-fog-fill::before{content:"\f29f"}.bi-cloud-fog::before{content:"\f2a0"}.bi-cloud-fog2-fill::before{content:"\f2a1"}.bi-cloud-fog2::before{content:"\f2a2"}.bi-cloud-hail-fill::before{content:"\f2a3"}.bi-cloud-hail::before{content:"\f2a4"}.bi-cloud-haze-1::before{content:"\f2a5"}.bi-cloud-haze-fill::before{content:"\f2a6"}.bi-cloud-haze::before{content:"\f2a7"}.bi-cloud-haze2-fill::before{content:"\f2a8"}.bi-cloud-lightning-fill::before{content:"\f2a9"}.bi-cloud-lightning-rain-fill::before{content:"\f2aa"}.bi-cloud-lightning-rain::before{content:"\f2ab"}.bi-cloud-lightning::before{content:"\f2ac"}.bi-cloud-minus-fill::before{content:"\f2ad"}.bi-cloud-minus::before{content:"\f2ae"}.bi-cloud-moon-fill::before{content:"\f2af"}.bi-cloud-moon::before{content:"\f2b0"}.bi-cloud-plus-fill::before{content:"\f2b1"}.bi-cloud-plus::before{content:"\f2b2"}.bi-cloud-rain-fill::before{content:"\f2b3"}.bi-cloud-rain-heavy-fill::before{content:"\f2b4"}.bi-cloud-rain-heavy::before{content:"\f2b5"}.bi-cloud-rain::before{content:"\f2b6"}.bi-cloud-slash-fill::before{content:"\f2b7"}.bi-cloud-slash::before{content:"\f2b8"}.bi-cloud-sleet-fill::before{content:"\f2b9"}.bi-cloud-sleet::before{content:"\f2ba"}.bi-cloud-snow-fill::before{content:"\f2bb"}.bi-cloud-snow::before{content:"\f2bc"}.bi-cloud-sun-fill::before{content:"\f2bd"}.bi-cloud-sun::before{content:"\f2be"}.bi-cloud-upload-fill::before{content:"\f2bf"}.bi-cloud-upload::before{content:"\f2c0"}.bi-cloud::before{content:"\f2c1"}.bi-clouds-fill::before{content:"\f2c2"}.bi-clouds::before{content:"\f2c3"}.bi-cloudy-fill::before{content:"\f2c4"}.bi-cloudy::before{content:"\f2c5"}.bi-code-slash::before{content:"\f2c6"}.bi-code-square::before{content:"\f2c7"}.bi-code::before{content:"\f2c8"}.bi-collection-fill::before{content:"\f2c9"}.bi-collection-play-fill::before{content:"\f2ca"}.bi-collection-play::before{content:"\f2cb"}.bi-collection::before{content:"\f2cc"}.bi-columns-gap::before{content:"\f2cd"}.bi-columns::before{content:"\f2ce"}.bi-command::before{content:"\f2cf"}.bi-compass-fill::before{content:"\f2d0"}.bi-compass::before{content:"\f2d1"}.bi-cone-striped::before{content:"\f2d2"}.bi-cone::before{content:"\f2d3"}.bi-controller::before{content:"\f2d4"}.bi-cpu-fill::before{content:"\f2d5"}.bi-cpu::before{content:"\f2d6"}.bi-credit-card-2-back-fill::before{content:"\f2d7"}.bi-credit-card-2-back::before{content:"\f2d8"}.bi-credit-card-2-front-fill::before{content:"\f2d9"}.bi-credit-card-2-front::before{content:"\f2da"}.bi-credit-card-fill::before{content:"\f2db"}.bi-credit-card::before{content:"\f2dc"}.bi-crop::before{content:"\f2dd"}.bi-cup-fill::before{content:"\f2de"}.bi-cup-straw::before{content:"\f2df"}.bi-cup::before{content:"\f2e0"}.bi-cursor-fill::before{content:"\f2e1"}.bi-cursor-text::before{content:"\f2e2"}.bi-cursor::before{content:"\f2e3"}.bi-dash-circle-dotted::before{content:"\f2e4"}.bi-dash-circle-fill::before{content:"\f2e5"}.bi-dash-circle::before{content:"\f2e6"}.bi-dash-square-dotted::before{content:"\f2e7"}.bi-dash-square-fill::before{content:"\f2e8"}.bi-dash-square::before{content:"\f2e9"}.bi-dash::before{content:"\f2ea"}.bi-diagram-2-fill::before{content:"\f2eb"}.bi-diagram-2::before{content:"\f2ec"}.bi-diagram-3-fill::before{content:"\f2ed"}.bi-diagram-3::before{content:"\f2ee"}.bi-diamond-fill::before{content:"\f2ef"}.bi-diamond-half::before{content:"\f2f0"}.bi-diamond::before{content:"\f2f1"}.bi-dice-1-fill::before{content:"\f2f2"}.bi-dice-1::before{content:"\f2f3"}.bi-dice-2-fill::before{content:"\f2f4"}.bi-dice-2::before{content:"\f2f5"}.bi-dice-3-fill::before{content:"\f2f6"}.bi-dice-3::before{content:"\f2f7"}.bi-dice-4-fill::before{content:"\f2f8"}.bi-dice-4::before{content:"\f2f9"}.bi-dice-5-fill::before{content:"\f2fa"}.bi-dice-5::before{content:"\f2fb"}.bi-dice-6-fill::before{content:"\f2fc"}.bi-dice-6::before{content:"\f2fd"}.bi-disc-fill::before{content:"\f2fe"}.bi-disc::before{content:"\f2ff"}.bi-discord::before{content:"\f300"}.bi-display-fill::before{content:"\f301"}.bi-display::before{content:"\f302"}.bi-distribute-horizontal::before{content:"\f303"}.bi-distribute-vertical::before{content:"\f304"}.bi-door-closed-fill::before{content:"\f305"}.bi-door-closed::before{content:"\f306"}.bi-door-open-fill::before{content:"\f307"}.bi-door-open::before{content:"\f308"}.bi-dot::before{content:"\f309"}.bi-download::before{content:"\f30a"}.bi-droplet-fill::before{content:"\f30b"}.bi-droplet-half::before{content:"\f30c"}.bi-droplet::before{content:"\f30d"}.bi-earbuds::before{content:"\f30e"}.bi-easel-fill::before{content:"\f30f"}.bi-easel::before{content:"\f310"}.bi-egg-fill::before{content:"\f311"}.bi-egg-fried::before{content:"\f312"}.bi-egg::before{content:"\f313"}.bi-eject-fill::before{content:"\f314"}.bi-eject::before{content:"\f315"}.bi-emoji-angry-fill::before{content:"\f316"}.bi-emoji-angry::before{content:"\f317"}.bi-emoji-dizzy-fill::before{content:"\f318"}.bi-emoji-dizzy::before{content:"\f319"}.bi-emoji-expressionless-fill::before{content:"\f31a"}.bi-emoji-expressionless::before{content:"\f31b"}.bi-emoji-frown-fill::before{content:"\f31c"}.bi-emoji-frown::before{content:"\f31d"}.bi-emoji-heart-eyes-fill::before{content:"\f31e"}.bi-emoji-heart-eyes::before{content:"\f31f"}.bi-emoji-laughing-fill::before{content:"\f320"}.bi-emoji-laughing::before{content:"\f321"}.bi-emoji-neutral-fill::before{content:"\f322"}.bi-emoji-neutral::before{content:"\f323"}.bi-emoji-smile-fill::before{content:"\f324"}.bi-emoji-smile-upside-down-fill::before{content:"\f325"}.bi-emoji-smile-upside-down::before{content:"\f326"}.bi-emoji-smile::before{content:"\f327"}.bi-emoji-sunglasses-fill::before{content:"\f328"}.bi-emoji-sunglasses::before{content:"\f329"}.bi-emoji-wink-fill::before{content:"\f32a"}.bi-emoji-wink::before{content:"\f32b"}.bi-envelope-fill::before{content:"\f32c"}.bi-envelope-open-fill::before{content:"\f32d"}.bi-envelope-open::before{content:"\f32e"}.bi-envelope::before{content:"\f32f"}.bi-eraser-fill::before{content:"\f330"}.bi-eraser::before{content:"\f331"}.bi-exclamation-circle-fill::before{content:"\f332"}.bi-exclamation-circle::before{content:"\f333"}.bi-exclamation-diamond-fill::before{content:"\f334"}.bi-exclamation-diamond::before{content:"\f335"}.bi-exclamation-octagon-fill::before{content:"\f336"}.bi-exclamation-octagon::before{content:"\f337"}.bi-exclamation-square-fill::before{content:"\f338"}.bi-exclamation-square::before{content:"\f339"}.bi-exclamation-triangle-fill::before{content:"\f33a"}.bi-exclamation-triangle::before{content:"\f33b"}.bi-exclamation::before{content:"\f33c"}.bi-exclude::before{content:"\f33d"}.bi-eye-fill::before{content:"\f33e"}.bi-eye-slash-fill::before{content:"\f33f"}.bi-eye-slash::before{content:"\f340"}.bi-eye::before{content:"\f341"}.bi-eyedropper::before{content:"\f342"}.bi-eyeglasses::before{content:"\f343"}.bi-facebook::before{content:"\f344"}.bi-file-arrow-down-fill::before{content:"\f345"}.bi-file-arrow-down::before{content:"\f346"}.bi-file-arrow-up-fill::before{content:"\f347"}.bi-file-arrow-up::before{content:"\f348"}.bi-file-bar-graph-fill::before{content:"\f349"}.bi-file-bar-graph::before{content:"\f34a"}.bi-file-binary-fill::before{content:"\f34b"}.bi-file-binary::before{content:"\f34c"}.bi-file-break-fill::before{content:"\f34d"}.bi-file-break::before{content:"\f34e"}.bi-file-check-fill::before{content:"\f34f"}.bi-file-check::before{content:"\f350"}.bi-file-code-fill::before{content:"\f351"}.bi-file-code::before{content:"\f352"}.bi-file-diff-fill::before{content:"\f353"}.bi-file-diff::before{content:"\f354"}.bi-file-earmark-arrow-down-fill::before{content:"\f355"}.bi-file-earmark-arrow-down::before{content:"\f356"}.bi-file-earmark-arrow-up-fill::before{content:"\f357"}.bi-file-earmark-arrow-up::before{content:"\f358"}.bi-file-earmark-bar-graph-fill::before{content:"\f359"}.bi-file-earmark-bar-graph::before{content:"\f35a"}.bi-file-earmark-binary-fill::before{content:"\f35b"}.bi-file-earmark-binary::before{content:"\f35c"}.bi-file-earmark-break-fill::before{content:"\f35d"}.bi-file-earmark-break::before{content:"\f35e"}.bi-file-earmark-check-fill::before{content:"\f35f"}.bi-file-earmark-check::before{content:"\f360"}.bi-file-earmark-code-fill::before{content:"\f361"}.bi-file-earmark-code::before{content:"\f362"}.bi-file-earmark-diff-fill::before{content:"\f363"}.bi-file-earmark-diff::before{content:"\f364"}.bi-file-earmark-easel-fill::before{content:"\f365"}.bi-file-earmark-easel::before{content:"\f366"}.bi-file-earmark-excel-fill::before{content:"\f367"}.bi-file-earmark-excel::before{content:"\f368"}.bi-file-earmark-fill::before{content:"\f369"}.bi-file-earmark-font-fill::before{content:"\f36a"}.bi-file-earmark-font::before{content:"\f36b"}.bi-file-earmark-image-fill::before{content:"\f36c"}.bi-file-earmark-image::before{content:"\f36d"}.bi-file-earmark-lock-fill::before{content:"\f36e"}.bi-file-earmark-lock::before{content:"\f36f"}.bi-file-earmark-lock2-fill::before{content:"\f370"}.bi-file-earmark-lock2::before{content:"\f371"}.bi-file-earmark-medical-fill::before{content:"\f372"}.bi-file-earmark-medical::before{content:"\f373"}.bi-file-earmark-minus-fill::before{content:"\f374"}.bi-file-earmark-minus::before{content:"\f375"}.bi-file-earmark-music-fill::before{content:"\f376"}.bi-file-earmark-music::before{content:"\f377"}.bi-file-earmark-person-fill::before{content:"\f378"}.bi-file-earmark-person::before{content:"\f379"}.bi-file-earmark-play-fill::before{content:"\f37a"}.bi-file-earmark-play::before{content:"\f37b"}.bi-file-earmark-plus-fill::before{content:"\f37c"}.bi-file-earmark-plus::before{content:"\f37d"}.bi-file-earmark-post-fill::before{content:"\f37e"}.bi-file-earmark-post::before{content:"\f37f"}.bi-file-earmark-ppt-fill::before{content:"\f380"}.bi-file-earmark-ppt::before{content:"\f381"}.bi-file-earmark-richtext-fill::before{content:"\f382"}.bi-file-earmark-richtext::before{content:"\f383"}.bi-file-earmark-ruled-fill::before{content:"\f384"}.bi-file-earmark-ruled::before{content:"\f385"}.bi-file-earmark-slides-fill::before{content:"\f386"}.bi-file-earmark-slides::before{content:"\f387"}.bi-file-earmark-spreadsheet-fill::before{content:"\f388"}.bi-file-earmark-spreadsheet::before{content:"\f389"}.bi-file-earmark-text-fill::before{content:"\f38a"}.bi-file-earmark-text::before{content:"\f38b"}.bi-file-earmark-word-fill::before{content:"\f38c"}.bi-file-earmark-word::before{content:"\f38d"}.bi-file-earmark-x-fill::before{content:"\f38e"}.bi-file-earmark-x::before{content:"\f38f"}.bi-file-earmark-zip-fill::before{content:"\f390"}.bi-file-earmark-zip::before{content:"\f391"}.bi-file-earmark::before{content:"\f392"}.bi-file-easel-fill::before{content:"\f393"}.bi-file-easel::before{content:"\f394"}.bi-file-excel-fill::before{content:"\f395"}.bi-file-excel::before{content:"\f396"}.bi-file-fill::before{content:"\f397"}.bi-file-font-fill::before{content:"\f398"}.bi-file-font::before{content:"\f399"}.bi-file-image-fill::before{content:"\f39a"}.bi-file-image::before{content:"\f39b"}.bi-file-lock-fill::before{content:"\f39c"}.bi-file-lock::before{content:"\f39d"}.bi-file-lock2-fill::before{content:"\f39e"}.bi-file-lock2::before{content:"\f39f"}.bi-file-medical-fill::before{content:"\f3a0"}.bi-file-medical::before{content:"\f3a1"}.bi-file-minus-fill::before{content:"\f3a2"}.bi-file-minus::before{content:"\f3a3"}.bi-file-music-fill::before{content:"\f3a4"}.bi-file-music::before{content:"\f3a5"}.bi-file-person-fill::before{content:"\f3a6"}.bi-file-person::before{content:"\f3a7"}.bi-file-play-fill::before{content:"\f3a8"}.bi-file-play::before{content:"\f3a9"}.bi-file-plus-fill::before{content:"\f3aa"}.bi-file-plus::before{content:"\f3ab"}.bi-file-post-fill::before{content:"\f3ac"}.bi-file-post::before{content:"\f3ad"}.bi-file-ppt-fill::before{content:"\f3ae"}.bi-file-ppt::before{content:"\f3af"}.bi-file-richtext-fill::before{content:"\f3b0"}.bi-file-richtext::before{content:"\f3b1"}.bi-file-ruled-fill::before{content:"\f3b2"}.bi-file-ruled::before{content:"\f3b3"}.bi-file-slides-fill::before{content:"\f3b4"}.bi-file-slides::before{content:"\f3b5"}.bi-file-spreadsheet-fill::before{content:"\f3b6"}.bi-file-spreadsheet::before{content:"\f3b7"}.bi-file-text-fill::before{content:"\f3b8"}.bi-file-text::before{content:"\f3b9"}.bi-file-word-fill::before{content:"\f3ba"}.bi-file-word::before{content:"\f3bb"}.bi-file-x-fill::before{content:"\f3bc"}.bi-file-x::before{content:"\f3bd"}.bi-file-zip-fill::before{content:"\f3be"}.bi-file-zip::before{content:"\f3bf"}.bi-file::before{content:"\f3c0"}.bi-files-alt::before{content:"\f3c1"}.bi-files::before{content:"\f3c2"}.bi-film::before{content:"\f3c3"}.bi-filter-circle-fill::before{content:"\f3c4"}.bi-filter-circle::before{content:"\f3c5"}.bi-filter-left::before{content:"\f3c6"}.bi-filter-right::before{content:"\f3c7"}.bi-filter-square-fill::before{content:"\f3c8"}.bi-filter-square::before{content:"\f3c9"}.bi-filter::before{content:"\f3ca"}.bi-flag-fill::before{content:"\f3cb"}.bi-flag::before{content:"\f3cc"}.bi-flower1::before{content:"\f3cd"}.bi-flower2::before{content:"\f3ce"}.bi-flower3::before{content:"\f3cf"}.bi-folder-check::before{content:"\f3d0"}.bi-folder-fill::before{content:"\f3d1"}.bi-folder-minus::before{content:"\f3d2"}.bi-folder-plus::before{content:"\f3d3"}.bi-folder-symlink-fill::before{content:"\f3d4"}.bi-folder-symlink::before{content:"\f3d5"}.bi-folder-x::before{content:"\f3d6"}.bi-folder::before{content:"\f3d7"}.bi-folder2-open::before{content:"\f3d8"}.bi-folder2::before{content:"\f3d9"}.bi-fonts::before{content:"\f3da"}.bi-forward-fill::before{content:"\f3db"}.bi-forward::before{content:"\f3dc"}.bi-front::before{content:"\f3dd"}.bi-fullscreen-exit::before{content:"\f3de"}.bi-fullscreen::before{content:"\f3df"}.bi-funnel-fill::before{content:"\f3e0"}.bi-funnel::before{content:"\f3e1"}.bi-gear-fill::before{content:"\f3e2"}.bi-gear-wide-connected::before{content:"\f3e3"}.bi-gear-wide::before{content:"\f3e4"}.bi-gear::before{content:"\f3e5"}.bi-gem::before{content:"\f3e6"}.bi-geo-alt-fill::before{content:"\f3e7"}.bi-geo-alt::before{content:"\f3e8"}.bi-geo-fill::before{content:"\f3e9"}.bi-geo::before{content:"\f3ea"}.bi-gift-fill::before{content:"\f3eb"}.bi-gift::before{content:"\f3ec"}.bi-github::before{content:"\f3ed"}.bi-globe::before{content:"\f3ee"}.bi-globe2::before{content:"\f3ef"}.bi-google::before{content:"\f3f0"}.bi-graph-down::before{content:"\f3f1"}.bi-graph-up::before{content:"\f3f2"}.bi-grid-1x2-fill::before{content:"\f3f3"}.bi-grid-1x2::before{content:"\f3f4"}.bi-grid-3x2-gap-fill::before{content:"\f3f5"}.bi-grid-3x2-gap::before{content:"\f3f6"}.bi-grid-3x2::before{content:"\f3f7"}.bi-grid-3x3-gap-fill::before{content:"\f3f8"}.bi-grid-3x3-gap::before{content:"\f3f9"}.bi-grid-3x3::before{content:"\f3fa"}.bi-grid-fill::before{content:"\f3fb"}.bi-grid::before{content:"\f3fc"}.bi-grip-horizontal::before{content:"\f3fd"}.bi-grip-vertical::before{content:"\f3fe"}.bi-hammer::before{content:"\f3ff"}.bi-hand-index-fill::before{content:"\f400"}.bi-hand-index-thumb-fill::before{content:"\f401"}.bi-hand-index-thumb::before{content:"\f402"}.bi-hand-index::before{content:"\f403"}.bi-hand-thumbs-down-fill::before{content:"\f404"}.bi-hand-thumbs-down::before{content:"\f405"}.bi-hand-thumbs-up-fill::before{content:"\f406"}.bi-hand-thumbs-up::before{content:"\f407"}.bi-handbag-fill::before{content:"\f408"}.bi-handbag::before{content:"\f409"}.bi-hash::before{content:"\f40a"}.bi-hdd-fill::before{content:"\f40b"}.bi-hdd-network-fill::before{content:"\f40c"}.bi-hdd-network::before{content:"\f40d"}.bi-hdd-rack-fill::before{content:"\f40e"}.bi-hdd-rack::before{content:"\f40f"}.bi-hdd-stack-fill::before{content:"\f410"}.bi-hdd-stack::before{content:"\f411"}.bi-hdd::before{content:"\f412"}.bi-headphones::before{content:"\f413"}.bi-headset::before{content:"\f414"}.bi-heart-fill::before{content:"\f415"}.bi-heart-half::before{content:"\f416"}.bi-heart::before{content:"\f417"}.bi-heptagon-fill::before{content:"\f418"}.bi-heptagon-half::before{content:"\f419"}.bi-heptagon::before{content:"\f41a"}.bi-hexagon-fill::before{content:"\f41b"}.bi-hexagon-half::before{content:"\f41c"}.bi-hexagon::before{content:"\f41d"}.bi-hourglass-bottom::before{content:"\f41e"}.bi-hourglass-split::before{content:"\f41f"}.bi-hourglass-top::before{content:"\f420"}.bi-hourglass::before{content:"\f421"}.bi-house-door-fill::before{content:"\f422"}.bi-house-door::before{content:"\f423"}.bi-house-fill::before{content:"\f424"}.bi-house::before{content:"\f425"}.bi-hr::before{content:"\f426"}.bi-hurricane::before{content:"\f427"}.bi-image-alt::before{content:"\f428"}.bi-image-fill::before{content:"\f429"}.bi-image::before{content:"\f42a"}.bi-images::before{content:"\f42b"}.bi-inbox-fill::before{content:"\f42c"}.bi-inbox::before{content:"\f42d"}.bi-inboxes-fill::before{content:"\f42e"}.bi-inboxes::before{content:"\f42f"}.bi-info-circle-fill::before{content:"\f430"}.bi-info-circle::before{content:"\f431"}.bi-info-square-fill::before{content:"\f432"}.bi-info-square::before{content:"\f433"}.bi-info::before{content:"\f434"}.bi-input-cursor-text::before{content:"\f435"}.bi-input-cursor::before{content:"\f436"}.bi-instagram::before{content:"\f437"}.bi-intersect::before{content:"\f438"}.bi-journal-album::before{content:"\f439"}.bi-journal-arrow-down::before{content:"\f43a"}.bi-journal-arrow-up::before{content:"\f43b"}.bi-journal-bookmark-fill::before{content:"\f43c"}.bi-journal-bookmark::before{content:"\f43d"}.bi-journal-check::before{content:"\f43e"}.bi-journal-code::before{content:"\f43f"}.bi-journal-medical::before{content:"\f440"}.bi-journal-minus::before{content:"\f441"}.bi-journal-plus::before{content:"\f442"}.bi-journal-richtext::before{content:"\f443"}.bi-journal-text::before{content:"\f444"}.bi-journal-x::before{content:"\f445"}.bi-journal::before{content:"\f446"}.bi-journals::before{content:"\f447"}.bi-joystick::before{content:"\f448"}.bi-justify-left::before{content:"\f449"}.bi-justify-right::before{content:"\f44a"}.bi-justify::before{content:"\f44b"}.bi-kanban-fill::before{content:"\f44c"}.bi-kanban::before{content:"\f44d"}.bi-key-fill::before{content:"\f44e"}.bi-key::before{content:"\f44f"}.bi-keyboard-fill::before{content:"\f450"}.bi-keyboard::before{content:"\f451"}.bi-ladder::before{content:"\f452"}.bi-lamp-fill::before{content:"\f453"}.bi-lamp::before{content:"\f454"}.bi-laptop-fill::before{content:"\f455"}.bi-laptop::before{content:"\f456"}.bi-layer-backward::before{content:"\f457"}.bi-layer-forward::before{content:"\f458"}.bi-layers-fill::before{content:"\f459"}.bi-layers-half::before{content:"\f45a"}.bi-layers::before{content:"\f45b"}.bi-layout-sidebar-inset-reverse::before{content:"\f45c"}.bi-layout-sidebar-inset::before{content:"\f45d"}.bi-layout-sidebar-reverse::before{content:"\f45e"}.bi-layout-sidebar::before{content:"\f45f"}.bi-layout-split::before{content:"\f460"}.bi-layout-text-sidebar-reverse::before{content:"\f461"}.bi-layout-text-sidebar::before{content:"\f462"}.bi-layout-text-window-reverse::before{content:"\f463"}.bi-layout-text-window::before{content:"\f464"}.bi-layout-three-columns::before{content:"\f465"}.bi-layout-wtf::before{content:"\f466"}.bi-life-preserver::before{content:"\f467"}.bi-lightbulb-fill::before{content:"\f468"}.bi-lightbulb-off-fill::before{content:"\f469"}.bi-lightbulb-off::before{content:"\f46a"}.bi-lightbulb::before{content:"\f46b"}.bi-lightning-charge-fill::before{content:"\f46c"}.bi-lightning-charge::before{content:"\f46d"}.bi-lightning-fill::before{content:"\f46e"}.bi-lightning::before{content:"\f46f"}.bi-link-45deg::before{content:"\f470"}.bi-link::before{content:"\f471"}.bi-linkedin::before{content:"\f472"}.bi-list-check::before{content:"\f473"}.bi-list-nested::before{content:"\f474"}.bi-list-ol::before{content:"\f475"}.bi-list-stars::before{content:"\f476"}.bi-list-task::before{content:"\f477"}.bi-list-ul::before{content:"\f478"}.bi-list::before{content:"\f479"}.bi-lock-fill::before{content:"\f47a"}.bi-lock::before{content:"\f47b"}.bi-mailbox::before{content:"\f47c"}.bi-mailbox2::before{content:"\f47d"}.bi-map-fill::before{content:"\f47e"}.bi-map::before{content:"\f47f"}.bi-markdown-fill::before{content:"\f480"}.bi-markdown::before{content:"\f481"}.bi-mask::before{content:"\f482"}.bi-megaphone-fill::before{content:"\f483"}.bi-megaphone::before{content:"\f484"}.bi-menu-app-fill::before{content:"\f485"}.bi-menu-app::before{content:"\f486"}.bi-menu-button-fill::before{content:"\f487"}.bi-menu-button-wide-fill::before{content:"\f488"}.bi-menu-button-wide::before{content:"\f489"}.bi-menu-button::before{content:"\f48a"}.bi-menu-down::before{content:"\f48b"}.bi-menu-up::before{content:"\f48c"}.bi-mic-fill::before{content:"\f48d"}.bi-mic-mute-fill::before{content:"\f48e"}.bi-mic-mute::before{content:"\f48f"}.bi-mic::before{content:"\f490"}.bi-minecart-loaded::before{content:"\f491"}.bi-minecart::before{content:"\f492"}.bi-moisture::before{content:"\f493"}.bi-moon-fill::before{content:"\f494"}.bi-moon-stars-fill::before{content:"\f495"}.bi-moon-stars::before{content:"\f496"}.bi-moon::before{content:"\f497"}.bi-mouse-fill::before{content:"\f498"}.bi-mouse::before{content:"\f499"}.bi-mouse2-fill::before{content:"\f49a"}.bi-mouse2::before{content:"\f49b"}.bi-mouse3-fill::before{content:"\f49c"}.bi-mouse3::before{content:"\f49d"}.bi-music-note-beamed::before{content:"\f49e"}.bi-music-note-list::before{content:"\f49f"}.bi-music-note::before{content:"\f4a0"}.bi-music-player-fill::before{content:"\f4a1"}.bi-music-player::before{content:"\f4a2"}.bi-newspaper::before{content:"\f4a3"}.bi-node-minus-fill::before{content:"\f4a4"}.bi-node-minus::before{content:"\f4a5"}.bi-node-plus-fill::before{content:"\f4a6"}.bi-node-plus::before{content:"\f4a7"}.bi-nut-fill::before{content:"\f4a8"}.bi-nut::before{content:"\f4a9"}.bi-octagon-fill::before{content:"\f4aa"}.bi-octagon-half::before{content:"\f4ab"}.bi-octagon::before{content:"\f4ac"}.bi-option::before{content:"\f4ad"}.bi-outlet::before{content:"\f4ae"}.bi-paint-bucket::before{content:"\f4af"}.bi-palette-fill::before{content:"\f4b0"}.bi-palette::before{content:"\f4b1"}.bi-palette2::before{content:"\f4b2"}.bi-paperclip::before{content:"\f4b3"}.bi-paragraph::before{content:"\f4b4"}.bi-patch-check-fill::before{content:"\f4b5"}.bi-patch-check::before{content:"\f4b6"}.bi-patch-exclamation-fill::before{content:"\f4b7"}.bi-patch-exclamation::before{content:"\f4b8"}.bi-patch-minus-fill::before{content:"\f4b9"}.bi-patch-minus::before{content:"\f4ba"}.bi-patch-plus-fill::before{content:"\f4bb"}.bi-patch-plus::before{content:"\f4bc"}.bi-patch-question-fill::before{content:"\f4bd"}.bi-patch-question::before{content:"\f4be"}.bi-pause-btn-fill::before{content:"\f4bf"}.bi-pause-btn::before{content:"\f4c0"}.bi-pause-circle-fill::before{content:"\f4c1"}.bi-pause-circle::before{content:"\f4c2"}.bi-pause-fill::before{content:"\f4c3"}.bi-pause::before{content:"\f4c4"}.bi-peace-fill::before{content:"\f4c5"}.bi-peace::before{content:"\f4c6"}.bi-pen-fill::before{content:"\f4c7"}.bi-pen::before{content:"\f4c8"}.bi-pencil-fill::before{content:"\f4c9"}.bi-pencil-square::before{content:"\f4ca"}.bi-pencil::before{content:"\f4cb"}.bi-pentagon-fill::before{content:"\f4cc"}.bi-pentagon-half::before{content:"\f4cd"}.bi-pentagon::before{content:"\f4ce"}.bi-people-fill::before{content:"\f4cf"}.bi-people::before{content:"\f4d0"}.bi-percent::before{content:"\f4d1"}.bi-person-badge-fill::before{content:"\f4d2"}.bi-person-badge::before{content:"\f4d3"}.bi-person-bounding-box::before{content:"\f4d4"}.bi-person-check-fill::before{content:"\f4d5"}.bi-person-check::before{content:"\f4d6"}.bi-person-circle::before{content:"\f4d7"}.bi-person-dash-fill::before{content:"\f4d8"}.bi-person-dash::before{content:"\f4d9"}.bi-person-fill::before{content:"\f4da"}.bi-person-lines-fill::before{content:"\f4db"}.bi-person-plus-fill::before{content:"\f4dc"}.bi-person-plus::before{content:"\f4dd"}.bi-person-square::before{content:"\f4de"}.bi-person-x-fill::before{content:"\f4df"}.bi-person-x::before{content:"\f4e0"}.bi-person::before{content:"\f4e1"}.bi-phone-fill::before{content:"\f4e2"}.bi-phone-landscape-fill::before{content:"\f4e3"}.bi-phone-landscape::before{content:"\f4e4"}.bi-phone-vibrate-fill::before{content:"\f4e5"}.bi-phone-vibrate::before{content:"\f4e6"}.bi-phone::before{content:"\f4e7"}.bi-pie-chart-fill::before{content:"\f4e8"}.bi-pie-chart::before{content:"\f4e9"}.bi-pin-angle-fill::before{content:"\f4ea"}.bi-pin-angle::before{content:"\f4eb"}.bi-pin-fill::before{content:"\f4ec"}.bi-pin::before{content:"\f4ed"}.bi-pip-fill::before{content:"\f4ee"}.bi-pip::before{content:"\f4ef"}.bi-play-btn-fill::before{content:"\f4f0"}.bi-play-btn::before{content:"\f4f1"}.bi-play-circle-fill::before{content:"\f4f2"}.bi-play-circle::before{content:"\f4f3"}.bi-play-fill::before{content:"\f4f4"}.bi-play::before{content:"\f4f5"}.bi-plug-fill::before{content:"\f4f6"}.bi-plug::before{content:"\f4f7"}.bi-plus-circle-dotted::before{content:"\f4f8"}.bi-plus-circle-fill::before{content:"\f4f9"}.bi-plus-circle::before{content:"\f4fa"}.bi-plus-square-dotted::before{content:"\f4fb"}.bi-plus-square-fill::before{content:"\f4fc"}.bi-plus-square::before{content:"\f4fd"}.bi-plus::before{content:"\f4fe"}.bi-power::before{content:"\f4ff"}.bi-printer-fill::before{content:"\f500"}.bi-printer::before{content:"\f501"}.bi-puzzle-fill::before{content:"\f502"}.bi-puzzle::before{content:"\f503"}.bi-question-circle-fill::before{content:"\f504"}.bi-question-circle::before{content:"\f505"}.bi-question-diamond-fill::before{content:"\f506"}.bi-question-diamond::before{content:"\f507"}.bi-question-octagon-fill::before{content:"\f508"}.bi-question-octagon::before{content:"\f509"}.bi-question-square-fill::before{content:"\f50a"}.bi-question-square::before{content:"\f50b"}.bi-question::before{content:"\f50c"}.bi-rainbow::before{content:"\f50d"}.bi-receipt-cutoff::before{content:"\f50e"}.bi-receipt::before{content:"\f50f"}.bi-reception-0::before{content:"\f510"}.bi-reception-1::before{content:"\f511"}.bi-reception-2::before{content:"\f512"}.bi-reception-3::before{content:"\f513"}.bi-reception-4::before{content:"\f514"}.bi-record-btn-fill::before{content:"\f515"}.bi-record-btn::before{content:"\f516"}.bi-record-circle-fill::before{content:"\f517"}.bi-record-circle::before{content:"\f518"}.bi-record-fill::before{content:"\f519"}.bi-record::before{content:"\f51a"}.bi-record2-fill::before{content:"\f51b"}.bi-record2::before{content:"\f51c"}.bi-reply-all-fill::before{content:"\f51d"}.bi-reply-all::before{content:"\f51e"}.bi-reply-fill::before{content:"\f51f"}.bi-reply::before{content:"\f520"}.bi-rss-fill::before{content:"\f521"}.bi-rss::before{content:"\f522"}.bi-rulers::before{content:"\f523"}.bi-save-fill::before{content:"\f524"}.bi-save::before{content:"\f525"}.bi-save2-fill::before{content:"\f526"}.bi-save2::before{content:"\f527"}.bi-scissors::before{content:"\f528"}.bi-screwdriver::before{content:"\f529"}.bi-search::before{content:"\f52a"}.bi-segmented-nav::before{content:"\f52b"}.bi-server::before{content:"\f52c"}.bi-share-fill::before{content:"\f52d"}.bi-share::before{content:"\f52e"}.bi-shield-check::before{content:"\f52f"}.bi-shield-exclamation::before{content:"\f530"}.bi-shield-fill-check::before{content:"\f531"}.bi-shield-fill-exclamation::before{content:"\f532"}.bi-shield-fill-minus::before{content:"\f533"}.bi-shield-fill-plus::before{content:"\f534"}.bi-shield-fill-x::before{content:"\f535"}.bi-shield-fill::before{content:"\f536"}.bi-shield-lock-fill::before{content:"\f537"}.bi-shield-lock::before{content:"\f538"}.bi-shield-minus::before{content:"\f539"}.bi-shield-plus::before{content:"\f53a"}.bi-shield-shaded::before{content:"\f53b"}.bi-shield-slash-fill::before{content:"\f53c"}.bi-shield-slash::before{content:"\f53d"}.bi-shield-x::before{content:"\f53e"}.bi-shield::before{content:"\f53f"}.bi-shift-fill::before{content:"\f540"}.bi-shift::before{content:"\f541"}.bi-shop-window::before{content:"\f542"}.bi-shop::before{content:"\f543"}.bi-shuffle::before{content:"\f544"}.bi-signpost-2-fill::before{content:"\f545"}.bi-signpost-2::before{content:"\f546"}.bi-signpost-fill::before{content:"\f547"}.bi-signpost-split-fill::before{content:"\f548"}.bi-signpost-split::before{content:"\f549"}.bi-signpost::before{content:"\f54a"}.bi-sim-fill::before{content:"\f54b"}.bi-sim::before{content:"\f54c"}.bi-skip-backward-btn-fill::before{content:"\f54d"}.bi-skip-backward-btn::before{content:"\f54e"}.bi-skip-backward-circle-fill::before{content:"\f54f"}.bi-skip-backward-circle::before{content:"\f550"}.bi-skip-backward-fill::before{content:"\f551"}.bi-skip-backward::before{content:"\f552"}.bi-skip-end-btn-fill::before{content:"\f553"}.bi-skip-end-btn::before{content:"\f554"}.bi-skip-end-circle-fill::before{content:"\f555"}.bi-skip-end-circle::before{content:"\f556"}.bi-skip-end-fill::before{content:"\f557"}.bi-skip-end::before{content:"\f558"}.bi-skip-forward-btn-fill::before{content:"\f559"}.bi-skip-forward-btn::before{content:"\f55a"}.bi-skip-forward-circle-fill::before{content:"\f55b"}.bi-skip-forward-circle::before{content:"\f55c"}.bi-skip-forward-fill::before{content:"\f55d"}.bi-skip-forward::before{content:"\f55e"}.bi-skip-start-btn-fill::before{content:"\f55f"}.bi-skip-start-btn::before{content:"\f560"}.bi-skip-start-circle-fill::before{content:"\f561"}.bi-skip-start-circle::before{content:"\f562"}.bi-skip-start-fill::before{content:"\f563"}.bi-skip-start::before{content:"\f564"}.bi-slack::before{content:"\f565"}.bi-slash-circle-fill::before{content:"\f566"}.bi-slash-circle::before{content:"\f567"}.bi-slash-square-fill::before{content:"\f568"}.bi-slash-square::before{content:"\f569"}.bi-slash::before{content:"\f56a"}.bi-sliders::before{content:"\f56b"}.bi-smartwatch::before{content:"\f56c"}.bi-snow::before{content:"\f56d"}.bi-snow2::before{content:"\f56e"}.bi-snow3::before{content:"\f56f"}.bi-sort-alpha-down-alt::before{content:"\f570"}.bi-sort-alpha-down::before{content:"\f571"}.bi-sort-alpha-up-alt::before{content:"\f572"}.bi-sort-alpha-up::before{content:"\f573"}.bi-sort-down-alt::before{content:"\f574"}.bi-sort-down::before{content:"\f575"}.bi-sort-numeric-down-alt::before{content:"\f576"}.bi-sort-numeric-down::before{content:"\f577"}.bi-sort-numeric-up-alt::before{content:"\f578"}.bi-sort-numeric-up::before{content:"\f579"}.bi-sort-up-alt::before{content:"\f57a"}.bi-sort-up::before{content:"\f57b"}.bi-soundwave::before{content:"\f57c"}.bi-speaker-fill::before{content:"\f57d"}.bi-speaker::before{content:"\f57e"}.bi-speedometer::before{content:"\f57f"}.bi-speedometer2::before{content:"\f580"}.bi-spellcheck::before{content:"\f581"}.bi-square-fill::before{content:"\f582"}.bi-square-half::before{content:"\f583"}.bi-square::before{content:"\f584"}.bi-stack::before{content:"\f585"}.bi-star-fill::before{content:"\f586"}.bi-star-half::before{content:"\f587"}.bi-star::before{content:"\f588"}.bi-stars::before{content:"\f589"}.bi-stickies-fill::before{content:"\f58a"}.bi-stickies::before{content:"\f58b"}.bi-sticky-fill::before{content:"\f58c"}.bi-sticky::before{content:"\f58d"}.bi-stop-btn-fill::before{content:"\f58e"}.bi-stop-btn::before{content:"\f58f"}.bi-stop-circle-fill::before{content:"\f590"}.bi-stop-circle::before{content:"\f591"}.bi-stop-fill::before{content:"\f592"}.bi-stop::before{content:"\f593"}.bi-stoplights-fill::before{content:"\f594"}.bi-stoplights::before{content:"\f595"}.bi-stopwatch-fill::before{content:"\f596"}.bi-stopwatch::before{content:"\f597"}.bi-subtract::before{content:"\f598"}.bi-suit-club-fill::before{content:"\f599"}.bi-suit-club::before{content:"\f59a"}.bi-suit-diamond-fill::before{content:"\f59b"}.bi-suit-diamond::before{content:"\f59c"}.bi-suit-heart-fill::before{content:"\f59d"}.bi-suit-heart::before{content:"\f59e"}.bi-suit-spade-fill::before{content:"\f59f"}.bi-suit-spade::before{content:"\f5a0"}.bi-sun-fill::before{content:"\f5a1"}.bi-sun::before{content:"\f5a2"}.bi-sunglasses::before{content:"\f5a3"}.bi-sunrise-fill::before{content:"\f5a4"}.bi-sunrise::before{content:"\f5a5"}.bi-sunset-fill::before{content:"\f5a6"}.bi-sunset::before{content:"\f5a7"}.bi-symmetry-horizontal::before{content:"\f5a8"}.bi-symmetry-vertical::before{content:"\f5a9"}.bi-table::before{content:"\f5aa"}.bi-tablet-fill::before{content:"\f5ab"}.bi-tablet-landscape-fill::before{content:"\f5ac"}.bi-tablet-landscape::before{content:"\f5ad"}.bi-tablet::before{content:"\f5ae"}.bi-tag-fill::before{content:"\f5af"}.bi-tag::before{content:"\f5b0"}.bi-tags-fill::before{content:"\f5b1"}.bi-tags::before{content:"\f5b2"}.bi-telegram::before{content:"\f5b3"}.bi-telephone-fill::before{content:"\f5b4"}.bi-telephone-forward-fill::before{content:"\f5b5"}.bi-telephone-forward::before{content:"\f5b6"}.bi-telephone-inbound-fill::before{content:"\f5b7"}.bi-telephone-inbound::before{content:"\f5b8"}.bi-telephone-minus-fill::before{content:"\f5b9"}.bi-telephone-minus::before{content:"\f5ba"}.bi-telephone-outbound-fill::before{content:"\f5bb"}.bi-telephone-outbound::before{content:"\f5bc"}.bi-telephone-plus-fill::before{content:"\f5bd"}.bi-telephone-plus::before{content:"\f5be"}.bi-telephone-x-fill::before{content:"\f5bf"}.bi-telephone-x::before{content:"\f5c0"}.bi-telephone::before{content:"\f5c1"}.bi-terminal-fill::before{content:"\f5c2"}.bi-terminal::before{content:"\f5c3"}.bi-text-center::before{content:"\f5c4"}.bi-text-indent-left::before{content:"\f5c5"}.bi-text-indent-right::before{content:"\f5c6"}.bi-text-left::before{content:"\f5c7"}.bi-text-paragraph::before{content:"\f5c8"}.bi-text-right::before{content:"\f5c9"}.bi-textarea-resize::before{content:"\f5ca"}.bi-textarea-t::before{content:"\f5cb"}.bi-textarea::before{content:"\f5cc"}.bi-thermometer-half::before{content:"\f5cd"}.bi-thermometer-high::before{content:"\f5ce"}.bi-thermometer-low::before{content:"\f5cf"}.bi-thermometer-snow::before{content:"\f5d0"}.bi-thermometer-sun::before{content:"\f5d1"}.bi-thermometer::before{content:"\f5d2"}.bi-three-dots-vertical::before{content:"\f5d3"}.bi-three-dots::before{content:"\f5d4"}.bi-toggle-off::before{content:"\f5d5"}.bi-toggle-on::before{content:"\f5d6"}.bi-toggle2-off::before{content:"\f5d7"}.bi-toggle2-on::before{content:"\f5d8"}.bi-toggles::before{content:"\f5d9"}.bi-toggles2::before{content:"\f5da"}.bi-tools::before{content:"\f5db"}.bi-tornado::before{content:"\f5dc"}.bi-trash-fill::before{content:"\f5dd"}.bi-trash::before{content:"\f5de"}.bi-trash2-fill::before{content:"\f5df"}.bi-trash2::before{content:"\f5e0"}.bi-tree-fill::before{content:"\f5e1"}.bi-tree::before{content:"\f5e2"}.bi-triangle-fill::before{content:"\f5e3"}.bi-triangle-half::before{content:"\f5e4"}.bi-triangle::before{content:"\f5e5"}.bi-trophy-fill::before{content:"\f5e6"}.bi-trophy::before{content:"\f5e7"}.bi-tropical-storm::before{content:"\f5e8"}.bi-truck-flatbed::before{content:"\f5e9"}.bi-truck::before{content:"\f5ea"}.bi-tsunami::before{content:"\f5eb"}.bi-tv-fill::before{content:"\f5ec"}.bi-tv::before{content:"\f5ed"}.bi-twitch::before{content:"\f5ee"}.bi-twitter::before{content:"\f5ef"}.bi-type-bold::before{content:"\f5f0"}.bi-type-h1::before{content:"\f5f1"}.bi-type-h2::before{content:"\f5f2"}.bi-type-h3::before{content:"\f5f3"}.bi-type-italic::before{content:"\f5f4"}.bi-type-strikethrough::before{content:"\f5f5"}.bi-type-underline::before{content:"\f5f6"}.bi-type::before{content:"\f5f7"}.bi-ui-checks-grid::before{content:"\f5f8"}.bi-ui-checks::before{content:"\f5f9"}.bi-ui-radios-grid::before{content:"\f5fa"}.bi-ui-radios::before{content:"\f5fb"}.bi-umbrella-fill::before{content:"\f5fc"}.bi-umbrella::before{content:"\f5fd"}.bi-union::before{content:"\f5fe"}.bi-unlock-fill::before{content:"\f5ff"}.bi-unlock::before{content:"\f600"}.bi-upc-scan::before{content:"\f601"}.bi-upc::before{content:"\f602"}.bi-upload::before{content:"\f603"}.bi-vector-pen::before{content:"\f604"}.bi-view-list::before{content:"\f605"}.bi-view-stacked::before{content:"\f606"}.bi-vinyl-fill::before{content:"\f607"}.bi-vinyl::before{content:"\f608"}.bi-voicemail::before{content:"\f609"}.bi-volume-down-fill::before{content:"\f60a"}.bi-volume-down::before{content:"\f60b"}.bi-volume-mute-fill::before{content:"\f60c"}.bi-volume-mute::before{content:"\f60d"}.bi-volume-off-fill::before{content:"\f60e"}.bi-volume-off::before{content:"\f60f"}.bi-volume-up-fill::before{content:"\f610"}.bi-volume-up::before{content:"\f611"}.bi-vr::before{content:"\f612"}.bi-wallet-fill::before{content:"\f613"}.bi-wallet::before{content:"\f614"}.bi-wallet2::before{content:"\f615"}.bi-watch::before{content:"\f616"}.bi-water::before{content:"\f617"}.bi-whatsapp::before{content:"\f618"}.bi-wifi-1::before{content:"\f619"}.bi-wifi-2::before{content:"\f61a"}.bi-wifi-off::before{content:"\f61b"}.bi-wifi::before{content:"\f61c"}.bi-wind::before{content:"\f61d"}.bi-window-dock::before{content:"\f61e"}.bi-window-sidebar::before{content:"\f61f"}.bi-window::before{content:"\f620"}.bi-wrench::before{content:"\f621"}.bi-x-circle-fill::before{content:"\f622"}.bi-x-circle::before{content:"\f623"}.bi-x-diamond-fill::before{content:"\f624"}.bi-x-diamond::before{content:"\f625"}.bi-x-octagon-fill::before{content:"\f626"}.bi-x-octagon::before{content:"\f627"}.bi-x-square-fill::before{content:"\f628"}.bi-x-square::before{content:"\f629"}.bi-x::before{content:"\f62a"}.bi-youtube::before{content:"\f62b"}.bi-zoom-in::before{content:"\f62c"}.bi-zoom-out::before{content:"\f62d"}.bi-bank::before{content:"\f62e"}.bi-bank2::before{content:"\f62f"}.bi-bell-slash-fill::before{content:"\f630"}.bi-bell-slash::before{content:"\f631"}.bi-cash-coin::before{content:"\f632"}.bi-check-lg::before{content:"\f633"}.bi-coin::before{content:"\f634"}.bi-currency-bitcoin::before{content:"\f635"}.bi-currency-dollar::before{content:"\f636"}.bi-currency-euro::before{content:"\f637"}.bi-currency-exchange::before{content:"\f638"}.bi-currency-pound::before{content:"\f639"}.bi-currency-yen::before{content:"\f63a"}.bi-dash-lg::before{content:"\f63b"}.bi-exclamation-lg::before{content:"\f63c"}.bi-file-earmark-pdf-fill::before{content:"\f63d"}.bi-file-earmark-pdf::before{content:"\f63e"}.bi-file-pdf-fill::before{content:"\f63f"}.bi-file-pdf::before{content:"\f640"}.bi-gender-ambiguous::before{content:"\f641"}.bi-gender-female::before{content:"\f642"}.bi-gender-male::before{content:"\f643"}.bi-gender-trans::before{content:"\f644"}.bi-headset-vr::before{content:"\f645"}.bi-info-lg::before{content:"\f646"}.bi-mastodon::before{content:"\f647"}.bi-messenger::before{content:"\f648"}.bi-piggy-bank-fill::before{content:"\f649"}.bi-piggy-bank::before{content:"\f64a"}.bi-pin-map-fill::before{content:"\f64b"}.bi-pin-map::before{content:"\f64c"}.bi-plus-lg::before{content:"\f64d"}.bi-question-lg::before{content:"\f64e"}.bi-recycle::before{content:"\f64f"}.bi-reddit::before{content:"\f650"}.bi-safe-fill::before{content:"\f651"}.bi-safe2-fill::before{content:"\f652"}.bi-safe2::before{content:"\f653"}.bi-sd-card-fill::before{content:"\f654"}.bi-sd-card::before{content:"\f655"}.bi-skype::before{content:"\f656"}.bi-slash-lg::before{content:"\f657"}.bi-translate::before{content:"\f658"}.bi-x-lg::before{content:"\f659"}.bi-safe::before{content:"\f65a"} diff --git a/content/components/icons/2/html.inc b/content/components/icons/2/html.inc new file mode 100644 index 000000000..99e04a125 --- /dev/null +++ b/content/components/icons/2/html.inc @@ -0,0 +1,4 @@ +Find all available icons here ! + + + \ No newline at end of file diff --git a/content/components/icons/2/index.md b/content/components/icons/2/index.md new file mode 100644 index 000000000..138faff76 --- /dev/null +++ b/content/components/icons/2/index.md @@ -0,0 +1,20 @@ +--- +title: "Import a font icon library - Bootsrap icons" +avoidCSSHighlight: true +--- + +_[Bootstrap Icons](https://icons.getbootstrap.com/) - Free, high quality, open source icon library with over 1,300 icons._ + + +**Install guide:** + +- Copy the CSS into your portal theme (in `backoffice -> look & feel -> theme -> stylesheet`, En Français : `Backoffice -> Apparence -> Thème -> Feuille de style`) +- Make live (save and apply your theme) +- Finally, simply use icons into your pages + +**Usage:** + +In your HTML, on `i` tag, set the class to `bi-` followed by the name of the icon. +For example, for the `alarm` icon, try: +- `` +- `` diff --git a/content/components/icons/3_svg_inline/css.inc b/content/components/icons/3_svg_inline/css.inc new file mode 100644 index 000000000..66e564cc7 --- /dev/null +++ b/content/components/icons/3_svg_inline/css.inc @@ -0,0 +1,5 @@ +.icons-list { + display: flex; + align-items: center; + gap: 5px; +} \ No newline at end of file diff --git a/content/components/icons/3_svg_inline/html.inc b/content/components/icons/3_svg_inline/html.inc new file mode 100644 index 000000000..75303e8f1 --- /dev/null +++ b/content/components/icons/3_svg_inline/html.inc @@ -0,0 +1,28 @@ +

Feather icon Signals

+

24px to 40px size, 0.5px to 3px thickness

+
+ + + + + + + + + + + + + + + + + + +
\ No newline at end of file diff --git a/content/components/icons/3_svg_inline/index.md b/content/components/icons/3_svg_inline/index.md new file mode 100644 index 000000000..611c5e692 --- /dev/null +++ b/content/components/icons/3_svg_inline/index.md @@ -0,0 +1,37 @@ +--- +title: "Inline SVG directly in your HTML" +height: 200 +--- + +A non-exhaustive list of SVG icon libraries free to use : + +- [Remix Icon](https://remixicon.com/) +- [Bootstrap Icons](https://icons.getbootstrap.com/) +- [Google Fonts Icons](https://fonts.google.com/icons?selected=Material+Icons) +- [Feather icons](https://feathericons.com/) + +**Usage for Remix Icon and Boostrap icons**: + +As Bootstrap and Remix propose to copy to clipboard the SVG code directly from the interface, +you just need to choose your icon, click on the "Copy to clipboard" button for Boostrap, or "Copy SVG" for Remix. +You are then ready to go. + + +**Usage for Google icons, Feather icons and others:** + +- Get the desired SVG icon, download it on your computer +- Open it with a text editor +- Copy the code +- Paste it wherever you want in your HTML + + +> Pros: Inlining SVG is optimal is you use few icons in your pages, +> and therefore you will only load what is really necessary +> (you won't load an heavy icon font to only use 0.1% of it) + +> Pros: You take benefit of SVG format in general: better scaling, better accessibility possibilities, can handle complex and even multicolor icons. + +> Cons: Sizing and positioning can require more advanced CSS skills than simple icon fonts that behave like text characters. + +> Cons: Reusing several times the same icon will be tedious as you'll need to duplicate the SVG code several times. In that case, see the next example for SVG Sprites + diff --git a/content/components/icons/4_svg_href/css.inc b/content/components/icons/4_svg_href/css.inc new file mode 100644 index 000000000..f8ea61abe --- /dev/null +++ b/content/components/icons/4_svg_href/css.inc @@ -0,0 +1,67 @@ +.sea { + display: flex; + align-items: center; + gap: 2px; +} + +/* Transform */ +.axial-symmetry-x { + transform: scaleX(-1); +} + +/* Animations */ +.flutter { + animation: flutter 5s infinite; +} +.delay1 { + animation-delay: 1s; +} +.delay2 { + animation-delay: 2s; +} +.delay3 { + animation-delay: 3s; +} +.delay4 { + animation-delay: 4s; + } + +@keyframes flutter { + 0% { + transform: scaleX(1) rotate(0deg) + } + 25% { + transform: scaleX(0.9) rotate(5deg); + } + 50% { + transform: scaleX(0.8) rotate(-5deg) + } + 75% { + transform: scaleX(1.1) rotate(5deg) + } + 100% { + transform: scaleX(1) rotate(0deg) + } +} + +.flutter-fish { + animation: flutter-fish 5s infinite; +} + +@keyframes flutter-fish { + 0% { + transform: rotate(0deg) + } + 25% { + transform: rotate(5deg); + } + 50% { + transform: rotate(-5deg) + } + 75% { + transform: rotate(5deg) + } + 100% { + transform: rotate(0deg) + } +} \ No newline at end of file diff --git a/content/components/icons/4_svg_href/html.inc b/content/components/icons/4_svg_href/html.inc new file mode 100644 index 000000000..59f220cec --- /dev/null +++ b/content/components/icons/4_svg_href/html.inc @@ -0,0 +1,37 @@ + + + + + + +

Icon Sea

+ +
+ + + + + + + + + +
+ +
+ + + + +
\ No newline at end of file diff --git a/content/components/icons/4_svg_href/index.md b/content/components/icons/4_svg_href/index.md new file mode 100644 index 000000000..9754bb7b8 --- /dev/null +++ b/content/components/icons/4_svg_href/index.md @@ -0,0 +1,25 @@ +--- +title: "Optimal solution with SVG Sprites" +height: 200 +--- + +**Disclaimer:** + +Technically speaking, it's the optimal solution, but beware (as the must is the enemy of the good), **it's also the most complex and technical**. +We recommend this solution for external usage, when the project must handle an important traffic, and therefore when performance is a key criteria. + +**Principle:** + +You will constitute an SVG Sprite, that contains all the required SVGs of your page. It's a kind of collection of `symbol`s. Each symbol as an ID, and can be used by referencing this ID. + +In this example: +- a sprite (collection) of 2 icons is declared in the HTML +- each icon has a viewport, but don't necessarily have a size +- then, in my page, I can "load" the desired icon by using the symbol ID with a `` tag and a `hrel` attribute. +- on each `svg/use` tag I can set a specific style, to change the size, the stroke color etc... +- I can also apply (with CSS) a transform property, to rotate or even animate my icons. + + +> Pros: Optimal, lightweight, custom made + +> Cons: Complex to create and use, require advanced CSS and SVG skills \ No newline at end of file diff --git a/content/components/icons/index.md b/content/components/icons/index.md new file mode 100644 index 000000000..1aa38ea65 --- /dev/null +++ b/content/components/icons/index.md @@ -0,0 +1,9 @@ +--- +title: "Icons" +description: "Import Icon libraries from the web into your portal to enrich your pages with thousands of icons" +tags: [] +height: 120 +resources: +- src: '*/' + name: folder-:counter +--- diff --git a/content/components/kpis/2/index.md b/content/components/kpis/2/index.md index ad6ead41f..9741779d6 100644 --- a/content/components/kpis/2/index.md +++ b/content/components/kpis/2/index.md @@ -1,5 +1,6 @@ --- title: " An ods-aggregation example" + --- Count the number of record of a dataset or compute the average/sum/min/max of a numeric field. diff --git a/content/components/kpis/2/schema.md b/content/components/kpis/2/schema.md new file mode 100644 index 000000000..0c2f529be --- /dev/null +++ b/content/components/kpis/2/schema.md @@ -0,0 +1,16 @@ +**Dataset in use:** `us-hospitals` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/us-hospitals/table/) + +**Fields in use:** +none: count function + +**Dataset in use:** `observation-synop` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/observation-synop/table/) + +**Fields in use:** + +|u (numeric)| +|---| +|100| +|69| +|87| +|73| + diff --git a/content/components/kpis/3/css.inc b/content/components/kpis/3/css.inc index f1f45c018..97e73cf38 100644 --- a/content/components/kpis/3/css.inc +++ b/content/components/kpis/3/css.inc @@ -3,7 +3,19 @@ :root { --secondary-color: #142E7B; } - +.row-equal-height { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + margin-bottom: 20px; +} +/* Fix for early content wrapping in Safari*/ +.row-equal-height:before, +.row-equal-height:after { + content: normal; +} /* KPI Card ========================================================================== */ .kpi-card { @@ -28,7 +40,6 @@ justify-content: center; text-align: center; } - .kpi-icon { color: var(--highlight); color: var(--secondary-color); @@ -37,7 +48,6 @@ margin-bottom: 13px; max-width: 100%; } - .kpi-title { font-weight: normal; color: var(--highlight); @@ -46,7 +56,6 @@ margin-bottom: 13px; max-width: 100%; } - .kpi-description { color: var(--text); font-size: 1rem; @@ -56,81 +65,9 @@ margin-bottom: 0; max-width: 100%; } - .kpi-description-detail { opacity: 0.9; font-style: italic; font-size: 0.9em; margin-top: 0.8em; } - -/* Flip component -========================================================================== */ -.kpi-card.card-face-front { - justify-content: space-between; -} - -.card-flip { - position: relative; - height: 100%; - width: 100%; - -webkit-transition: -webkit-transform 0.2s; - transition: -webkit-transform 0.2s; - -o-transition: transform 0.2s; - transition: transform 0.2s; - transition: transform 0.2s, -webkit-transform 0.2s; - -webkit-perspective: 1200px; - perspective: 1200px; - -webkit-transform-style: preserve-3d; - transform-style: preserve-3d; - border-radius: 4px; - margin-bottom: 20px; -} - -.card-face { - -webkit-backface-visibility: hidden; - backface-visibility: hidden; - height: 100%; - width: 100%; - margin-bottom: 0; /* remove kpi-card margin bottom */ -} - -.card-face-back { - position: absolute; - top: 0; - left: 0; - -webkit-transform: rotateY(180deg); - transform: rotateY(180deg); - -webkit-box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), - 0 1px 10px 0 rgba(0, 0, 0, 0.12); - box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), - 0 1px 10px 0 rgba(0, 0, 0, 0.12); -} - -.card-flip.is-flipped { - -webkit-transform: rotateY(180deg); - transform: rotateY(180deg); -} - -.card-flip:hover { - -webkit-transform: rotateY(5deg); - transform: rotateY(5deg); - -webkit-box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), - 0 1px 10px 0 rgba(0, 0, 0, 0.12); - box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), - 0 1px 10px 0 rgba(0, 0, 0, 0.12); -} - -.card-flip.is-flipped:hover { - -webkit-transform: rotateY(180deg); - transform: rotateY(180deg); -} - -.kpi-card-bottom { - align-self: flex-end; - margin: 16px -27px -27px 0; -} - -p.hint { - color: darkgrey; -} diff --git a/content/components/kpis/3/html.inc b/content/components/kpis/3/html.inc index 4a0b98848..208e56f53 100644 --- a/content/components/kpis/3/html.inc +++ b/content/components/kpis/3/html.inc @@ -1,42 +1,55 @@
- + -
-
-
-
- -

- {{ count | number }} -

-

- Number of hospitals -

-
-
-

"How is it computed? 👉"

-
-
-
-

- {{ count | number }} is the count of all records found in the dataset:  -

- - {{ ushospitals.dataset.metas.title }} - -
+
+ +

+ {{ analysis[0].percentage | number : 2 }}% +

+

+ Number of positive tests in Auvergne-Rhône-Alples +

+ +
+
+ +
+ +

+ {{ analysis[0].humidity | number : 1}} +

+

+ Average humidity (%) +

+
+
+
+ +
+ +

+ {{ analysis[0].wind | number : 1}} +

+

+ Max wind speed (m/s) +

+
+
+
+
\ No newline at end of file diff --git a/content/components/kpis/3/index.md b/content/components/kpis/3/index.md index 35028b349..f7d763561 100644 --- a/content/components/kpis/3/index.md +++ b/content/components/kpis/3/index.md @@ -1,6 +1,12 @@ --- -title: "Flip KPI" -date: "2021-02-09" +title: " An ods-adv-analysis example" +height: "700" --- -This card flip on user interaction to reveal more details about the dataset and how it is computed. +Use `ods-adv-analysis` widget working with ODS Explore API V2 to display advanced calculations on your pages. +In the `select` parameter, you can enter an advanced query to make, following the [ODSQL select clause](https://help.huwise.com/apis/ods-explore-v2/#section/Huwise-Query-Language-(ODSQL)/Select-clause). + +For more information about how to compute metrics and use the other parameters of `ods-adv-analysis`, see [ods-adv-analysis documentation](https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsAdvAnalysis). + +In the exemple, on the first row, we display the percentage of positive tests of Covid-19 in Auvergne-Rhône-Alpes; and on the second row, we display simple aggregations all made in one request through `ods-adv-analysis`. + diff --git a/content/components/kpis/3/schema.md b/content/components/kpis/3/schema.md new file mode 100644 index 000000000..8be24049a --- /dev/null +++ b/content/components/kpis/3/schema.md @@ -0,0 +1,22 @@ +**Dataset in use:** `donnees-relatives-aux-resultats-des-tests-virologiques-covid-19-france` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/donnees-relatives-aux-resultats-des-tests-virologiques-covid-19-france/table/) + +**Fields in use:** +|nb_pos (numeric)| nb_tests (numeric)| reg_name (text)| +|---|---|---| +|100|390|Auvergne-Rhône-Alpes| +|69|120|Occitanie| +|87|93|Normandie| +|73|240|Occitanie| + + +**Dataset in use:** `observation-synop` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/observation-synop/table/) + +**Fields in use:** + +|u (numeric)| +|---| +|100| +|69| +|87| +|73| + diff --git a/content/components/kpis/4/css.inc b/content/components/kpis/4/css.inc index f1f45c018..37d83b0af 100644 --- a/content/components/kpis/4/css.inc +++ b/content/components/kpis/4/css.inc @@ -8,7 +8,6 @@ ========================================================================== */ .kpi-card { background-color: var(--boxes-background); - height: 100%; padding: 39px; border-radius: 4px; margin-bottom: 20px; @@ -71,9 +70,8 @@ } .card-flip { - position: relative; - height: 100%; - width: 100%; + display: flex; + align-items: stretch; -webkit-transition: -webkit-transform 0.2s; transition: -webkit-transform 0.2s; -o-transition: transform 0.2s; @@ -90,21 +88,19 @@ .card-face { -webkit-backface-visibility: hidden; backface-visibility: hidden; - height: 100%; width: 100%; + margin-right: -100%; margin-bottom: 0; /* remove kpi-card margin bottom */ } .card-face-back { - position: absolute; - top: 0; - left: 0; -webkit-transform: rotateY(180deg); transform: rotateY(180deg); -webkit-box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12); + overflow-x: hidden; } .card-flip.is-flipped { diff --git a/content/components/kpis/4/html.inc b/content/components/kpis/4/html.inc index 487be7904..4a0b98848 100644 --- a/content/components/kpis/4/html.inc +++ b/content/components/kpis/4/html.inc @@ -1,13 +1,14 @@ -
-
+
+

- {{ count | number }} + {{ count | number }}

Number of hospitals @@ -29,47 +30,7 @@

- {{ count | number }} is the count of all records found in the dataset: -

- - {{ ushospitals.dataset.metas.title }} - -
-
- -
- -
- - -
-
-
-
- -

- {{ count | number }} -

-

- Number of hospitals -

-
-
-

"How is it computed? 👉"

-
-
-
-

- {{ count | number }} is the count of all records found in the dataset: + {{ count | number }} is the count of all records found in the dataset: 

{{ ushospitals.dataset.metas.title }} diff --git a/content/components/kpis/4/index.md b/content/components/kpis/4/index.md index 5aeccbe66..4bbb1948a 100644 --- a/content/components/kpis/4/index.md +++ b/content/components/kpis/4/index.md @@ -1,6 +1,8 @@ --- -title: "KPI sync flip" -date: 2021-02-23T15:21:27+01:00 +title: "Flip KPI" +date: "2021-02-09" --- -By default flip kpi will be independant. If you want multiple KPIs to all to flip when one is clicked, you have lift the state variable to a containing element. +This card flip on user interaction to reveal more details about the dataset and how it is computed. +This component will stretch vertically according to content size. +If your content is too large, the horizontal overflow will be hidden on the back face. diff --git a/content/components/kpis/4/schema.md b/content/components/kpis/4/schema.md new file mode 100644 index 000000000..9557c8a45 --- /dev/null +++ b/content/components/kpis/4/schema.md @@ -0,0 +1,5 @@ +**Dataset in use:** `us-hospitals` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/us-hospitals/table/) + +**Fields in use:** +none: count function + diff --git a/content/components/kpis/5/css.inc b/content/components/kpis/5/css.inc new file mode 100644 index 000000000..37d83b0af --- /dev/null +++ b/content/components/kpis/5/css.inc @@ -0,0 +1,132 @@ +/* Variables & Shared classes +========================================================================== */ +:root { + --secondary-color: #142E7B; +} + +/* KPI Card +========================================================================== */ +.kpi-card { + background-color: var(--boxes-background); + padding: 39px; + border-radius: 4px; + margin-bottom: 20px; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + text-align: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + text-align: center; +} + +.kpi-icon { + color: var(--highlight); + color: var(--secondary-color); + font-size: 4rem; + margin-top: 0; + margin-bottom: 13px; + max-width: 100%; +} + +.kpi-title { + font-weight: normal; + color: var(--highlight); + font-size: 3.2rem; + margin-top: 0; + margin-bottom: 13px; + max-width: 100%; +} + +.kpi-description { + color: var(--text); + font-size: 1rem; + line-height: 1.5; + font-weight: normal; + margin-top: 0; + margin-bottom: 0; + max-width: 100%; +} + +.kpi-description-detail { + opacity: 0.9; + font-style: italic; + font-size: 0.9em; + margin-top: 0.8em; +} + +/* Flip component +========================================================================== */ +.kpi-card.card-face-front { + justify-content: space-between; +} + +.card-flip { + display: flex; + align-items: stretch; + -webkit-transition: -webkit-transform 0.2s; + transition: -webkit-transform 0.2s; + -o-transition: transform 0.2s; + transition: transform 0.2s; + transition: transform 0.2s, -webkit-transform 0.2s; + -webkit-perspective: 1200px; + perspective: 1200px; + -webkit-transform-style: preserve-3d; + transform-style: preserve-3d; + border-radius: 4px; + margin-bottom: 20px; +} + +.card-face { + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + width: 100%; + margin-right: -100%; + margin-bottom: 0; /* remove kpi-card margin bottom */ +} + +.card-face-back { + -webkit-transform: rotateY(180deg); + transform: rotateY(180deg); + -webkit-box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), + 0 1px 10px 0 rgba(0, 0, 0, 0.12); + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), + 0 1px 10px 0 rgba(0, 0, 0, 0.12); + overflow-x: hidden; +} + +.card-flip.is-flipped { + -webkit-transform: rotateY(180deg); + transform: rotateY(180deg); +} + +.card-flip:hover { + -webkit-transform: rotateY(5deg); + transform: rotateY(5deg); + -webkit-box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), + 0 1px 10px 0 rgba(0, 0, 0, 0.12); + box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), + 0 1px 10px 0 rgba(0, 0, 0, 0.12); +} + +.card-flip.is-flipped:hover { + -webkit-transform: rotateY(180deg); + transform: rotateY(180deg); +} + +.kpi-card-bottom { + align-self: flex-end; + margin: 16px -27px -27px 0; +} + +p.hint { + color: darkgrey; +} diff --git a/content/components/kpis/5/html.inc b/content/components/kpis/5/html.inc new file mode 100644 index 000000000..487be7904 --- /dev/null +++ b/content/components/kpis/5/html.inc @@ -0,0 +1,81 @@ +
+ + +
+ + +
+
+
+
+ +

+ {{ count | number }} +

+

+ Number of hospitals +

+
+
+

"How is it computed? 👉"

+
+
+
+

+ {{ count | number }} is the count of all records found in the dataset: +

+ + {{ ushospitals.dataset.metas.title }} + +
+
+
+
+
diff --git a/content/components/kpis/5/index.md b/content/components/kpis/5/index.md new file mode 100644 index 000000000..5aeccbe66 --- /dev/null +++ b/content/components/kpis/5/index.md @@ -0,0 +1,6 @@ +--- +title: "KPI sync flip" +date: 2021-02-23T15:21:27+01:00 +--- + +By default flip kpi will be independant. If you want multiple KPIs to all to flip when one is clicked, you have lift the state variable to a containing element. diff --git a/content/components/kpis/5/schema.md b/content/components/kpis/5/schema.md new file mode 100644 index 000000000..9557c8a45 --- /dev/null +++ b/content/components/kpis/5/schema.md @@ -0,0 +1,5 @@ +**Dataset in use:** `us-hospitals` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/us-hospitals/table/) + +**Fields in use:** +none: count function + diff --git a/content/components/material-themed-cards/1/schema.md b/content/components/material-themed-cards/1/schema.md new file mode 100644 index 000000000..b296656b9 --- /dev/null +++ b/content/components/material-themed-cards/1/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `monitoring-copy` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/monitoring-copy/table/) + +**Fields in use:** + +|timestamp|size_res| +|---|---| +|2021-11-06T21:39:37+00:00|4662| +|2021-12-07T15:13:02+00:00|4655| +|2021-12-07T09:35:13+00:00|2796| +|2021-12-06T17:23:24+00:00|0| + diff --git a/content/components/material-themed-cards/2/schema.md b/content/components/material-themed-cards/2/schema.md new file mode 100644 index 000000000..899a03858 --- /dev/null +++ b/content/components/material-themed-cards/2/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `monitoring-copy` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/monitoring-copy/table/) + +**Fields in use:** + +|attributes|user_id| +|---|---| +|page-home|anonymous| +|page-home|anonymous| +|page-home|anonymous| +|page-portail|anonymous| + diff --git a/content/components/material-themed-cards/3/schema.md b/content/components/material-themed-cards/3/schema.md new file mode 100644 index 000000000..544610b39 --- /dev/null +++ b/content/components/material-themed-cards/3/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `monitoring-copy` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/monitoring-copy/table/) + +**Fields in use:** + +|query_text| +|---| +|"map"| +|"userclub"| +|"code library"| +|"codelibrary"| + diff --git a/content/components/material-themed-cards/4/schema.md b/content/components/material-themed-cards/4/schema.md new file mode 100644 index 000000000..fd8421cd3 --- /dev/null +++ b/content/components/material-themed-cards/4/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `monitoring-copy` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/monitoring-copy/table/) + +**Fields in use:** + +|dataset_id|timestamp| +|---|---| +|dataproviders-dataods|2021-11-06T21:39:37+00:00| +|dataproviders-dataods|2021-12-07T15:13:02+00:00| +|dataproviders-dataods|2021-12-07T09:35:13+00:00| +|base-nationale-des-lieux-de-covoiturage-en-france|2021-12-06T17:23:24+00:00| + diff --git a/content/components/material-themed-cards/5/css.inc b/content/components/material-themed-cards/5/css.inc index c50d1b85d..84c739cd2 100644 --- a/content/components/material-themed-cards/5/css.inc +++ b/content/components/material-themed-cards/5/css.inc @@ -23,66 +23,6 @@ --overlay-10: hsla(var(--primary-hue), var(--primary-saturation), 90%, 10%); } -.is-info { - --primary-hue: 194; - --primary-saturation: 100%; - --primary-lightness: 73%; - - /* These are automatically computed unless you need to overwrite them */ - --primary: hsl(var(--primary-hue), var(--primary-saturation), var(--primary-lightness)); - --primary-10: hsl(var(--primary-hue), var(--primary-saturation), 10%); - --primary-20: hsl(var(--primary-hue), var(--primary-saturation), 20%); - --primary-30: hsl(var(--primary-hue), var(--primary-saturation), 30%); - --primary-40: hsl(var(--primary-hue), var(--primary-saturation), 40%); - --primary-50: hsl(var(--primary-hue), var(--primary-saturation), 50%); - --primary-60: hsl(var(--primary-hue), var(--primary-saturation), 60%); - --primary-70: hsl(var(--primary-hue), var(--primary-saturation), 70%); - --primary-80: hsl(var(--primary-hue), var(--primary-saturation), 80%); - --primary-90: hsl(var(--primary-hue), var(--primary-saturation), 90%); - - --overlay-10: hsla(var(--primary-hue), var(--primary-saturation), 90%, 10%); -} - -.is-success { - --primary-hue: 158; - --primary-saturation: 72%; - --primary-lightness: 42%; - - /* These are automatically computed unless you need to overwrite them */ - --primary: hsl(var(--primary-hue), var(--primary-saturation), var(--primary-lightness)); - --primary-10: hsl(var(--primary-hue), var(--primary-saturation), 10%); - --primary-20: hsl(var(--primary-hue), var(--primary-saturation), 20%); - --primary-30: hsl(var(--primary-hue), var(--primary-saturation), 30%); - --primary-40: hsl(var(--primary-hue), var(--primary-saturation), 40%); - --primary-50: hsl(var(--primary-hue), var(--primary-saturation), 50%); - --primary-60: hsl(var(--primary-hue), var(--primary-saturation), 60%); - --primary-70: hsl(var(--primary-hue), var(--primary-saturation), 70%); - --primary-80: hsl(var(--primary-hue), var(--primary-saturation), 80%); - --primary-90: hsl(var(--primary-hue), var(--primary-saturation), 90%); - - --overlay-10: hsla(var(--primary-hue), var(--primary-saturation), 90%, 10%); -} - -.is-warning { - --primary-hue: 5; - --primary-saturation: 100%; - --primary-lightness: 67%; - - /* These are automatically computed unless you need to overwrite them */ - --primary: hsl(var(--primary-hue), var(--primary-saturation), var(--primary-lightness)); - --primary-10: hsl(var(--primary-hue), var(--primary-saturation), 10%); - --primary-20: hsl(var(--primary-hue), var(--primary-saturation), 20%); - --primary-30: hsl(var(--primary-hue), var(--primary-saturation), 30%); - --primary-40: hsl(var(--primary-hue), var(--primary-saturation), 40%); - --primary-50: hsl(var(--primary-hue), var(--primary-saturation), 50%); - --primary-60: hsl(var(--primary-hue), var(--primary-saturation), 60%); - --primary-70: hsl(var(--primary-hue), var(--primary-saturation), 70%); - --primary-80: hsl(var(--primary-hue), var(--primary-saturation), 80%); - --primary-90: hsl(var(--primary-hue), var(--primary-saturation), 90%); - - --overlay-10: hsla(var(--primary-hue), var(--primary-saturation), 50%, 50%); -} - body { background-color: var(--background); color: var(--body-text); diff --git a/content/components/material-themed-cards/5/html.inc b/content/components/material-themed-cards/5/html.inc index 8a7e06aba..1adfe8dfa 100644 --- a/content/components/material-themed-cards/5/html.inc +++ b/content/components/material-themed-cards/5/html.inc @@ -48,7 +48,7 @@
-
+
@@ -88,7 +88,7 @@
-
+
-
+
@@ -193,4 +193,4 @@
- \ No newline at end of file + diff --git a/content/components/material-themed-cards/5/index.md b/content/components/material-themed-cards/5/index.md index 755cae79b..1e01f45cf 100644 --- a/content/components/material-themed-cards/5/index.md +++ b/content/components/material-themed-cards/5/index.md @@ -1,6 +1,6 @@ --- -title: "Making a full dashboard" +title: "Full dashboard" date: 2021-06-09T10:39:16+02:00 --- -This is a reproduction of the [monitoring dashboard](/page-templates/monitoring-dashboard) using the above components. We also use different base color for each row in this example, using the following css selectors: `is-info`, `is-warning`, `is-success`. +This is a reproduction of the [monitoring dashboard](/page-templates/monitoring-dashboard) using the above components. diff --git a/content/components/material-themed-cards/5/schema.md b/content/components/material-themed-cards/5/schema.md new file mode 100644 index 000000000..8840c014d --- /dev/null +++ b/content/components/material-themed-cards/5/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `monitoring-copy` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/monitoring-copy/table/) + +**Fields in use:** + +|dataset_id|timestamp|size_res|user_id|query_text|attributes|action|geo_coordinates| +|---|---|---|---|---|---|---|---| +|dataproviders-dataods|2021-11-06T21:39:37+00:00|4662|anonymous||page-home|search|50.0797,-125.5892| +|dataproviders-dataods|2021-12-07T15:13:02+00:00|4655|anonymous||page-home|search|12.9634,77.5855| +|dataproviders-dataods|2021-12-07T09:35:13+00:00|2796|anonymous||page-home|lookup|48.8582,2.3387| +|base-nationale-des-lieux-de-covoiturage-en-france|2021-12-06T17:23:24+00:00|0|anonymous||page-portail|geo|41.9199,8.7424| + diff --git a/content/components/material-themed-cards/6/css.inc b/content/components/material-themed-cards/6/css.inc new file mode 100644 index 000000000..c50d1b85d --- /dev/null +++ b/content/components/material-themed-cards/6/css.inc @@ -0,0 +1,544 @@ +:root { + --primary-hue: 36; + --primary-saturation: 94%; + --primary-lightness: 59%; + + --surface: hsl(200, 21%, 37%); + --background: hsl(198, 20%, 17%); + --card-text: white; + --body-text: white; + + /* These are automatically computed unless you need to overwrite them */ + --primary: hsl(var(--primary-hue), var(--primary-saturation), var(--primary-lightness)); + --primary-10: hsl(var(--primary-hue), var(--primary-saturation), 10%); + --primary-20: hsl(var(--primary-hue), var(--primary-saturation), 20%); + --primary-30: hsl(var(--primary-hue), var(--primary-saturation), 30%); + --primary-40: hsl(var(--primary-hue), var(--primary-saturation), 40%); + --primary-50: hsl(var(--primary-hue), var(--primary-saturation), 50%); + --primary-60: hsl(var(--primary-hue), var(--primary-saturation), 60%); + --primary-70: hsl(var(--primary-hue), var(--primary-saturation), 70%); + --primary-80: hsl(var(--primary-hue), var(--primary-saturation), 80%); + --primary-90: hsl(var(--primary-hue), var(--primary-saturation), 90%); + + --overlay-10: hsla(var(--primary-hue), var(--primary-saturation), 90%, 10%); +} + +.is-info { + --primary-hue: 194; + --primary-saturation: 100%; + --primary-lightness: 73%; + + /* These are automatically computed unless you need to overwrite them */ + --primary: hsl(var(--primary-hue), var(--primary-saturation), var(--primary-lightness)); + --primary-10: hsl(var(--primary-hue), var(--primary-saturation), 10%); + --primary-20: hsl(var(--primary-hue), var(--primary-saturation), 20%); + --primary-30: hsl(var(--primary-hue), var(--primary-saturation), 30%); + --primary-40: hsl(var(--primary-hue), var(--primary-saturation), 40%); + --primary-50: hsl(var(--primary-hue), var(--primary-saturation), 50%); + --primary-60: hsl(var(--primary-hue), var(--primary-saturation), 60%); + --primary-70: hsl(var(--primary-hue), var(--primary-saturation), 70%); + --primary-80: hsl(var(--primary-hue), var(--primary-saturation), 80%); + --primary-90: hsl(var(--primary-hue), var(--primary-saturation), 90%); + + --overlay-10: hsla(var(--primary-hue), var(--primary-saturation), 90%, 10%); +} + +.is-success { + --primary-hue: 158; + --primary-saturation: 72%; + --primary-lightness: 42%; + + /* These are automatically computed unless you need to overwrite them */ + --primary: hsl(var(--primary-hue), var(--primary-saturation), var(--primary-lightness)); + --primary-10: hsl(var(--primary-hue), var(--primary-saturation), 10%); + --primary-20: hsl(var(--primary-hue), var(--primary-saturation), 20%); + --primary-30: hsl(var(--primary-hue), var(--primary-saturation), 30%); + --primary-40: hsl(var(--primary-hue), var(--primary-saturation), 40%); + --primary-50: hsl(var(--primary-hue), var(--primary-saturation), 50%); + --primary-60: hsl(var(--primary-hue), var(--primary-saturation), 60%); + --primary-70: hsl(var(--primary-hue), var(--primary-saturation), 70%); + --primary-80: hsl(var(--primary-hue), var(--primary-saturation), 80%); + --primary-90: hsl(var(--primary-hue), var(--primary-saturation), 90%); + + --overlay-10: hsla(var(--primary-hue), var(--primary-saturation), 90%, 10%); +} + +.is-warning { + --primary-hue: 5; + --primary-saturation: 100%; + --primary-lightness: 67%; + + /* These are automatically computed unless you need to overwrite them */ + --primary: hsl(var(--primary-hue), var(--primary-saturation), var(--primary-lightness)); + --primary-10: hsl(var(--primary-hue), var(--primary-saturation), 10%); + --primary-20: hsl(var(--primary-hue), var(--primary-saturation), 20%); + --primary-30: hsl(var(--primary-hue), var(--primary-saturation), 30%); + --primary-40: hsl(var(--primary-hue), var(--primary-saturation), 40%); + --primary-50: hsl(var(--primary-hue), var(--primary-saturation), 50%); + --primary-60: hsl(var(--primary-hue), var(--primary-saturation), 60%); + --primary-70: hsl(var(--primary-hue), var(--primary-saturation), 70%); + --primary-80: hsl(var(--primary-hue), var(--primary-saturation), 80%); + --primary-90: hsl(var(--primary-hue), var(--primary-saturation), 90%); + + --overlay-10: hsla(var(--primary-hue), var(--primary-saturation), 50%, 50%); +} + +body { + background-color: var(--background); + color: var(--body-text); +} + +h1 { + color: var(--body-text); +} + +/* ODS Over-ride */ +.row > *:first-child { + margin-left: 0; +} + +.row > *:last-child { + margin-right: 0; +} + +.row { + display: flex; + justify-content: center; +} + +@media screen and (max-width: 992px) { + .row { + flex-direction: column; + } + + .row > *:not(:last-child) { + margin-bottom: 16px; + } +} + +.odswidget-select-button-label, +.odswidget-select-button, +.odswidget-select-input { + color: var(--card-text); +} + +.odswidget-select-dropdown-menu { + background-color: var(--surface); + border: 1px solid var(--overlay-10); +} + +.odswidget-select-dropdown-menu-item:hover { + background-color: var(--overlay-10); +} + +.odswidget-select-dropdown-item-close-icon { + color: var(--primary); +} + +.odswidget-select-input-container { + border: none; +} + +.odswidget-timerange__reset { + color: var(--primary); +} + +.odswidget-timerange__reset:hover { + color: var(--primary-80); +} + +.odswidgets-rd-container.rd-container + { + background: var(--surface); + border: 1px solid var(--overlay-10); +} + +.odswidgets-rd-container .rd-time-list { + background-color: var(--surface); + color: var(--card-text); +} + +.odswidgets-rd-container .rd-next, +.odswidgets-rd-container .rd-back { + background-color: var(--surface); + color: var(--card-text); +} + +.odswidgets-rd-container .rd-day-body:hover, +.odswidgets-rd-container .rd-day-selected, +.odswidgets-rd-container .rd-time-option:hover, +.odswidgets-rd-container .rd-time-selected +{ + background-color: var(--primary); +} + +.odswidget-charts { + margin: 0 -12px; +} + +.highcharts-halo { + fill: var(--primary) !important; +} + +.highcharts-root > * { + width: 100%; +} + +.highcharts-text-outline { + display: none; +} + +.highcharts-data-label text tspan { + fill: var(--card-text); +} + +.hide-y .highcharts-yaxis-grid path.highcharts-grid-line, +.hide-y .highcharts-yaxis-labels text, +.hide-y .highcharts-yaxis-labels span { + display: none !important; +} + +.hide-x .highcharts-xaxis-labels text, +.hide-x .highcharts-xaxis-labels span, +.hide-x .highcharts-xaxis tspan, +.hide-x .highcharts-axis.highcharts-xaxis path.highcharts-axis-line, +.hide-x .highcharts-xaxis-grid path.highcharts-grid-line, +.hide-x .highcharts-tick { + display: none !important; +} + +.hide-x-grid .highcharts-xaxis tspan, +.hide-x-grid .highcharts-axis.highcharts-xaxis path.highcharts-axis-line, +.hide-x-grid .highcharts-xaxis-grid path.highcharts-grid-line, +.hide-x-grid .highcharts-tick { + display: none !important; +} + +.y-values .highcharts-data-label:not(:first-child):not(:last-child) { + display: none; +} + +.y-values .highcharts-data-label:first-child, +.y-values .highcharts-data-label:last-child { + opacity: 1; + visibility: inherit; /* force the last child to be visible, as it can be hidden by highchart */ +} + +.mini-card .highcharts-point.highcharts-color-0 { + fill: var(--primary) !important; +} +.mini-card .highcharts-point.highcharts-color-1 { + fill: var(--primary-50) !important; +} +.mini-card .highcharts-point.highcharts-color-2 { + fill: var(--primary-40) !important; +} +.mini-card .highcharts-point.highcharts-color-3 { + fill: var(--primary-60) !important; +} +.mini-card .highcharts-point.highcharts-color-4 { + fill: var(--primary-30) !important; +} +.mini-card .highcharts-point.highcharts-color-5 { + fill: var(--primary-70) !important; +} +.mini-card .highcharts-point.highcharts-color-6 { + fill: var(--primary-20) !important; +} +.mini-card .highcharts-point.highcharts-color-7 { + fill: var(--primary-80) !important; +} +.mini-card .highcharts-point.highcharts-color-8 { + fill: var(--primary-10) !important; +} +.mini-card .highcharts-point.highcharts-color-9 { + fill: var(--primary-90) !important; +} +.mini-card .highcharts-color-0.highcharts-data-label-connector { + stroke: var(--primary) !important; +} +.mini-card .highcharts-color-1.highcharts-data-label-connector { + stroke: var(--primary-50) !important; +} +.mini-card .highcharts-color-2.highcharts-data-label-connector { + stroke: var(--primary-40) !important; +} +.mini-card .highcharts-color-3.highcharts-data-label-connector { + stroke: var(--primary-60) !important; +} +.mini-card .highcharts-color-4.highcharts-data-label-connector { + stroke: var(--primary-30) !important; +} +.mini-card .highcharts-color-5.highcharts-data-label-connector { + stroke: var(--primary-70) !important; +} +.mini-card .highcharts-color-6.highcharts-data-label-connector { + stroke: var(--primary-20) !important; +} +.mini-card .highcharts-color-7.highcharts-data-label-connector { + stroke: var(--primary-80) !important; +} +.mini-card .highcharts-color-8.highcharts-data-label-connector { + stroke: var(--primary-10) !important; +} +.mini-card .highcharts-color-9.highcharts-data-label-connector { + stroke: var(--primary-90) !important; +} + +.mini-card rect.highcharts-background { + fill: transparent !important; +} + +.mini-card text { + fill: var(--card-text) !important; + font-size: 13px !important; +} + +.mini-card .highcharts-grid-line { + stroke: var(--primary) !important; + stroke-dasharray: 2 2; +} + +.mini-card .highcharts-graph { + stroke: var(--primary) !important; +} + +.mini-card .highcharts-area { + fill: transparent !important; +} + +.mini-card .highcharts-legend { + display: none; +} + +.mini-card .highcharts-markers path { + fill: var(--primary) !important; +} + +.mini-card .highcharts-label-box:not(.highcharts-shadow) { + stroke: var(--primary) !important; +} + +.mini-card .highcharts-tooltip-container { + background: var(--background); + color: var(--body-text); +} + +.mini-card .highcharts-label span { + color: var(--card-text) !important; +} + +.mini-card .ods-highcharts__tooltip span { + color: var(--primary) !important; +} + +.mini-card .highcharts-point { + fill: var(--primary) !important; + stroke: transparent !important; + rx: 8px; +} + +.mini-card .highcharts-grid-line:not(:first-child):not(:last-child), +.mini-card .highcharts-yaxis-labels text:not(:first-child):not(:last-child) { + display: none; +} + +.mini-card .highcharts-xaxis-labels span { + color: var(--card-text) !important; + font-size: 13px !important;; +} + +/* Utilities */ +.z-depth-1 { + z-index: 1; + box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), + 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2); +} + +.z-depth-2 { + z-index: 2; + box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), + 0 2px 4px -1px rgba(0, 0, 0, 0.3); +} + +.row-sticky { + position: sticky; + top: 0; + z-index: 20; +} + +/* Elements */ +section { + padding: 0 16px; + margin: 16px 0; +} + +.title { + margin-bottom: 1em; +} + +.subtitle { + margin-top: -0.75em; +} + +h1.title { + font-size: 2.25rem; +} + +h2.title { + font-size: 1.5rem; +} + +h5.subtitle { + font-size: 1.25rem; + font-weight: 600; + margin: 0; +} + +/* Components */ +.menu { + display: flex; + justify-content: center; + align-items: stretch; + background: white; + border-radius: 999px; + padding: 0 16px; + margin-top: 16px; + background: var(--surface); + color: var(--card-text); +} + +@media screen and (max-width: 992px) { + .menu { + flex-direction: column; + width: 100%; + border-radius: 0; + margin: 0; + padding: 0; + } +} + +.filter { + display: flex; + flex: 1 1; + align-items: center; + justify-content: flex-end; + padding: 8px; +} + +.filter:not(:last-child) { + border-right: 1px solid lightgray; +} + +.filter .odswidget-select { + min-width: 220px; +} + +.filter > *:not(:last-child) { + margin-right: 8px; +} + +.filter .odswidget-timerange { + display: flex; +} + +.filter .odswidget-timerange__to, +.filter .odswidget-timerange__from { + display: flex; + justify-content: space-between; + margin-right: 16px; +} + +.filter .odswidget-timerange__label { + margin-right: 8px; +} + +.filter .odswidget-select-button, +.filter .odswidget-select-input { + padding: 8px; + border: none; + background: transparent; +} + +.filter .odswidget-select-button:hover { + border: none; +} + +.filter .odswidget-timerange__input { + border: none; + border-bottom: 1px solid; + background: var(--surface); + color: var(--card-text); +} + +.filter .odswidget-select-dropdown-menu { + top: 32px; +} + +@media screen and (max-width: 768px) { + .filter { + justify-content: center; + } + + .filter .odswidget-timerange { + flex-direction: column; + } + + .filter .odswidget-timerange__from { + margin-bottom: 2em; + } + + .filter:not(:last-child) { + width: 100%; + border-right: none; + border-bottom: 1px solid lightgray; + } +} + +.card { + background: var(--surface); + color: var(--card-text); + border-radius: 4px; + padding: 16px; + height: 100%; +} + +.card-head { + padding-bottom: 2rem; +} + +.card .title, +.card .subtitle { + color: var(--card-text); +} + +.data-table { + margin: 0 -16px; + color: var(--card-text); +} + +.data-table thead { + background: var(--overlay-10); + border-bottom: 1px solid var(--card-text); +} + +.data-table tr { + line-height: 32px; + position: relative; +} + +.data-table tr:hover { + background: var(--overlay-10); +} + +.data-table td, +.data-table th { + padding: 8px; + max-width: 265px; + overflow: hidden; + text-overflow: ellipsis; +} + +.data-table tbody tr:nth-child(-n + 3) * { + font-weight: 500; +} diff --git a/content/components/material-themed-cards/6/html.inc b/content/components/material-themed-cards/6/html.inc new file mode 100644 index 000000000..8a7e06aba --- /dev/null +++ b/content/components/material-themed-cards/6/html.inc @@ -0,0 +1,196 @@ + +
+
+

+ Company Data Hub's Analytics +

+

DISCLAIMER Lorem ipsum dolor sit amet, consectetur adipisicing elit. Commodi sint, sequi ratione + esse, officiis, aliquam quaerat perferendis mollitia laborum cumque molestiae aspernatur.

+

+ These Analytics are based on usages made on Company's data + portal. Contact Admin for any additional + questions. +

+ Access source + data + + Access Company's Data Hub +
+ +
+
+
+
+

+ Portal's activity. +

+

Count of daily API calls from {{ startDate|date:'longDate' }} to {{ + endDate|date:'longDate' }}.

+
+ + + + + + +
+
+
+
+
+

+ Users ranked by API calls +

+

Most active users by sum of all API calls, regardless of the nature of + the call.

+
+ + + + + + +
+
+
+
+
+ + {{ queries.parameters['q.timerange'] = stats.parameters['q.timerange'] ; '' }} + {{ queries.parameters['refine.dataset_id'] = stats.parameters['refine.dataset_id'] ; '' }} +
+
+

+ Most frequent queries +

+
+ + + + + + + + + + + + + + + +
RankRequestOccurrences
{{ i+1 }}{{ query.name }}{{ query.count }}
+
+
+
+
+
+
+
+
+

+ Most active pages +

+

Ranked by number of API calls

+
+ + + + + + +
+
+
+
+
+

+ Popular actions +

+

Ranked by number of API calls

+
+ + + + + + +
+
+
+
+
+
+
+

+ Origin of users on Company's Data Hub +

+
+ + + + + +
+
+
+
+
\ No newline at end of file diff --git a/content/components/material-themed-cards/6/index.md b/content/components/material-themed-cards/6/index.md new file mode 100644 index 000000000..a60270d0b --- /dev/null +++ b/content/components/material-themed-cards/6/index.md @@ -0,0 +1,7 @@ +--- +title: "Full dashboard with multiple primary colors" +date: 2021-06-09T10:39:16+02:00 +--- + +You can use multiple color theme on the same page by adding classes that redefines the same color variables as in `:root` (` --primary-hue, --primary-saturation` etc.) +. In this example, we add the following css class: `is-info`, `is-warning`, `is-success`. Then we apply them on `
` to give specific colors to sections. diff --git a/content/components/material-themed-cards/6/schema.md b/content/components/material-themed-cards/6/schema.md new file mode 100644 index 000000000..8840c014d --- /dev/null +++ b/content/components/material-themed-cards/6/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `monitoring-copy` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/monitoring-copy/table/) + +**Fields in use:** + +|dataset_id|timestamp|size_res|user_id|query_text|attributes|action|geo_coordinates| +|---|---|---|---|---|---|---|---| +|dataproviders-dataods|2021-11-06T21:39:37+00:00|4662|anonymous||page-home|search|50.0797,-125.5892| +|dataproviders-dataods|2021-12-07T15:13:02+00:00|4655|anonymous||page-home|search|12.9634,77.5855| +|dataproviders-dataods|2021-12-07T09:35:13+00:00|2796|anonymous||page-home|lookup|48.8582,2.3387| +|base-nationale-des-lieux-de-covoiturage-en-france|2021-12-06T17:23:24+00:00|0|anonymous||page-portail|geo|41.9199,8.7424| + diff --git a/content/components/search-module/1/html.inc b/content/components/search-module/1/html.inc index 6dda9b7d6..5b175d407 100644 --- a/content/components/search-module/1/html.inc +++ b/content/components/search-module/1/html.inc @@ -1,11 +1,12 @@
+
+ + +
+ + Search results will be displayed bellow, as a list of external links + +
    + +
  • +
    + {{item.com_arm_name }} ({{item.dep_code }}) + + Filter on the selected city +
    +
  • +
  • + More than 10 results. Continue typing to narrow your search... +
  • +
+
+ + +
+

+ {{ variables.selection }} +

+ +
+
+ + + + + + + + +
+ diff --git a/content/components/search-module/4/index.md b/content/components/search-module/4/index.md new file mode 100644 index 000000000..b823f9172 --- /dev/null +++ b/content/components/search-module/4/index.md @@ -0,0 +1,7 @@ +--- +title: "Search Bar to search on a specific field" +height: 750 +date: "2022-04-01" +--- + +The same search bar, with a dedicated feature to search on a specific field, thanks to the `#search` operator. \ No newline at end of file diff --git a/content/components/search-module/4/schema.md b/content/components/search-module/4/schema.md new file mode 100644 index 000000000..e922b8e79 --- /dev/null +++ b/content/components/search-module/4/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `demographyref-france-pop-active-sexe-activite-commune-millesime` [(See it on public domain)](https://public.huwise.com/explore/dataset/demographyref-france-pop-active-sexe-activite-commune-millesime/table/) + +**Fields in use:** + +|com_arm_code|com_arm_name|dep_code|geo_year|variable_label|value| +|---|---|---|---|---|---| +|77112|Chevrainvilliers|77|2017|Hommes Chômeurs|0.0| +|77119|Clos-Fontaine|77|2017|Hommes Actifs ayant un emploi|47.7217741935484| +|77129|Coulombs-En-Valois|77|2017|Hommes Actifs ayant un emploi|88.919381053595| +|77131|Coulommiers|77|2017|Hommes Actifs ayant un emploi|2055.885349748551| + diff --git a/content/components/search-module/index.md b/content/components/search-module/index.md index 1906073e7..ebb435198 100644 --- a/content/components/search-module/index.md +++ b/content/components/search-module/index.md @@ -2,6 +2,7 @@ title: "Search module" description: "This module is a stylised search bar with a modern look." tags: ["navigation"] +date: "2022-04-01" height: 240 resources: - src: '*/' diff --git a/content/components/sticky-header/2/html.inc b/content/components/sticky-header/2/html.inc index d80b45239..c72d5e86d 100644 --- a/content/components/sticky-header/2/html.inc +++ b/content/components/sticky-header/2/html.inc @@ -13,7 +13,7 @@ Number of records: {{ shanghairanking.dataset.metas.records_count | number }}
- + View
diff --git a/content/components/sticky-header/2/schema.md b/content/components/sticky-header/2/schema.md new file mode 100644 index 000000000..c44691c86 --- /dev/null +++ b/content/components/sticky-header/2/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `shanghai-world-university-ranking` [(See it on public domain)](https://public.huwise.com/explore/dataset/shanghai-world-university-ranking/table/) + +**Fields in use:** + +|country| +|---| +|United Kingdom| +|United States| +|United States| +|United States| + diff --git a/content/components/switch-toggle/5/css.inc b/content/components/switch-toggle/5/css.inc index 28395ac99..31dcc5ce5 100644 --- a/content/components/switch-toggle/5/css.inc +++ b/content/components/switch-toggle/5/css.inc @@ -1,162 +1,64 @@ -/* Content Card - ========================================================================== */ - -.content-card { - background-color: var(--boxes-background); - padding: 26px; - border-radius: 4px; - margin-bottom: 20px; - height: 100%; -} -.content-card-title { - color: var(--titles); - font-size: 1.2rem; - line-height: 1.5; - font-weight: normal; - margin-top: 0; - margin-bottom: 13px; - max-width: 100%; -} -.content-card-description { - color: var(--text); - font-size: 1rem; - line-height: 1.5; - font-weight: normal; - margin-top: 0; - margin-bottom: 26px; - max-width: 100%; -} -.content-card-icon { - color: var(--highlight); - font-size: 2rem; - margin-bottom: 13px; - max-width: 100%; -} -.content-card-link { - color: var(--links); - font-weight: bold; - transition: all .2s; - opacity: 1; - max-width: 100%; -} -.content-card-link:hover { - opacity: .7; - text-decoration: none; -} -.content-card-button { - color: var(--highlight); - border: 1px solid var(--highlight); - background: transparent; - display: inline-block; - text-align: center; - font-size: .867rem; - border-radius: 4px; - padding: .5rem 1.15rem; - text-decoration: none; - transition: all .2s; -} -.content-card-button:hover { - background-color: var(--highlight); - color: #FFFFFF; - text-decoration: none; -} - -.switch-container { - display: flex; - align-items: center; -} - -/* Button Group Switch - ========================================================================== */ - -.switch { - display: inline-block; - margin-bottom: 0; - margin-left: 0.5rem; -} - -.switch-button { - /* background and border when in "off" state */ - background: var(--highlight); - border: 2px solid var(--highlight); - display: grid; - grid-template-columns: 1fr 1fr; - border-radius: 6px; - color: #FFFFFF; - position: relative; - cursor: pointer; - outline: 0; - user-select: none; +/* Flat style +=============================================================================*/ +.flat-button { + font-size: 1rem; + color: var(--links); + border: 1px solid var(--links); + border-radius: 2rem; + background: #FFF; + padding: .37rem 1rem; + margin-right: 6px; } -.switch-input:not(:checked) + .switch-button .switch-button-left { - /* text color when in "off" state */ - color: var(--highlight); +.flat-button:hover { + opacity: 0.65; } -.switch-input { - display: none; +.flat-button-active { + background-color: var(--links); + color: #FFF; } -.switch-button span { +/* Press style +=============================================================================*/ +.press-button { font-size: 1rem; - padding: 0.2rem .7rem; - text-align: center; - z-index: 2; - color: #FFFFFF; - transition: color .2s; -} - -.switch-button::before { - content: ''; - position: absolute; - background-color: #FFFFFF; - box-shadow: 0 1px 3px rgba(0,0,0,.4); - border-radius: 4px; - top: 0; - left: 0; - height: 100%; - width: 50%; - z-index: 1; - transition: left .3s cubic-bezier(0.175, 0.885, 0.320, 1), - padding .2s ease, margin .2s ease; + color: var(--links); + border: 1px solid var(--links); + border-radius: 2rem; + background: #FFF; + padding: .37rem 1rem; + border-bottom-width: 6px; } -.switch-button:hover::before { - will-change: padding; +.press-button:hover { + opacity: 0.65; } -.switch-button:active::before { - padding-right: .4rem; +.press-button-active { + margin-top: 3px; + border-bottom-width: 3px; } - -/* "On" state - ========================== */ - -.switch-input:checked + .switch-button { - /* background and border when in "on" state */ - background-color: var(--links); - border-color: var(--links); +/* Shadow style +=============================================================================*/ +.shadow-button { + font-size: 1rem; + background: rgb(0, 136, 204); + background: linear-gradient(0deg, rgba(0, 136, 204, 1) 0%, rgba(6, 168, 249, 1) 100%); + color: #FFF; + border: 1px solid var(--links); + border-radius: 2rem; + padding: .37rem 1rem; } -.switch-input:checked + .switch-button .switch-button-right { - /* text color when in "on" state */ - color: var(--links); +.shadow-button-active { + background-color: rgba(0, 136, 204, 1); + box-shadow: -1px 2px 10px 3px rgba(0, 0, 0, 0.3) inset; + padding-top: .47rem; + padding-bottom: .27rem; } -.switch-input:checked + .switch-button::before { - left: 50%; -} -.switch-input:checked + .switch-button:active::before { - margin-left: -.4rem; -} -/* Checkbox in disabled state - ========================== */ -.switch-input[type="checkbox"]:disabled + .switch-button { - opacity: 0.6; - cursor: not-allowed; -} diff --git a/content/components/switch-toggle/5/html.inc b/content/components/switch-toggle/5/html.inc index 0d367dcd1..7cf19773b 100644 --- a/content/components/switch-toggle/5/html.inc +++ b/content/components/switch-toggle/5/html.inc @@ -1,45 +1,34 @@ -
-
-
-

- France departments -

-

- Cardano could be many technical analysis since Nexo data mining a fundamental analysis. -

-

- Ravencoin generates a amazing fish of lots of market cap, and Waves serves many quick anti-money laundering! Solidity allowed lots of fast peer-to-peer network. -

-
- View : - -
-
-
- -
- -
-
- -
-
-
+
+
+

+ Flat style {{ flatbutton.active ? 'On' : 'Off' }} +

+
-
+ +
+

+ Press style {{ pressbutton.active ? 'On' : 'Off' }} +

+ +
+ +
+

+ Gradient and shadow style {{ shadowbutton.active ? 'On' : 'Off' }} +

+ +
+
\ No newline at end of file diff --git a/content/components/switch-toggle/5/index.md b/content/components/switch-toggle/5/index.md index c853ed01f..ca36de19b 100644 --- a/content/components/switch-toggle/5/index.md +++ b/content/components/switch-toggle/5/index.md @@ -1,6 +1,7 @@ --- -title: "Simple example" -height: 550 +title: "Active/inactive style" +date: 2022-01-25 +height: 180 --- -A simple usecase to show how this component can be used in your pages. +Toggle button to highlight an active or inactive state. diff --git a/content/components/switch-toggle/6/css.inc b/content/components/switch-toggle/6/css.inc new file mode 100644 index 000000000..28395ac99 --- /dev/null +++ b/content/components/switch-toggle/6/css.inc @@ -0,0 +1,162 @@ +/* Content Card + ========================================================================== */ + +.content-card { + background-color: var(--boxes-background); + padding: 26px; + border-radius: 4px; + margin-bottom: 20px; + height: 100%; +} +.content-card-title { + color: var(--titles); + font-size: 1.2rem; + line-height: 1.5; + font-weight: normal; + margin-top: 0; + margin-bottom: 13px; + max-width: 100%; +} +.content-card-description { + color: var(--text); + font-size: 1rem; + line-height: 1.5; + font-weight: normal; + margin-top: 0; + margin-bottom: 26px; + max-width: 100%; +} +.content-card-icon { + color: var(--highlight); + font-size: 2rem; + margin-bottom: 13px; + max-width: 100%; +} +.content-card-link { + color: var(--links); + font-weight: bold; + transition: all .2s; + opacity: 1; + max-width: 100%; +} +.content-card-link:hover { + opacity: .7; + text-decoration: none; +} +.content-card-button { + color: var(--highlight); + border: 1px solid var(--highlight); + background: transparent; + display: inline-block; + text-align: center; + font-size: .867rem; + border-radius: 4px; + padding: .5rem 1.15rem; + text-decoration: none; + transition: all .2s; +} +.content-card-button:hover { + background-color: var(--highlight); + color: #FFFFFF; + text-decoration: none; +} + +.switch-container { + display: flex; + align-items: center; +} + +/* Button Group Switch + ========================================================================== */ + +.switch { + display: inline-block; + margin-bottom: 0; + margin-left: 0.5rem; +} + +.switch-button { + /* background and border when in "off" state */ + background: var(--highlight); + border: 2px solid var(--highlight); + display: grid; + grid-template-columns: 1fr 1fr; + border-radius: 6px; + color: #FFFFFF; + position: relative; + cursor: pointer; + outline: 0; + user-select: none; +} + +.switch-input:not(:checked) + .switch-button .switch-button-left { + /* text color when in "off" state */ + color: var(--highlight); +} + +.switch-input { + display: none; +} + +.switch-button span { + font-size: 1rem; + padding: 0.2rem .7rem; + text-align: center; + z-index: 2; + color: #FFFFFF; + transition: color .2s; +} + +.switch-button::before { + content: ''; + position: absolute; + background-color: #FFFFFF; + box-shadow: 0 1px 3px rgba(0,0,0,.4); + border-radius: 4px; + top: 0; + left: 0; + height: 100%; + width: 50%; + z-index: 1; + transition: left .3s cubic-bezier(0.175, 0.885, 0.320, 1), + padding .2s ease, margin .2s ease; +} + +.switch-button:hover::before { + will-change: padding; +} + +.switch-button:active::before { + padding-right: .4rem; +} + + +/* "On" state + ========================== */ + +.switch-input:checked + .switch-button { + /* background and border when in "on" state */ + background-color: var(--links); + border-color: var(--links); +} + +.switch-input:checked + .switch-button .switch-button-right { + /* text color when in "on" state */ + color: var(--links); +} + +.switch-input:checked + .switch-button::before { + left: 50%; +} + +.switch-input:checked + .switch-button:active::before { + margin-left: -.4rem; +} + +/* Checkbox in disabled state + ========================== */ + +.switch-input[type="checkbox"]:disabled + .switch-button { + opacity: 0.6; + cursor: not-allowed; +} diff --git a/content/components/switch-toggle/6/html.inc b/content/components/switch-toggle/6/html.inc new file mode 100644 index 000000000..0d367dcd1 --- /dev/null +++ b/content/components/switch-toggle/6/html.inc @@ -0,0 +1,45 @@ +
+
+
+

+ France departments +

+

+ Cardano could be many technical analysis since Nexo data mining a fundamental analysis. +

+

+ Ravencoin generates a amazing fish of lots of market cap, and Waves serves many quick anti-money laundering! Solidity allowed lots of fast peer-to-peer network. +

+
+ View : + +
+
+
+ +
+ +
+
+ +
+
+
+
+
diff --git a/content/components/switch-toggle/6/index.md b/content/components/switch-toggle/6/index.md new file mode 100644 index 000000000..c853ed01f --- /dev/null +++ b/content/components/switch-toggle/6/index.md @@ -0,0 +1,6 @@ +--- +title: "Simple example" +height: 550 +--- + +A simple usecase to show how this component can be used in your pages. diff --git a/content/components/switch-toggle/index.md b/content/components/switch-toggle/index.md index 1da274ea8..7db55b793 100644 --- a/content/components/switch-toggle/index.md +++ b/content/components/switch-toggle/index.md @@ -1,5 +1,6 @@ --- title: "Switch Module" +date: 2022-01-25 description: "A switch is a visual toggle between two mutually exclusive states — on and off." tags: ["display"] height: 120 diff --git a/content/components/table-module/1/schema.md b/content/components/table-module/1/schema.md new file mode 100644 index 000000000..09ae0e8ed --- /dev/null +++ b/content/components/table-module/1/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `population-millesimee-communes-2016` [(See it on public domain)](https://public.huwise.com/explore/dataset/population-millesimee-communes-2016/table/) + +**Fields in use:** + +|nom_de_la_commune|population_totale|code_commune|nom_de_la_region| +|---|---|---|---| +|Créon|4711|140|Nouvelle-Aquitaine| +|Flachères|525|167|Auvergne-Rhône-Alpes| +|Boissia|128|061|Bourgogne-Franche-Comté| +|Labouheyre|2779|134|Nouvelle-Aquitaine| + diff --git a/content/components/table-module/2/schema.md b/content/components/table-module/2/schema.md new file mode 100644 index 000000000..c59674760 --- /dev/null +++ b/content/components/table-module/2/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `population-millesimee-communes-2016` [(See it on public domain)](https://public.huwise.com/explore/dataset/population-millesimee-communes-2016/table/) + +**Fields in use:** + +|nom_de_la_commune|population_totale|code_commune|nom_de_la_region|annee_recensement|superficie|code_region|code_departement| +|---|---|---|---|---|---|---|---| +|Créon|4711|140|Nouvelle-Aquitaine|2016|8.01|75|33| +|Flachères|525|167|Auvergne-Rhône-Alpes|2016|4.91|84|38| +|Boissia|128|061|Bourgogne-Franche-Comté|2016|5.87|27|39| +|Labouheyre|2779|134|Nouvelle-Aquitaine|2016|36.41|75|40| + diff --git a/content/components/table-module/3/schema.md b/content/components/table-module/3/schema.md new file mode 100644 index 000000000..09ae0e8ed --- /dev/null +++ b/content/components/table-module/3/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `population-millesimee-communes-2016` [(See it on public domain)](https://public.huwise.com/explore/dataset/population-millesimee-communes-2016/table/) + +**Fields in use:** + +|nom_de_la_commune|population_totale|code_commune|nom_de_la_region| +|---|---|---|---| +|Créon|4711|140|Nouvelle-Aquitaine| +|Flachères|525|167|Auvergne-Rhône-Alpes| +|Boissia|128|061|Bourgogne-Franche-Comté| +|Labouheyre|2779|134|Nouvelle-Aquitaine| + diff --git a/content/components/table-module/4/schema.md b/content/components/table-module/4/schema.md new file mode 100644 index 000000000..c59674760 --- /dev/null +++ b/content/components/table-module/4/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `population-millesimee-communes-2016` [(See it on public domain)](https://public.huwise.com/explore/dataset/population-millesimee-communes-2016/table/) + +**Fields in use:** + +|nom_de_la_commune|population_totale|code_commune|nom_de_la_region|annee_recensement|superficie|code_region|code_departement| +|---|---|---|---|---|---|---|---| +|Créon|4711|140|Nouvelle-Aquitaine|2016|8.01|75|33| +|Flachères|525|167|Auvergne-Rhône-Alpes|2016|4.91|84|38| +|Boissia|128|061|Bourgogne-Franche-Comté|2016|5.87|27|39| +|Labouheyre|2779|134|Nouvelle-Aquitaine|2016|36.41|75|40| + diff --git a/content/custom-views/custom-view-generator/1/config.inc b/content/custom-views/custom-view-generator/1/config.inc index 4a04e1368..731e4c7cb 100644 --- a/content/custom-views/custom-view-generator/1/config.inc +++ b/content/custom-views/custom-view-generator/1/config.inc @@ -4,11 +4,11 @@ fieldDefaultRangeStartsNow = true; view = 'cards'; - fieldsList = ['powered_by','description_en']; + fieldsList = ['purpose','description_en']; fieldLink = 'reference_url'; fieldLinkLabel = 'See it live'; - cardTitle = 'name_of_the_initiative_en'; + cardTitle = 'name_of_the_initiative'; fieldPhoto = ''; imagePosition = 'left'; itemsPerRow = '2'; diff --git a/content/custom-views/custom-view-generator/1/index.md b/content/custom-views/custom-view-generator/1/index.md index 3574c2682..a4fc53e4b 100644 --- a/content/custom-views/custom-view-generator/1/index.md +++ b/content/custom-views/custom-view-generator/1/index.md @@ -3,7 +3,7 @@ title: "Automated listing visualization in custom views" type: "generators" date: "2021-03-12T00:00:00+01:00" height: 750 -external_url: https://userclub.opendatasoft.com/explore/dataset/custom-view-generator-demo/generator/ +external_url: https://userclub.huwise.com/explore/dataset/custom-view-generator-demo/generator/ domainid: userclub datasetid: custom-view-generator-demo --- diff --git a/content/custom-views/custom-view-generator/1/schema.md b/content/custom-views/custom-view-generator/1/schema.md new file mode 100644 index 000000000..1ce0a8096 --- /dev/null +++ b/content/custom-views/custom-view-generator/1/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `custom-view-generator-demo` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/custom-view-generator-demo/table/) + +**Fields in use:** + +|purpose|description_en|reference_url|name_of_the_initiative|language|country| +|---|---|---|---|---|---| +|Efficiency|This page allows citizens to analyse the region's energy consumption. It's divided into electricity, natural gas and diesel supplies.|https://analisis.datosabiertos.jcyl.es/pages/eren/||Spanish|Spain| +|Transparency|Map displaying the locations of the various Covid-19 Testing Centers in Jersey City as well as other useful information and how to reach tthem.|https://data.jerseycitynj.gov/pages/covid19-testing-centers/||English|United States of America| +|Attractivity|Heatmap highlighting data on hourly traffic in areas with public WiFi, where traffic means how many devices have entered the area every hour of the day.|https://opendata.comune.bologna.it/explore/dataset/iperbole-wifi-affluenza/custom/||Italian|Italy| +|Attractivity|You just arrived or you live in Salinas and you need to identify the closest school for your children? Here is a map with dedicated filters in English and Spanish to find the school in two clicks.|https://cityofsalinas.huwise.com/pages/school-map/||English|United States of America| + diff --git a/content/custom-views/custom-view-generator/posthtml.inc b/content/custom-views/custom-view-generator/posthtml.inc index 1df92a6e9..c10f35100 100644 --- a/content/custom-views/custom-view-generator/posthtml.inc +++ b/content/custom-views/custom-view-generator/posthtml.inc @@ -69,7 +69,7 @@ Available functions are SUM, AVG, COUNT, STD, MAX, MIN. Please see the documentation for more information - https://help.opendatasoft.com/widgets/#/api/ods-widgets.directive:odsAggregation + https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsAggregation Please see all available icons here https://fontawesome.com/v4.7.0/icons/ diff --git a/content/custom-views/domain-dataset/1/index.md b/content/custom-views/domain-dataset/1/index.md index 34a763c54..99da3afc8 100644 --- a/content/custom-views/domain-dataset/1/index.md +++ b/content/custom-views/domain-dataset/1/index.md @@ -5,7 +5,7 @@ domainid: "userclub" datasetid: "domaindatasets" --- -This custom view will help you create an overview of all the datasets on your domain. See the [user guide](https://help.opendatasoft.com/platform/fr/publishing_data/04_configuring_a_source/connectors/dataset_of_datasets.html#creation) to set up this special dataset. +This custom view will help you create an overview of all the datasets on your domain. See the [user guide](https://help.huwise.com/platform/en/publishing_data/01_creating_a_dataset/connectors/dataset_of_datasets.html) to set up this special dataset. For this view to properly function, you need to activate these options on the extractor: @@ -26,5 +26,5 @@ You also need to set up a _Replace text_ processor with the field _Publishing Pr ![processor setup](processor.png) -See this resource live [here](https://userclub.opendatasoft.com/explore/dataset/domaindatasets/custom/?sort=modified). (Note: +See this resource live [here](https://userclub.huwise.com/explore/dataset/domaindatasets/custom/?sort=modified). (Note: we made this page public for the sake of example, but it is most likely a private view). diff --git a/content/custom-views/domain-dataset/1/schema.md b/content/custom-views/domain-dataset/1/schema.md new file mode 100644 index 000000000..ef281b9cc --- /dev/null +++ b/content/custom-views/domain-dataset/1/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `domaindatasets` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/domaindatasets/table/) + +**Fields in use:** + +|visibility|publishing_properties|theme|publisher|dataset_id|explore_popularity_score| +|---|---|---|---|---|---| +|restricted|manual|||airbnb-listings|0.3| +|domain|federated|Academy|Commission européenne|rapex-rapid-alert-system-for-dangerous-non-food-products|0.4| +|restricted|scheduled|Usages|CSM OpenDataSoft|interesting-use-cases|0.6| +|domain|federated|Academy|ODS Data Team|times-person-of-the-year-1927-present|1.5| + diff --git a/content/custom-views/domain-dataset/index.md b/content/custom-views/domain-dataset/index.md index 14f94c666..515b0a0b5 100644 --- a/content/custom-views/domain-dataset/index.md +++ b/content/custom-views/domain-dataset/index.md @@ -7,4 +7,4 @@ resources: title: "Section #:counter" --- -_This resource is intended to be used as custom view inside your catalog, where the dataset context is always named `ctx` and doesn't require any `ods-dataset-context` widget. Read the [user's guide section](https://help.opendatasoft.com/platform/en/publishing_data/07_configuring_visualizations/06_configuring_custom_view/custom.html#configuring-the-custom-view) about custom views for details_. +_This resource is intended to be used as custom view inside your catalog, where the dataset context is always named `ctx` and doesn't require any `ods-dataset-context` widget. Read the [user's guide section](https://help.huwise.com/platform/en/publishing_data/07_configuring_visualizations/06_configuring_custom_view/custom.html#configuring-the-custom-view) about custom views for details_. diff --git a/content/custom-views/eco-compteur/1/css.inc b/content/custom-views/eco-compteur/1/css.inc new file mode 100644 index 000000000..ebf6071d8 --- /dev/null +++ b/content/custom-views/eco-compteur/1/css.inc @@ -0,0 +1,583 @@ +:root { + --main-color: var(--section-titles); + --secondary-color: var(--highlight); + --bg-color: var(--section-titles-background); + --menu-text-color: var(--text); + --menu-bg-color: white; + --menu-button-bg-color: var(--highlight); + --menu-button-text-color: white; +} + +/* Remove custom view padding */ +.ods-tabs__pane.ods-tabs__pane--horizontal { + padding: 0; +} + +/* Subheader +========================================================================== */ +.subheader-wrapper { + background-color: var(--menu-bg-color); + position: sticky; + top: 0; + left: 0; + right: 0; + z-index: 90; +} + +.subheader { + color: var(--menu-text-color); + padding-top: 1.5rem; + padding-bottom: 1.5rem; + box-shadow: 0 10px 12px -8px #bec2d5; +} + +@media screen and (min-width: 992px) { + .subheader { + flex-direction: row; + align-items: center; + } +} +.subheader-top { + display: flex; + align-items: center; + justify-content: space-between; +} + +.subheader-button { + padding: 0.5rem 2.5rem; + font-weight: bold; + background-repeat: no-repeat; + background-position: right 0.7rem top 50%, 0 0; + background-size: 19px; +} + +.subheader-button-active { + color: #000000; + background-color: #D3AA25; + background-image: url("/assets/theme_image/icon-close-panel.svg"); +} + +.subheader-panel { + background-color: var(--menu-button-bg-color); + z-index: 1; + width: 100%; + box-shadow: 0 5px 14px black; + max-height: calc(100vh - 100px); + overflow: auto; +} + +.subheader-panel-wrapper { + padding: 45px 0; + color: var(--menu-text-color); + display: flex; + gap: 10px; + flex-direction: column; +} + +@media screen and (min-width: 767px) { + .subheader-panel-wrapper { + flex-direction: row; + align-items: stretch; + justify-content: space-between; + } +} +.subheader-panel-item { + color: var(--menu-button-text-color); +} +@media (min-width: 992px) { + .subheader-panel-item.carte { + flex: 3; + } +} +@media (min-width: 767px) { + .subheader-panel-item.carte { + flex: 2; + } +} +@media (min-width: 767px) { + .subheader-panel-item.detail-capteur { + flex: 1; + } +} + +.subheader-panel-flex { + display: flex; + gap: 10px; + align-items: baseline; + justify-content: space-between; + margin-bottom: 20px; +} + +.subheader-panel-flex h3 { + margin: 0; +} + +.subheader-panel-flex-right { + display: flex; + flex-wrap: wrap; + gap: 10px; + align-items: center; +} +.subheader-panel-flex-right button { + height: 31px; +} + +@media screen and (min-width: 767px) { + .subheader-separator { + display: block; + flex: 0 0 auto; + width: 1px; + background-color: rgba(255, 255, 255, 0.26); + } +} + +.subheader-title { + font-size: 1.375rem; + font-weight: bold; + margin-bottom: 1.5rem; + color: var(--menu-button-text-color); + text-transform: uppercase; +} + +.subheader-timerange { + text-align: left; + display: flex; + flex-direction: column; + align-items: flex-start; +} + +.subheader-timerange .odswidget-timerange__input { + background-color: transparent; + color: white; + border-radius: 0; + border-color: #D3AA25; +} + +.subheader-select { + width: min(230px, 100%); + padding: 5px; +} + +.subheader-text { + color: var(--menu-text-color); +} + +.subheader-info { + color: var(--menu-text-color); + text-transform: uppercase; + font-weight: bold; + font-style: italic; + font-size: 1.1em; +} + +.subheader-panel .odswidget-date-range-slider .irs--flat .irs-from, +.subheader-panel .odswidget-date-range-slider .irs--flat .irs-single, +.subheader-panel .odswidget-date-range-slider .irs--flat .irs-to { + background-color: var(--main-color); +} + +.subheader-panel .irs--flat .irs-from, +.subheader-panel .irs--flat .irs-to, +.subheader-panel .irs--flat .irs-single { + color: var(--menu-button-bg-color); +} + +.subheader-panel .odswidget-date-range-slider .irs--flat .irs-bar { + background-color: var(--menu-button-bg-color); +} + +.subheader-panel .odswidget-date-range-slider .irs--flat .irs-from:before, +.subheader-panel .odswidget-date-range-slider .irs--flat .irs-single:before, +.subheader-panel .odswidget-date-range-slider .irs--flat .irs-to:before { + border-top-color: var(--menu-button-bg-color); +} + +.subheader-panel .odswidget-date-range-slider .irs--flat .irs-handle > i:first-child { + background-color: var(--menu-button-bg-color); +} + +.subheader-panel .odswidget.odswidget-date-range-slider { + margin: 0 50px 10px; +} + +/* Buttons +========================================================================== */ +.subheader-button { + display: inline-block; + text-decoration: none; + cursor: pointer; + font-size: 1.1rem; + font-weight: normal; + color: var(--menu-button-bg-color); + background-color: var(--menu-button-text-color); + border: 1px solid var(--menu-button-bg-color); + padding: 0.3rem 1.5rem; + border-radius: 0px; + transition: all 0.2s; +} + +.subheader-button-active { + color: var(--menu-button-text-color); + background-color: var(--menu-button-bg-color); + border: 1px solid var(--menu-button-text-color); + text-decoration: none; +} + +.subheader-button:hover { + opacity: 0.65; +} + +.subheader-button-large { + padding: 0.5rem 2rem; +} + +/* Detail capteur */ +.detail-capteur-content dt { + font-weight: 200; +} +.detail-capteur-content dd { + font-weight: 500; + margin-left: 1.5rem; +} +.detail-capteur-content img { + border: 2px solid var(--menu-button-text-color); + max-height: 200px; + object-fit: cover; +} + +/* Section elements +========================================================================== */ +.page-section { + padding: 4.5rem 1.5rem; + background: linear-gradient(180deg, white, #fcfcff); +} +.page-section.bg-white { + background: white; +} + +/* Map */ +#dot-icon path { + stroke: black; +} + +/* Indicateur */ +h2.indicateur { + padding: 4px 4px 4px 15px; + margin-top: 40px; + margin-bottom: 20px; + font-size: 2.5rem; + width: calc(100% + 20px); + color: var(--main-color); + background: var(--bg-color); +} + +h2.indicateur .label { + font-size: 1.5rem; + font-weight: 400; +} + +h2.indicateur ~ p { + font-size: 1.2rem; + margin-bottom: 15px; +} + +.sous-indicateur { + margin-bottom: 30px; + border-left: solid 4px var(--main-color); +} + +.sous-indicateur h3, .sous-indicateur p { + padding-left: 10px; +} + +.sous-indicateur h3 { + font-size: 1.5rem; +} + +.sous-indicateur p { + font-size: 1.2rem; +} + +.indicateur-box { + padding: 4px; + background: var(--bg-color); +} + +section:nth-child(even) h2.indicateur { + width: 100%; + margin-left: -20px; + padding-left: 20px; +} +@media screen and (max-width: 1169px) { + section:nth-child(even) .row { + display: flex; + flex-direction: column-reverse; + } +} +@media screen and (max-width: 1169px) { + section:nth-child(odd) h2.indicateur { + width: 100%; + } +} +@media screen and (max-width: 1169px) { + section:nth-child(even) h2.indicateur { + margin-left: 0; + } +} + +/** +* License: MIT License +* Generated on 26 May 2021 +* Author: Fpassaniti for Huwise +* Version: 0.1 +* Description: ods-chart CUSTOM CSS LIBRARY. Go to http://codelibrary.huwise.com/widget-tricks/ods-chart-css/ for more information (doc & examples). +*/ +.extralarge-y-values .highcharts-yaxis-labels text, .large-y-values .highcharts-yaxis-labels text { + transform: translate(0, 4px); +} + +.hide-chart-legend .highcharts-legend-item span, .hide-chart-series .highcharts-series path.highcharts-graph, .hide-chart-series .highcharts-series rect, .hide-data-values .highcharts-data-label tspan, .hide-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .hide-tooltip-text .ods-highcharts__tooltip span, .hide-x-axisline .highcharts-axis.highcharts-xaxis path.highcharts-axis-line, .hide-x-axisline-ticks .highcharts-axis.highcharts-xaxis path.highcharts-tick, .hide-x-gridline .highcharts-xaxis-grid path.highcharts-grid-line, .hide-x-legend .highcharts-xaxis tspan, .hide-x-values .highcharts-xaxis-labels span, .hide-x-values .highcharts-xaxis-labels text, .hide-y-axisline .highcharts-axis.highcharts-yaxis path.highcharts-axis-line, .hide-y-gridline .highcharts-yaxis-grid path.highcharts-grid-line, .hide-y-legend .highcharts-yaxis tspan, .hide-y-values .highcharts-yaxis-labels span, .hide-y-values .highcharts-yaxis-labels text, .name-tooltip-value .ods-highcharts__tooltip b { + display: none !important; +} + +.highcharts-axis tspan, .highcharts-data-label tspan, .highcharts-label span, .highcharts-legend-item span, .highcharts-xaxis-labels text, .highcharts-yaxis-labels text { + font-family: Gotham-book, Arial, sans-serif !important; +} + +.name-tooltip-value .ods-highcharts__tooltip b, .small-chart-legend .highcharts-legend-item span, .small-data-values .highcharts-data-label tspan, .small-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .small-tooltip-text .ods-highcharts__tooltip span, .small-x-legend .highcharts-xaxis tspan, .small-x-values .highcharts-xaxis-labels span, .small-x-values .highcharts-xaxis-labels text, .small-y-legend .highcharts-yaxis tspan, .small-y-values .highcharts-yaxis-labels span, .small-y-values .highcharts-yaxis-labels text { + font-size: 12px !important; +} + +.medium-chart-legend .highcharts-legend-item span, .medium-data-values .highcharts-data-label tspan, .medium-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .medium-tooltip-text .ods-highcharts__tooltip span, .medium-x-legend .highcharts-xaxis tspan, .medium-x-values .highcharts-xaxis-labels span, .medium-x-values .highcharts-xaxis-labels text, .medium-y-legend .highcharts-yaxis tspan, .medium-y-values .highcharts-yaxis-labels span, .medium-y-values .highcharts-yaxis-labels text, .name-tooltip-value .ods-highcharts__tooltip b { + font-size: 14px !important; +} + +.large-chart-legend .highcharts-legend-item span, .large-data-values .highcharts-data-label tspan, .large-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .large-tooltip-text .ods-highcharts__tooltip span, .large-x-legend .highcharts-xaxis tspan, .large-x-values .highcharts-xaxis-labels span, .large-x-values .highcharts-xaxis-labels text, .large-y-legend .highcharts-yaxis tspan, .large-y-values .highcharts-yaxis-labels span, .large-y-values .highcharts-yaxis-labels text, .name-tooltip-value .ods-highcharts__tooltip b { + font-size: 16px !important; +} + +.extralarge-chart-legend .highcharts-legend-item span, .extralarge-data-values .highcharts-data-label tspan, .extralarge-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .extralarge-tooltip-text .ods-highcharts__tooltip span, .extralarge-x-legend .highcharts-xaxis tspan, .extralarge-x-values .highcharts-xaxis-labels span, .extralarge-x-values .highcharts-xaxis-labels text, .extralarge-y-legend .highcharts-yaxis tspan, .extralarge-y-values .highcharts-yaxis-labels span, .extralarge-y-values .highcharts-yaxis-labels text, .name-tooltip-value .ods-highcharts__tooltip b { + font-size: 18px !important; +} + +.light-chart-legend .highcharts-legend-item span, .light-data-values .highcharts-data-label tspan, .light-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .light-tooltip-text .ods-highcharts__tooltip span, .light-x-legend .highcharts-xaxis tspan, .light-x-values .highcharts-xaxis-labels span, .light-x-values .highcharts-xaxis-labels text, .light-y-legend .highcharts-yaxis tspan, .light-y-values .highcharts-yaxis-labels span, .light-y-values .highcharts-yaxis-labels text, .name-tooltip-value .ods-highcharts__tooltip b { + font-weight: 100 !important; +} + +.name-tooltip-value .ods-highcharts__tooltip b, .normal-chart-legend .highcharts-legend-item span, .normal-data-values .highcharts-data-label tspan, .normal-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .normal-tooltip-text .ods-highcharts__tooltip span, .normal-x-legend .highcharts-xaxis tspan, .normal-x-values .highcharts-xaxis-labels span, .normal-x-values .highcharts-xaxis-labels text, .normal-y-legend .highcharts-yaxis tspan, .normal-y-values .highcharts-yaxis-labels span, .normal-y-values .highcharts-yaxis-labels text { + font-weight: 400 !important; +} + +.bold-chart-legend .highcharts-legend-item span, .bold-data-values .highcharts-data-label tspan, .bold-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .bold-tooltip-text .ods-highcharts__tooltip span, .bold-x-legend .highcharts-xaxis tspan, .bold-x-values .highcharts-xaxis-labels span, .bold-x-values .highcharts-xaxis-labels text, .bold-y-legend .highcharts-yaxis tspan, .bold-y-values .highcharts-yaxis-labels span, .bold-y-values .highcharts-yaxis-labels text, .name-tooltip-value .ods-highcharts__tooltip b { + font-weight: 600 !important; +} + +.lightgrey-chart-legend .highcharts-legend-item span, .lightgrey-data-values .highcharts-data-label tspan, .lightgrey-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .lightgrey-tooltip-text .ods-highcharts__tooltip span, .lightgrey-x-legend .highcharts-xaxis tspan, .lightgrey-x-values .highcharts-xaxis-labels span, .lightgrey-x-values .highcharts-xaxis-labels text, .lightgrey-y-legend .highcharts-yaxis tspan, .lightgrey-y-values .highcharts-yaxis-labels span, .lightgrey-y-values .highcharts-yaxis-labels text, .name-tooltip-value .ods-highcharts__tooltip b { + fill: #565656 !important; + color: #565656 !important; +} + +.darkgrey-chart-legend .highcharts-legend-item span, .darkgrey-data-values .highcharts-data-label tspan, .darkgrey-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .darkgrey-tooltip-text .ods-highcharts__tooltip span, .darkgrey-x-legend .highcharts-xaxis tspan, .darkgrey-x-values .highcharts-xaxis-labels span, .darkgrey-x-values .highcharts-xaxis-labels text, .darkgrey-y-legend .highcharts-yaxis tspan, .darkgrey-y-values .highcharts-yaxis-labels span, .darkgrey-y-values .highcharts-yaxis-labels text, .name-tooltip-value .ods-highcharts__tooltip b { + fill: #333 !important; + color: #333 !important; +} + +.black-chart-legend .highcharts-legend-item span, .black-data-values .highcharts-data-label tspan, .black-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .black-tooltip-text .ods-highcharts__tooltip span, .black-x-legend .highcharts-xaxis tspan, .black-x-values .highcharts-xaxis-labels span, .black-x-values .highcharts-xaxis-labels text, .black-y-legend .highcharts-yaxis tspan, .black-y-values .highcharts-yaxis-labels span, .black-y-values .highcharts-yaxis-labels text, .name-tooltip-value .ods-highcharts__tooltip b { + fill: #000 !important; + color: #000 !important; +} + +.small-chart-legend-dash .highcharts-legend-item path, .small-chart-series .highcharts-series path.highcharts-graph, .small-chart-series .highcharts-series rect, .small-x-axisline .highcharts-axis.highcharts-xaxis path.highcharts-axis-line, .small-x-axisline-ticks .highcharts-axis.highcharts-xaxis path.highcharts-tick, .small-x-gridline .highcharts-xaxis-grid path.highcharts-grid-line, .small-y-axisline .highcharts-axis.highcharts-yaxis path.highcharts-axis-line, .small-y-gridline .highcharts-yaxis-grid path.highcharts-grid-line { + stroke-width: 0.8px !important; +} + +.medium-chart-legend-dash .highcharts-legend-item path, .medium-chart-series .highcharts-series path.highcharts-graph, .medium-chart-series .highcharts-series rect, .medium-x-axisline .highcharts-axis.highcharts-xaxis path.highcharts-axis-line, .medium-x-axisline-ticks .highcharts-axis.highcharts-xaxis path.highcharts-tick, .medium-x-gridline .highcharts-xaxis-grid path.highcharts-grid-line, .medium-y-axisline .highcharts-axis.highcharts-yaxis path.highcharts-axis-line, .medium-y-gridline .highcharts-yaxis-grid path.highcharts-grid-line { + stroke-width: 1.5px !important; +} + +.large-chart-legend-dash .highcharts-legend-item path, .large-chart-series .highcharts-series path.highcharts-graph, .large-chart-series .highcharts-series rect, .large-x-axisline .highcharts-axis.highcharts-xaxis path.highcharts-axis-line, .large-x-axisline-ticks .highcharts-axis.highcharts-xaxis path.highcharts-tick, .large-x-gridline .highcharts-xaxis-grid path.highcharts-grid-line, .large-y-axisline .highcharts-axis.highcharts-yaxis path.highcharts-axis-line, .large-y-gridline .highcharts-yaxis-grid path.highcharts-grid-line { + stroke-width: 3px !important; +} + +.extralarge-chart-legend-dash .highcharts-legend-item path, .extralarge-chart-series .highcharts-series path.highcharts-graph, .extralarge-chart-series .highcharts-series rect, .extralarge-x-axisline .highcharts-axis.highcharts-xaxis path.highcharts-axis-line, .extralarge-x-axisline-ticks .highcharts-axis.highcharts-xaxis path.highcharts-tick, .extralarge-x-gridline .highcharts-xaxis-grid path.highcharts-grid-line, .extralarge-y-axisline .highcharts-axis.highcharts-yaxis path.highcharts-axis-line, .extralarge-y-gridline .highcharts-yaxis-grid path.highcharts-grid-line { + stroke-width: 5px !important; +} + +.lightgrey-chart-series .highcharts-series path.highcharts-graph, .lightgrey-chart-series .highcharts-series rect, .lightgrey-x-axisline .highcharts-axis.highcharts-xaxis path.highcharts-axis-line, .lightgrey-x-axisline-ticks .highcharts-axis.highcharts-xaxis path.highcharts-tick, .lightgrey-x-gridline .highcharts-xaxis-grid path.highcharts-grid-line, .lightgrey-y-axisline .highcharts-axis.highcharts-yaxis path.highcharts-axis-line, .lightgrey-y-gridline .highcharts-yaxis-grid path.highcharts-grid-line { + stroke: #565656 !important; +} + +.lightgrey-chart-legend-dash .highcharts-legend-item path { + stroke-width: #565656 !important; +} + +.darkgrey-chart-series .highcharts-series path.highcharts-graph, .darkgrey-chart-series .highcharts-series rect, .darkgrey-x-axisline .highcharts-axis.highcharts-xaxis path.highcharts-axis-line, .darkgrey-x-axisline-ticks .highcharts-axis.highcharts-xaxis path.highcharts-tick, .darkgrey-x-gridline .highcharts-xaxis-grid path.highcharts-grid-line, .darkgrey-y-axisline .highcharts-axis.highcharts-yaxis path.highcharts-axis-line, .darkgrey-y-gridline .highcharts-yaxis-grid path.highcharts-grid-line { + stroke: #333 !important; +} + +.darkgrey-chart-legend-dash .highcharts-legend-item path { + stroke-width: #333 !important; +} + +.black-chart-series .highcharts-series path.highcharts-graph, .black-chart-series .highcharts-series rect, .black-x-axisline .highcharts-axis.highcharts-xaxis path.highcharts-axis-line, .black-x-axisline-ticks .highcharts-axis.highcharts-xaxis path.highcharts-tick, .black-x-gridline .highcharts-xaxis-grid path.highcharts-grid-line, .black-y-axisline .highcharts-axis.highcharts-yaxis path.highcharts-axis-line, .black-y-gridline .highcharts-yaxis-grid path.highcharts-grid-line { + stroke: #000 !important; +} + +.black-chart-legend-dash .highcharts-legend-item path { + stroke-width: #000 !important; +} + +.hide-chart-legend-dash .highcharts-legend-item path { + stroke-width: none !important; +} + +.small-chart-legend-circle g.highcharts-legend-item rect { + width: 10px !important; + height: 10px !important; + x: 5 !important; + y: 5 !important; +} + +.medium-chart-legend-circle g.highcharts-legend-item rect { + width: 12px !important; + height: 12px !important; + x: 3 !important; + y: 4 !important; +} + +.large-chart-legend-circle g.highcharts-legend-item rect { + width: 15px !important; + height: 15px !important; + x: 2 !important; + y: 2 !important; +} + +.extralarge-chart-legend-circle g.highcharts-legend-item rect { + width: 18px !important; + height: 18px !important; + x: 0 !important; + y: 0 !important; +} + +.centered-tooltip .highcharts-tooltip .highcharts-tooltip-container { + text-align: center; +} + +.centered-tooltip .ods-highcharts__tooltip { + justify-content: center; +} + +.no-background rect.highcharts-background, .no-bg rect.highcharts-background, .remove-background rect.highcharts-background, .transparent-background rect.highcharts-background { + fill: transparent !important; +} + +.ods-highcharts__tooltip { + align-items: center; +} + +g.highcharts-legend-item rect { + rx: 100%; + ry: 100%; +} + +.trend .highcharts-axis, +.trend .highcharts-yaxis-labels, +.trend .highcharts-ygrid, +.trend .highcharts-legend, +.trend .highcharts-yaxis-grid path:not(:first-child), +.trend .highcharts-label.highcharts-data-label:not(:first-child):not(:last-child) { + display: none; +} + +.trend .highcharts-label.highcharts-data-label { + opacity: 1; + visibility: inherit; +} + +.trend { + padding-top: 15px; + background: white; +} + +.trend .chartplaceholder { + height: 280px; + width: 100%; +} + +.trend path.highcharts-area { + fill: transparent; +} + +.trend text { + font-size: 13px !important; +} + +/*path.highcharts-graph { + stroke: #d4d700; +}*/ +.top5-chart { + height: 350px; + margin: 0 auto; +} +.top5-chart .highcharts-xaxis path.highcharts-axis-line { + stroke: var(--bg-color); + stroke-width: 4px; + transform: translate(-2px, 0); +} + +/* Custom Tabs + ========================================================================== */ +.tabs { + display: flex; + flex-wrap: wrap; + margin: 30px 15px; +} +.tabs .tab { + font-size: 1.2rem; + padding: 0 15px 5px; +} +.tabs .tab:hover { + font-weight: 600; +} +.tabs .tab.tab__active { + font-weight: 600; + border-bottom: 4px solid var(--secondary-color); +} + +.tabs-content .tab-content { + position: relative; +} + +.odswidget-spinner.odswidget-spinner--svg.heatmap { + height: 4em; + position: absolute; + left: 50%; + top: 40%; + z-index: 0; +} + +.vega-chart { + z-index: 1; + position: relative; + background: white; +} + +/* FIX Container for CV */ +@media (min-width: 768px) { + .container { + width: inherit; + max-width: 740px; + } +} +@media (min-width: 992px) { + .container { + width: inherit; + max-width: 960px; + } +} +@media (min-width: 1200px) { + .container { + width: inherit; + max-width: 1160px; + } +} \ No newline at end of file diff --git a/content/custom-views/eco-compteur/1/html.inc b/content/custom-views/eco-compteur/1/html.inc new file mode 100644 index 000000000..b71b0e49c --- /dev/null +++ b/content/custom-views/eco-compteur/1/html.inc @@ -0,0 +1,395 @@ + + + + + + + + + {{ ctx.parameters['refine.name'] = + (ctx.parameters['refine.name'].join('')? + ctx.parameters['refine.name'].join(''): + ctx.parameters['refine.name']) ; '' }} + + {{ sitesselect.parameters['refine.name'] = ctx.parameters['refine.name'] ; '' }} + + {{ values.daterefinedepth = (ctx.parameters['refine.date'].length > 1 ? + (ctx.parameters['refine.date'] | split:'/').length : (ctx.parameters['refine.date'][0] | split:'/').length) || 0 ; "" }} + + + {{ values.capteurs = capteurs ; '' }} + + + + + + +
+
+
+
+
+ + Capteur : + + + {{ ctx.parameters['refine.name'] || 'Tous' }} + +
+ + Période : + + + Tout l'historique + + {{ range[0].mindate | date }} au {{ range[0].maxdate | date }} + + +
+ +
+ +
+
+
+
+ +
+
+
+
+
+

+ Sélection du capteur +

+
+ + +
+
+ +
+ + + + + + +
+
+ +
+ +
+

+ Détail du capteur +

+
+
+

{{ sitesresults[0].fields.name }}

+
+
User type
+
{{ sitesresults[0].fields.user_type }}
+
Sens
+
{{ sitesresults[0].fields.sens }}
+
Installation date
+
{{ sitesresults[0].fields.installation_date | date }}
+
+ +
+
+
+

Pas de capteur sélectionné

+
+
+
+
+
+
+ + + + + +
+
+
+
+

+ {{ byday[1].total | number }} + passages comptabilisés le {{ byday[1].day | date }} +

+ {{ evol = (byday[1].total - byday[7].total)/byday[7].total*100 ; '' }} +
+

+ ▲ + + + {{ evol | number: 1}}% +

+

+ comparé à {{ byday[7].day | moment:'dddd' }} dernier ({{ byday[7].total | number }} passages le {{ byday[7].day | date }}) +

+
+
+
+

+ {{ global[0].total | number }} + passages au total +

+

+ ont été comptabilisés sur la période séléctionnée +

+
+
+
+ + + + + + +
+
+
+
+
+ + + + + +
+
+
+
+
+
+ + + + + + +
+
+
+

+ Top 5 +

+

+ Sites les plus fréquentés +

+
+
+
+
+
+
+
+ + + + + + +
+
+
+

+ Top 5 +

+

+ Jours les plus fréquentés pour le site séléctionné +

+
+
+
+
+
+ + + + + +
+
+

Moyennes horaire

+ {{ + tabs = ([ + values.daterefinedepth < 3 ? 'distribution' : undefined, + values.daterefinedepth < 2 ? 'mois' : undefined, + values.daterefinedepth < 3 ? 'jour' : undefined, + values.daterefinedepth > 1 ? 'heure' : undefined + ] | filter : '') ; + histoscale = { + 'mois':'month', + 'jour':'day', + 'heure':'hour' + }; '' + }} + +
+
+ {{ values.activetab = (i == 0 && !(tabs.indexOf(values.activetab) >= 0) ? e : values.activetab) ; '' }} + {{ e | capitalize }} +
+
+
+
+ +
+ +
+
+
+ + + + + + +
+
+
+
+ +
\ No newline at end of file diff --git a/content/custom-views/eco-compteur/1/index.md b/content/custom-views/eco-compteur/1/index.md new file mode 100644 index 000000000..70aef9987 --- /dev/null +++ b/content/custom-views/eco-compteur/1/index.md @@ -0,0 +1,41 @@ +--- +title: "Eco-Counter / Eco-Compteur data custom view" +date: "2021-12-09" +domainid: "eco-compteur-odsapps" +datasetid: "eco-counter-data" +--- + +Eco-Counter custom view for Huwise integration: an overall view of your territory through Eco-Counter stations data. + +### Install procedure + +Two datasets are required : +- **eco-counter-data** : from `Eco Counter Data` connector +- **eco-counter-sites** : from `Eco Counter Sites` connector + +##### eco-counter-sites processing : + +Get the first photo URL, copy the field, get the photo from the URL + +- Split text: + - field: `photos` + - separator: `/https://` + - index: `1` + - output: `photourl` +- Copy a field: + - field: `photourl` + - new field: `photo` +- File: + - field: `photo` + +##### eco-counter-data processing : + +Get additional metadata from counters + +- Join datasets: + - dataset: `eco-counter-sites` + - local key: `id` + - remote key: `id` + - output fields: `name, coordinates, user_type, sens, interval` + +Set `name` field as a facet ! \ No newline at end of file diff --git a/content/custom-views/eco-compteur/1/schema.md b/content/custom-views/eco-compteur/1/schema.md new file mode 100644 index 000000000..d2e23b796 --- /dev/null +++ b/content/custom-views/eco-compteur/1/schema.md @@ -0,0 +1,22 @@ +**Dataset in use:** `eco-counter-data` [(See it on eco-compteur-odsapps domain)](https://eco-compteur-odsapps.huwise.com/explore/dataset/eco-counter-data/table/) + +**Fields in use:** + +|name|date (datetime)|counts (numeric)| +|---|---|---| +|Savonniéres|2021-06-21T07:00:00+00:00|1| +|Pont d'Arcole #1|2017-04-12T16:00:00+00:00|18| +|Pont de Fil|2020-10-29T08:00:00+00:00|133| +|Savonniéres|2021-06-21T11:00:00+00:00|48| + +**Dataset in use:** `eco-counter-sites` [(See it on eco-compteur-odsapps domain)](https://eco-compteur-odsapps.huwise.com/explore/dataset/eco-counter-sites/table/) + +**Fields in use:** + +|name|user_type|sens|installation_date (date)|photourl|photo (file)| +|---|---|---|---|---|---| +|Pont de Fil|undefined|No direction distinction|2016-06-30|https://filer.eco-counter-tools.com/file/b7/7d63cb2a9b9986334c81393be68c09c2b1e0ed6fb4a07002c5a3188a78a715b7/14673104006170.jpg|https://eco-compteur-odsapps.huwise.com/api/v2/catalog/datasets/eco-counter-sites/files/2d285c480a5a00392c3c2adc90cf2380| +|Pont Sanitas OUEST|bicycle|No direction distinction|2018-06-25|https://filer.eco-counter-tools.com/file/ec/fc9ad4754577a9e8391a50ab6dcfa966f1892a326f49457ce5c3b80efaf02dec/15314760980470.jpg|https://eco-compteur-odsapps.huwise.com/api/v2/catalog/datasets/eco-counter-sites/files/c225c95895bc3233dc9729bdc781d178| +|Pont Sanitas EST|bicycle|No direction distinction|2018-06-25|https://filer.eco-counter-tools.com/file/3a/097f16268be8b6a6fc4cb76c35396878589464de4a8ea712b9b724b79e34893a/Y2H18065670_20200505143031.jpg|https://eco-compteur-odsapps.huwise.com/api/v2/catalog/datasets/eco-counter-sites/files/bd106cc66279695c8ec292ef98982237| +|Pont Saint Sauveur OUEST|bicycle|No direction distinction|2018-06-25|https://filer.eco-counter-tools.com/file/2a/32d4a0dae4e6aace3ee1b450930b2d8081d9d4b501e7d4585bd63a4fab3dcb2a/15314760600830.jpg|https://eco-compteur-odsapps.huwise.com/api/v2/catalog/datasets/eco-counter-sites/files/edb6abd347c9a5f52a528e1b45e079a2| + diff --git a/content/custom-views/eco-compteur/index.md b/content/custom-views/eco-compteur/index.md new file mode 100644 index 000000000..a791a7662 --- /dev/null +++ b/content/custom-views/eco-compteur/index.md @@ -0,0 +1,12 @@ +--- +title: "Eco-Counter / Eco-Compteur" +date: "2021-12-09" +description: "Eco-Counter custom view for Huwise integration: an overall view of your territory through Eco-Counter stations data." +tags: ["aggregation", "chart", "ods-adv-analysis"] +resources: +- src: '*/' + title: 'Section #:counter' +--- + + +[See it live here !](https://eco-compteur-odsapps.huwise.com/explore/dataset/eco-counter-data/dashboard/) \ No newline at end of file diff --git a/content/custom-views/gtfs-custom/1/html.inc b/content/custom-views/gtfs-custom/1/html.inc index 1397f5d04..5110fba1d 100644 --- a/content/custom-views/gtfs-custom/1/html.inc +++ b/content/custom-views/gtfs-custom/1/html.inc @@ -18,12 +18,21 @@
- + - + - +
@@ -39,7 +48,7 @@ -
+
* { + margin: 0 0 10px; + width: 100%; +} + +.filter-box { + display: flex; + flex-direction: column; + gap: 10px; + align-items: center; +} + +.filter-title { + margin-top: 15px; + margin-bottom: 0px; +} + +.odswidget-select .odswidget-select-dropdown.open .odswidget-select-dropdown-menu { + width: 100%; +} + +.odswidget-select, +.odswidget-select .odswidget-select-dropdown { + width: 100%; +} + +@media screen and (min-width: 500px) { + .filter-list > * { + margin: 0 10px 10px 0; + width: inherit; + } + + .odswidget-select .odswidget-select-dropdown.open .odswidget-select-dropdown-menu, .odswidget-select-input, .odswidget-select-dropdown { + width: max-content; + min-width: 266px; + } +} +.select-left .odswidget-select-dropdown-item-close-icon, .select-left .odswidget-select-dropdown-item-icon.fa-check-square, +.select-left .odswidget-select-dropdown-item-icon.fa-minus-square, +.select-left .odswidget-select-dropdown-menu-item:hover i.fa-square-o { + color: var(--left-color); +} + +.select-right .odswidget-select-dropdown-item-close-icon, .select-right .odswidget-select-dropdown-item-icon.fa-check-square, +.select-right .odswidget-select-dropdown-item-icon.fa-minus-square, +.select-right .odswidget-select-dropdown-menu-item:hover i.fa-square-o { + color: var(--right-color); +} + +.clear-filters { + display: flex; + align-items: center; + justify-content: center; + margin-top: 5px; +} + +.clear-filters-button { + background: none; + border: none; + color: var(--text); +} + +.clear-filters-button:hover { + opacity: 0.65; +} + +/* KPI Card +========================================================================== */ +.kpi-card { + background-color: var(--boxes-background); + height: 100%; + padding: 39px; + border-radius: 4px; + box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.13); + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + text-align: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + text-align: center; + width: 100%; + margin-bottom: 5px; +} + +.kpi-icon { + color: var(--secondary-color); + font-size: 4rem; + margin-top: 0; + margin-bottom: 13px; + max-width: 100%; +} + +.kpi-title { + font-weight: normal; + font-size: 3.2rem; + margin-top: 0; + max-width: 100%; + margin-bottom: 5px; +} + +.kpi-compare { + font-weight: normal; + font-size: 1.8rem; + margin-top: 0; + margin-bottom: 0px; + max-width: 100%; +} + +.kpi-unit { + font-size: 0.8em; +} + +.kpi-description { + color: var(--text); + font-size: 1rem; + line-height: 1.5; + font-weight: normal; + margin-top: 0; + margin-bottom: 0; + max-width: 100%; +} + +.kpi-subtitle { + font-weight: bold; + text-transform: uppercase; + margin-bottom: 0; +} + +.kpi-compare-subtitle { + text-transform: uppercase; + margin-bottom: 0; +} + +/* Charts +========================================================================== */ +.chart-card { + background-color: var(--boxes-background); + height: 100%; + padding: 39px; + border-radius: 4px; + box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.13); + display: block; + width: 100%; + margin-bottom: 10px; +} + +.chart-title:first-child { + margin-top: 20px; +} + +rect.highcharts-background { + fill: transparent !important; +} + +/* Custom Charts +========================================================================== */ +.custom-graph { + display: flex; + flex-direction: column; + margin-bottom: 4rem; + width: 100%; +} + +.custom-graph-body { + display: flex; + align-items: stretch; +} + +.custom-graph-block { + flex: 1 1 auto; +} + +.custom-graph-separator { + width: 3px; + background-color: #232423; +} + +.custom-graph-header { + display: block; + margin-bottom: 0.5rem; +} +.custom-graph-header h4 { + margin-top: 0; +} + +.header-right { + text-align: right; +} + +.custom-graph-title { + font-size: 1.43rem; + margin: 0; + text-transform: uppercase; + color: var(--titles); + font-weight: bold; +} + +.custom-graph-content { + display: grid; +} + +.custom-graph-item { + border-bottom: 1px solid #979797; + margin-top: 0.5rem; + display: flex; + align-items: center; + justify-content: space-between; + min-height: 50px; +} + +.custom-graph-item-title { + font-size: 0.75rem; + color: var(--titles); + font-weight: normal; + margin: 0; + flex: 0 0 35%; +} + +.custom-graph-progress-container { + align-self: end; + flex: 1 1 65%; +} + +.custom-graph-progress { + height: 30px; + display: flex; + align-items: center; +} + +.custom-graph-progress-value { + font-size: 0.625rem; + color: var(--titles); + margin: 0 9px; +} + +.custom-graph-content-left .custom-graph-progress { + margin-left: auto; + border-radius: 8px 0 0 8px; + justify-content: flex-end; +} + +.custom-graph-content-right .custom-graph-item-title { + order: 1; + text-align: right; +} + +.custom-graph-content-right .custom-graph-progress { + order: 1; + margin-right: auto; + border-radius: 0 8px 8px 0; + justify-content: flex-start; +} + +.custom-graph-inverted-text-color .custom-graph-progress-value, +.custom-graph-inverted-text-color .custom-graph-item-title { + color: inherit; +} \ No newline at end of file diff --git a/content/generators/comparison-generator/index.md b/content/generators/comparison-generator/index.md new file mode 100644 index 000000000..4a5d85bd0 --- /dev/null +++ b/content/generators/comparison-generator/index.md @@ -0,0 +1,9 @@ +--- +title: "Comparison Generator" +description: "This generator builds a comparison dashboard. Edit a few settings and compare 2 values, such as territories or categories, from one dataset." +date: "2022-03-30T00:00:00+01:00" +tags: ["display", "navigation", "filter", "chart"] +resources: +- src: '*/' + name: folder-:counter +--- diff --git a/content/generators/comparison-generator/posthtml.inc b/content/generators/comparison-generator/posthtml.inc new file mode 100644 index 000000000..2aa7c31aa --- /dev/null +++ b/content/generators/comparison-generator/posthtml.inc @@ -0,0 +1,628 @@ + + + DO_NOT_MODIFY_BELOW; + + selected1 = {}; + selected2 = {}; + selectionRefFinale = ''; + selectionCompareFinale = {}; + "> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {{ctxref.parameters['refine.' + refineField] = refineValue; + ctxcompare.parameters['refine.' + refineField] = refineValue; + ctx1.parameters['refine.' + refineField] = refineValue; + ctx2.parameters['refine.' + refineField] = refineValue; ""}} + + +
+
+

+ {{ pageTitle }} +

+

+ {{ pageSubtitle }} +

+
+

{{filterTitle}}

+
+
+

+ {{referenceFitlerTitle}} +

+
+
+
+ + + + + {{ + $parent.$parent.$parent.$parent['context' + j].parameters['refine.' + fieldname.idField] = + ctx1.parameters['refine.' +fieldname.idField] = + (selected1[fieldname.name] | toObject:'code' | keys);"" + }} + + +
+ +
+
+ + + +
+
+
+ +
+

+ {{compareFilterTitle}} +

+
+
+
+ + + + + {{ + $parent.$parent.$parent.$parent['contextcompare' + j].parameters['refine.' + fieldname.idField] = + ctx2.parameters['refine.' +fieldname.idField] = + (selected2[fieldname.name] | toObject:'code' | keys );"" + }} + + +
+
+
+ + +
+
+
+
+
+
+

+ {{referenceFitlerTitle}} +

+
+ + + + {{ctx1.parameters['refine.' + filterFieldId] = selectionRefFinale ; ""}} + + + + + {{selectionRefFinale == 0 ? selectionRefFinale = defaultValue : '' ; ""}} + {{ctx1.parameters['refine.' + filterFieldId] = selectionRefFinale ; ""}} + + +
+
+
+

+ {{compareFilterTitle}} +

+
+ + + + {{ctx2.parameters['refine.' + filterFieldId] = selectionCompareFinale ; ""}} + + + + + {{selectionCompareFinale == 0 ? selectionCompareFinale = defaultValue : '' ; ""}} + {{ctx2.parameters['refine.' + filterFieldId] = selectionCompareFinale ; ""}} + {{ctx2.parameters}} + +
+
+
+
+ +
+
+
+
+
+ +
+ +

+ {{ (kpi1[0].x || 0) | number : (kpi.precision || 0) }} + {{ kpi.unit }} +

+

+ {{ kpi.title }} +

+

+ {{ selected1[fields[3].name][0].name || + selected1[fields[2].name][0].name || + selected1[fields[1].name][0].name || + selected1[fields[0].name][0].name || defaultLevel }}

+ +

+ {{results1[0].fields[filterFieldLabel]}}

+

+ {{defaultLevel}}

+
+
+
+ +
+ +

+ {{ (kpi2[0].x || 0) | number : (kpi.precision || 0) }} + {{ kpi.unit }} +

+

+ {{ kpi.title }} +

+

+ {{ selected2[fields[3].name][0].name || + selected2[fields[2].name][0].name || + selected2[fields[1].name][0].name || + selected2[fields[0].name][0].name || defaultLevel }}

+

+ {{results2[0].fields[filterFieldLabel]}}

+

+ {{defaultLevel}}

+ +

+ {{ ((kpi2[0].x - kpi1[0].x )/kpi1[0].x )*100 > 0 ? '+' : '' }}{{ (((kpi2[0].x -kpi1[0].x )/kpi1[0].x )*100|| 0) | number : 2 }}% +

+ par rapport à +

{{item1.name}}{{$last ? '' : ' + '}}

+

+ {{ selected1[fields[3].name][0].name || + selected1[fields[2].name][0].name || + selected1[fields[1].name][0].name || + selected1[fields[0].name][0].name || defaultLevel }}

+

+ {{results1[0].fields[filterFieldLabel]}}

+

+ {{defaultLevel}}

+
+
+
+
+ + +
+ +
+
+

{{chart.title}}

+ +
+ + {{ pyramid['maxref'] = results[0].max; '' }} +
+ + {{ pyramid.analysisref = analysisref ; '' }} +
+ +
+ {{ pyramid['maxcompare'] = results[0].max; '' }} +
+ + {{ pyramid.analysiscompare = analysiscompare ; '' }} +
+ + {{ pyramid['max'] = + (pyramid['maxcompare']>pyramid['maxref']?pyramid['maxcompare']:pyramid['maxref']); '' }} + + +

+ {{ pyramid.order[item[chart.xAxis]] = i+1; '' }} +

+

+ {{ pyramid.order[item[chart.xAxis]] = i+1; '' }} +

+ + + +
+
+
+
+

+ {{ selected1[fields[3].name][0].name || + selected1[fields[2].name][0].name || + selected1[fields[1].name][0].name || + selected1[fields[0].name][0].name || defaultLevel }} + + + {{results1[0].fields[filterFieldLabel]}} + + {{defaultLevel}} +

+

{{chart.label}}

+
+
+
+
+ {{ itemleft[chart.xAxis] }} +
+
+
+ + {{ itemleft.counttotal | number }} + +
+
+
+
+
+ +
+
+
+

+ {{ selected2[fields[3].name][0].name || + selected2[fields[2].name][0].name || + selected2[fields[1].name][0].name || + selected2[fields[0].name][0].name || defaultLevel }} + + {{results2[0].fields[filterFieldLabel]}} + + {{defaultLevel}} +

+

{{chart.label}}

+
+
+
+
+ {{ itemright[chart.xAxis] }} +
+
+
+ + {{ itemright.counttotal | number }} + +
+
+
+
+
+
+
+
+
+
+ +
+
+

{{chart.title}}

+ + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+
+
+
+
\ No newline at end of file diff --git a/content/generators/comparison-generator/prehtml.inc b/content/generators/comparison-generator/prehtml.inc new file mode 100644 index 000000000..76772771f --- /dev/null +++ b/content/generators/comparison-generator/prehtml.inc @@ -0,0 +1,14 @@ + + + +
-
{{ kpidatectxn.parameters['refine.' + item.dataset_refine_key] = item.dataset_refine_value ; '' }} - {{ kpidatectxn.parameters = (item.dataset_advanced_refine_parameters.replaceAll('\'','"') | fromjson) ; '' }} + + {{ kpidatectxn.parameters[key] = item.dataset_advanced_refine_parameters[key]; '' }} + {{ kpidatectxnmoinsun.parameters['refine.' + item.valref_dataset_refine_key] = item.valref_dataset_refine_value ; '' }} - {{ kpidatectxnmoinsun.parameters = (item.valref_dataset_advanced_refine_parameters.replaceAll('\'','"') | fromjson) ; '' }} - + + {{ kpidatectxnmoinsun.parameters[key] = item.valref_dataset_advanced_refine_parameters[key]; '' }} + {{ kpidatectxn.parameters['q.date'] = item.date_field_id + ':' + item.values.filtren ; '' }} {{ kpidatectxnmoinsun.parameters['q.date'] = item.date_field_id + ':' + item.values.filtrenmoinsun ; '' }} diff --git a/content/generators/listing-generator/1/config.inc b/content/generators/listing-generator/1/config.inc index 4f3b48dfb..86bab49aa 100644 --- a/content/generators/listing-generator/1/config.inc +++ b/content/generators/listing-generator/1/config.inc @@ -1,37 +1,45 @@ - ng-init="domain = 'discovery.opendatasoft.com'; - datasetid = 'oeuvres-de-johannes-vermeer'; + ng-init="domain = 'userclub.huwise.com'; + datasetid = 'oeuvres-de-johannes-vermeer'; - filters = [ + sort = 'surface'; + + filters = [ {'id':'technique','multiple':true}, {'id':'collection','multiple':true}, {'id':'genre','multiple':true} - ]; - fieldDate = ''; - resetFiltersButton = true; - resetFiltersButtonLabel = 'Supprimer tous les filtres'; - fieldDefaultRangeStartsNow = false; + ]; + fieldDate = ''; + resetFiltersButton = true; + resetFiltersButtonLabel = 'Supprimer tous les filtres'; + fieldDefaultRangeStartsNow = false; + + view = 'cards'; + fieldsList = ['collection','genre','format','date']; + fieldLink = 'wikipedia'; + fieldLinkLabel = 'Lire l\'article'; - view = 'cards'; - fieldsList = ['titre','collection','genre','format','date']; - fieldLink = 'wikipedia'; - fieldLinkLabel = 'Lire l\'article'; + cardTitle = 'titre'; + fieldPhoto = 'image'; + imagePosition = 'left'; + itemsPerRow = '2'; - cardTitle = 'titre'; - fieldPhoto = 'image'; - imagePosition = 'left'; - itemsPerRow = '2'; + mapView = false; + mapPicto = ''; + mapPictoColor = ''; - kpis = [ + kpis = [ { 'title': 'Taille moyenne', - 'function': 'AVG', - 'expression': 'surface', + 'select': 'avg(surface)', 'precision': 2, 'unit': 'm2', 'faicon': 'square-o' }, { 'title': 'Nombre d\'oeuvre référencées', - 'function': 'COUNT' + 'select': 'count(*)' } - ]; + ]; + + sourceLinkLabel = 'Accéder aux données source'; + noResultMsg = 'Aucun résultat'; diff --git a/content/generators/listing-generator/1/index.md b/content/generators/listing-generator/1/index.md index 555c606e1..31297f76d 100644 --- a/content/generators/listing-generator/1/index.md +++ b/content/generators/listing-generator/1/index.md @@ -4,9 +4,6 @@ height: 750 --- Edit only a few settings to generate a modern looking visulization that uses ODS components and widgets. -[See a live editing demo of this template on Youtube](https://www.youtube.com/watch?v=huK1bNGjpkE) Try it! Click on "Edit on CodePen" to browse the code and see the configuration. You only need to edit the first bloc of settings to try it on your own data! - -Documentation in the HTML code. diff --git a/content/generators/listing-generator/1/schema.md b/content/generators/listing-generator/1/schema.md new file mode 100644 index 000000000..7a40027f0 --- /dev/null +++ b/content/generators/listing-generator/1/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `oeuvres-de-johannes-vermeer` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/oeuvres-de-johannes-vermeer/table/) + +**Fields in use:** + +|titre |technique |collection |genre |format |date |wikipedia |image |surface (numeric) | +|--------------------------|---------------|---------------------------------------------------|-----------------|------------|---------------|----------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------|-------------------| +|L'Entremetteuse |huile sur toile|Staatliche Kunstsammlungen, |Peinture de genre|143 × 130 |1656 (daté) |https://fr.wikipedia.org/wiki/L%27Entremetteuse |https://userclub.huwise.com/api/v2/catalog/datasets/oeuvres-de-johannes-vermeer/files/99fe5e94a3f8ae37ebcec59fd3f82e5b|1.859 | +|La Laitière |huile sur toile|Rijksmuseum |Peinture de genre|45,45 × 40,6|1658-1661 (ca.)|https://fr.wikipedia.org/wiki/La_Laiti%C3%A8re |https://userclub.huwise.com/api/v2/catalog/datasets/oeuvres-de-johannes-vermeer/files/21603ba25218d3fdd671fa03f130dcdf|0.18452700000000002| +|Portrait d'une jeune femme|huile sur toile|The Metropolitan Museum of Art |Portrait |44,5 × 40 |1665-1674 (ca.)|https://fr.wikipedia.org/wiki/Portrait_d%27une_jeune_femme|https://userclub.huwise.com/api/v2/catalog/datasets/oeuvres-de-johannes-vermeer/files/d8e37ce745e15e864fd38cf335bfc788|0.178 | +|Dame jouant du virginal |huile sur toile|Collection privée (collection Leiden,Thomas Kaplan)|Peinture de genre|25,2 × 20 |1670 (ca.) |https://fr.wikipedia.org/wiki/Dame_jouant_du_virginal |https://userclub.huwise.com/api/v2/catalog/datasets/oeuvres-de-johannes-vermeer/files/5d91a58102a2f6b1a8be537b3280ea27|0.0504 | diff --git a/content/generators/listing-generator/2/config.inc b/content/generators/listing-generator/2/config.inc index ef129f788..cf90c6311 100644 --- a/content/generators/listing-generator/2/config.inc +++ b/content/generators/listing-generator/2/config.inc @@ -1,29 +1,44 @@ - ng-init="domain = 'parisdata.opendatasoft.com'; - datasetid = 'que-faire-a-paris-'; + ng-init="domain = 'parisdata.huwise.com'; + datasetid = 'que-faire-a-paris-'; - filters = [ - {'id':'category','multiple':true}, - {'id':'tags','multiple':true}, - {'id':'access_type','multiple':false}, - {'id':'price_type','multiple':false} - ]; - fieldDate = 'date_start'; - resetFiltersButton = true; - resetFiltersButtonLabel = 'Supprimer tous les filtres'; - fieldDefaultRangeStartsNow = true; + sort = '-date_start'; - view = 'cards'; - fieldsList = ['address_name','address_street','address_city','category']; - fieldLink = 'url'; - fieldLinkLabel = 'Plus d\'informations'; + filters = [ + {'id':'tags','multiple':true}, + {'id':'access_type','multiple':false}, + {'id':'price_type','multiple':false} + ]; + fieldDate = 'date_start'; + resetFiltersButton = true; + resetFiltersButtonLabel = 'Supprimer tous les filtres'; + fieldDefaultRangeStartsNow = false; - cardTitle = 'title'; - fieldPhoto = 'cover'; - imagePosition = 'top'; - itemsPerRow = '2'; + view = 'cards'; + fieldsList = [ + {'field':'address_name'}, + {'field':'address_street'}, + {'field':'address_city'}, + {'field':'conditionversement'}, + {'field':'date_start','format':'date'}, + {'field':'date_end','format':'date'} + ]; + fieldLink = 'url'; + fieldLinkLabel = 'Plus d\'informations'; - kpis = [{ - 'title': 'Nombre d\'activités', - 'function': 'COUNT' - } - ]; + cardTitle = 'title'; + fieldPhoto = 'image_couverture'; + imagePosition = 'top'; + itemsPerRow = '2'; + + mapView = true; + mapPicto = 'circle'; + mapPictoColor = '#EC643C'; + + kpis = [{ + 'title': 'Nombre d\'activités', + 'select': 'count(*)' + } + ]; + + sourceLinkLabel = 'Accéder aux données source'; + noResultMsg = 'Aucun résultat'; diff --git a/content/generators/listing-generator/2/index.md b/content/generators/listing-generator/2/index.md index 80a205cd8..20ae1ef16 100644 --- a/content/generators/listing-generator/2/index.md +++ b/content/generators/listing-generator/2/index.md @@ -1,6 +1,6 @@ --- -title: "Automated listing visualization - another example with date" +title: "Automated listing visualization - another example with date and map" height: 750 --- -Very similar case with a date field that display a date range slider. +Very similar case with a date field that display a date range slider and a map. diff --git a/content/generators/listing-generator/2/schema.md b/content/generators/listing-generator/2/schema.md new file mode 100644 index 000000000..14cab7a77 --- /dev/null +++ b/content/generators/listing-generator/2/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `que-faire-a-paris-` [(See it on parisdata domain)](https://parisdata.huwise.com/explore/dataset/que-faire-a-paris-/table/) + +**Fields in use:** + +|address_name |address_street |address_city |category |tags |access_type |date_start (date) |date_end (date) |url |title |cover | +|--------------------------|---------------|---------------------------------------------------|-----------------|------------|---------------|----------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------|-------------------|------------------------------------|-----------------------------------------------------------------------------------------------------------| +|Musée de la Libération de Paris - Musée du général Leclerc - Musée Jean Moulin|4 avenue du colonel Henri Rol-Tanguy|Paris |Expositions -> Art Contemporain|Expos |libre |2021-10-05T10:00:00+02:00 |2021-12-15T18:00:00+01:00 |https://quefaire.paris.fr/129181/rencontres-inattendues-johan-tahon|RENCONTRES INATTENDUES : Johan Tahon|https://opendata.paris.fr/api/v2/catalog/datasets/que-faire-a-paris-/files/fcf63781daac3448906f5de5b8f1cb5e| +|Maison de Victor Hugo |6 place des Vosges|Paris |Expositions -> Beaux-Arts|Expos |reservation |2021-06-10T10:00:00+02:00 |2021-11-21T18:00:00+01:00 |https://quefaire.paris.fr/116154/victor-hugo-dessins|Victor Hugo. Dessins |https://opendata.paris.fr/api/v2/catalog/datasets/que-faire-a-paris-/files/559383d5907fdded3dcf6fff3a392143| +|Théâtre le Bout |6, rue Frochot |Paris |Spectacles -> Humour|En famille |reservation |2021-09-19T17:00:00+02:00 |2022-01-30T18:00:00+01:00 |https://quefaire.paris.fr/128766/coupable-spectacle-d-improvisation|Coupable - Spectacle d'improvisation|https://opendata.paris.fr/api/v2/catalog/datasets/que-faire-a-paris-/files/7e66c4704f50f225fbbec48af6cf06a9| +|Piscine Emile Anthoine |9, rue Jean Rey|Paris |Animations -> Atelier / Cours|Sport |reservation |2021-09-15T07:15:00+02:00 |2022-07-06T18:00:00+02:00 |https://quefaire.paris.fr/38852/tournoi-international-de-rugby-fauteuil-100-feminin|Leçons adultes / Enfants (30mn) |https://opendata.paris.fr/api/v2/catalog/datasets/que-faire-a-paris-/files/85a8715df6b7958ca5391b9a50be21ea| diff --git a/content/generators/listing-generator/3/config.inc b/content/generators/listing-generator/3/config.inc index 089d03d5e..a1bbd85a3 100644 --- a/content/generators/listing-generator/3/config.inc +++ b/content/generators/listing-generator/3/config.inc @@ -1,34 +1,42 @@ - ng-init="domain = 'userclub.opendatasoft.com'; - datasetid = 'deliberations-du-conseil-municipal-dissy-les-moulineaux'; + ng-init="domain = 'userclub.huwise.com'; + datasetid = 'deliberations-du-conseil-municipal-dissy-les-moulineaux'; - filters = [ - {'id':'mandature','multiple':true}, - {'id':'matiere','multiple':true}, - {'id':'objet','multiple':false}, - {'id':'vote','multiple':false} - ]; - fieldDate = ''; - resetFiltersButton = true; - resetFiltersButtonLabel = 'Supprimer tous les filtres'; - fieldDefaultRangeStartsNow = false; + sort = ''; - view = 'table'; - fieldsList = ['objet','matiere','vote','ndeg_deliberation']; - fieldLink = 'pdf_dcm'; - fieldLinkLabel = 'Consulter la délibération'; + filters = [ + {'id':'mandature','multiple':true}, + {'id':'matiere','multiple':true}, + {'id':'objet','multiple':false}, + {'id':'vote','multiple':false} + ]; + fieldDate = ''; + resetFiltersButton = true; + resetFiltersButtonLabel = 'Supprimer tous les filtres'; + fieldDefaultRangeStartsNow = false; - kpis = [ - { - 'title': 'Nombre de délibérations référencées', - 'function': 'COUNT', - 'faicon': 'file-pdf-o' - }, - { - 'title': 'Votes adoptés', - 'function': 'SUM', - 'expression': 'vote_adopte', - 'faicon': 'check-square-o' - } - ]; + view = 'table'; + fieldsList = ['objet','matiere','vote','ndeg_deliberation']; + fieldLink = 'pdf_dcm'; + fieldLinkLabel = 'Consulter la délibération'; - itemsPerRow = '3'; + mapView = false; + mapPicto = ''; + mapPictoColor = ''; + + kpis = [ + { + 'title': 'Nombre de délibérations référencées', + 'select': 'count(*)', + 'faicon': 'file-pdf-o' + }, + { + 'title': 'Votes adoptés', + 'select': 'sum(vote_adopte)', + 'faicon': 'check-square-o' + } + ]; + + itemsPerRow = '3'; + + sourceLinkLabel = 'Accéder aux données source'; + noResultMsg = 'Aucun résultat'; diff --git a/content/generators/listing-generator/3/schema.md b/content/generators/listing-generator/3/schema.md new file mode 100644 index 000000000..a559959df --- /dev/null +++ b/content/generators/listing-generator/3/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `deliberations-du-conseil-municipal-dissy-les-moulineaux` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/deliberations-du-conseil-municipal-dissy-les-moulineaux/table/) + +**Fields in use:** + +|mandature |matiere |objet |vote |ndeg_deliberation|pdf_dcm |vote_adopte (numeric) | +|--------------------------|---------------|---------------------------------------------------|-----------------|-----------------|---------------|----------------------------------------------------------| +|2014-2020 |EDUCATION |Lancement d’une procédure adaptée relative à l’organisation d’activités périscolaires|Adopté à l’unanimité|5.0 |https://userclub.huwise.com/api/v2/catalog/datasets/deliberations-du-conseil-municipal-dissy-les-moulineaux/files/17f69f4aa25f032862c78ff5bd9ad455|1 | +|2014-2020 |Associations sportives|Approbation d’un avenant n°3 au marché de maîtrise d’œuvre pour la construction de la piscine du Fort|Adopté à l’unanimité|7.0 |https://userclub.huwise.com/api/v2/catalog/datasets/deliberations-du-conseil-municipal-dissy-les-moulineaux/files/e56c7ad1934b19d0ea54b70298b47f71|1 | +|2014-2020 |FINANCES |Subventions aux associations pour l’année 2016 |Adopté à l’unanimité|13.0 |https://userclub.huwise.com/api/v2/catalog/datasets/deliberations-du-conseil-municipal-dissy-les-moulineaux/files/610f42b3932bab803f4b8bbd2c8a5130|1 | +|2014-2020 |PREVENTION SECURITE|Contrat Local de Sécurité. Actions de prévention. Participation financière de la Ville au titre de l’année 2016|Adopté à l’unanimité|14.0 |https://userclub.huwise.com/api/v2/catalog/datasets/deliberations-du-conseil-municipal-dissy-les-moulineaux/files/1241b3ea18a79e4651e207d9895d1a5f|1 | diff --git a/content/generators/listing-generator/4_SCDL/config.inc b/content/generators/listing-generator/4_SCDL/config.inc new file mode 100644 index 000000000..e1fda3ca0 --- /dev/null +++ b/content/generators/listing-generator/4_SCDL/config.inc @@ -0,0 +1,36 @@ + ng-init="domain = 'data.haute-garonne.fr'; + datasetid = 'datalocale-deliberation'; + + sort = 'delib_date'; + + filters = [ + {'id':'coll_nom','multiple':true,'label':'Nom de la collectivité'}, + {'id':'delib_matiere_nom','multiple':true,'label':'Nom de la matière de la délibération' }, + ]; + fieldDate = 'delib_date'; + resetFiltersButton = true; + resetFiltersButtonLabel = 'Supprimer tous les filtres'; + fieldDefaultRangeStartsNow = false; + + view = 'cards'; + fieldsList = [ + {'field':'delib_objet', 'label': ''}, + {'field':'budget_nom', 'label': 'Type de budget'}, + {'field':'vote_pour', 'label': 'Nb de vote pour'}, + {'field':'vote_contre', 'label': 'Nb de vote contre'}, + {'field':'delib_date', 'label': 'Date de la délibération', 'format': 'date'} + ]; + fieldLink = 'delib_url'; + fieldLinkLabel = 'Voir la délibération en PDF'; + + cardTitle = 'delib_matiere_nom'; + fieldPhoto = ''; + imagePosition = 'left'; + itemsPerRow = '2'; + + mapView = false; + mapPicto = ''; + mapPictoColor = ''; + + sourceLinkLabel = 'Accéder aux données source'; + noResultMsg = 'Aucun résultat'; diff --git a/content/generators/listing-generator/4_SCDL/index.md b/content/generators/listing-generator/4_SCDL/index.md new file mode 100644 index 000000000..7b72fd841 --- /dev/null +++ b/content/generators/listing-generator/4_SCDL/index.md @@ -0,0 +1,7 @@ +--- +title: "SCDL Dataset with fields and filters renaming" +height: 750 +date: "2022-02-10T00:00:00+01:00" +--- + +This example highlight how filter labels can be overridden, and even field label can be removed in the card view. diff --git a/content/generators/listing-generator/css.inc b/content/generators/listing-generator/css.inc index 3dbefcf57..044269ac6 100644 --- a/content/generators/listing-generator/css.inc +++ b/content/generators/listing-generator/css.inc @@ -3,25 +3,20 @@ :root { --secondary-color: black; } -main { + +#page- { margin: 6rem 0 3em 0; } -@media screen and (min-width: 992px) { - .row-equal-height { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -ms-flex-wrap: wrap; - flex-wrap: wrap; - margin-bottom: 20px; - } - /* Fix for early content wrapping in Safari*/ - .row-equal-height:before, - .row-equal-height:after { - content: normal; - } -} +/** + * License: MIT License + * Generated on 25 Jun 2021 + * Author: Labs from opendatasoft + * Version: 0.3 + * Description: ODS Layout over-ride to Flexbox system + */ +.row.full-height{height:100%}.row{display:flex;flex-wrap:wrap;justify-content: start;}.row>*{margin-bottom:20px}.order-0{order:0}@media screen and (min-width:750px){.order-sm-0{order:0}}@media screen and (min-width:970px){.order-md-0{order:0}}@media screen and (min-width:1170px){.order-lg-0{order:0}.order-lg-1{order:1}}.order-1{order:1}@media screen and (min-width:750px){.order-sm-1{order:1}}@media screen and (min-width:970px){.order-md-1{order:1}.order-md-2{order:2}}.order-2{order:2}@media screen and (min-width:750px){.order-sm-2{order:2}}@media screen and (min-width:1170px){.order-lg-2{order:2}.order-lg-3{order:3}}.order-3{order:3}@media screen and (min-width:750px){.order-sm-3{order:3}}@media screen and (min-width:970px){.order-md-3{order:3}.order-md-4{order:4}}.order-4{order:4}@media screen and (min-width:750px){.order-sm-4{order:4}}@media screen and (min-width:1170px){.order-lg-4{order:4}.order-lg-5{order:5}}.order-5{order:5}@media screen and (min-width:750px){.order-sm-5{order:5}}@media screen and (min-width:970px){.order-md-5{order:5}.order-md-6{order:6}}.order-6{order:6}@media screen and (min-width:750px){.order-sm-6{order:6}}@media screen and (min-width:1170px){.order-lg-6{order:6}.order-lg-7{order:7}}.order-7{order:7}@media screen and (min-width:750px){.order-sm-7{order:7}}@media screen and (min-width:970px){.order-md-7{order:7}.order-md-8{order:8}}.order-8{order:8}@media screen and (min-width:750px){.order-sm-8{order:8}}@media screen and (min-width:1170px){.order-lg-8{order:8}.order-lg-9{order:9}}.order-9{order:9}@media screen and (min-width:750px){.order-sm-9{order:9}}@media screen and (min-width:970px){.order-md-9{order:9}.order-md-10{order:10}}.order-10{order:10}@media screen and (min-width:750px){.order-sm-10{order:10}}@media screen and (min-width:1170px){.order-lg-10{order:10}.order-lg-11{order:11}}.order-11{order:11}@media screen and (min-width:750px){.order-sm-11{order:11}}@media screen and (min-width:970px){.order-md-11{order:11}.order-md-12{order:12}}.order-12{order:12}@media screen and (min-width:750px){.order-sm-12{order:12}}@media screen and (min-width:1170px){.order-lg-12{order:12}}@media screen and (max-width:1169px){:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-1,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-10,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-11,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-12,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-2,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-3,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-4,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-5,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-6,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-7,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-8,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-9{width:100%}}@media screen and (max-width:969px){:not([class*=col-sm]):not([class*=col-xs]).col-md-1,:not([class*=col-sm]):not([class*=col-xs]).col-md-10,:not([class*=col-sm]):not([class*=col-xs]).col-md-11,:not([class*=col-sm]):not([class*=col-xs]).col-md-12,:not([class*=col-sm]):not([class*=col-xs]).col-md-2,:not([class*=col-sm]):not([class*=col-xs]).col-md-3,:not([class*=col-sm]):not([class*=col-xs]).col-md-4,:not([class*=col-sm]):not([class*=col-xs]).col-md-5,:not([class*=col-sm]):not([class*=col-xs]).col-md-6,:not([class*=col-sm]):not([class*=col-xs]).col-md-7,:not([class*=col-sm]):not([class*=col-xs]).col-md-8,:not([class*=col-sm]):not([class*=col-xs]).col-md-9{width:100%}}@media screen and (max-width:749px){.row{flex-direction:column}:not([class*=col-xs]).col-sm-1,:not([class*=col-xs]).col-sm-10,:not([class*=col-xs]).col-sm-11,:not([class*=col-xs]).col-sm-12,:not([class*=col-xs]).col-sm-2,:not([class*=col-xs]).col-sm-3,:not([class*=col-xs]).col-sm-4,:not([class*=col-xs]).col-sm-5,:not([class*=col-xs]).col-sm-6,:not([class*=col-xs]).col-sm-7,:not([class*=col-xs]).col-sm-8,:not([class*=col-xs]).col-sm-9{width:100%}}.no-margin-bottom,.no-mb{margin-bottom:0!important}.no-margin-x,.no-mx{margin-left:0!important;margin-right:0!important} + .page-title { font-size: 3rem; @@ -47,7 +42,7 @@ main { .search-module-container { padding: 26px; - margin-bottom: 20px; + margin: 20px 0; } .search-module { @@ -126,6 +121,11 @@ main { align-items: center; justify-content: center; } +.clear-filters-button { + background: none; + border: none; + color: var(--text); +} .clear-filters-button:hover { opacity: 0.65; } @@ -143,6 +143,9 @@ main { min-width: 240px; } } +.odswidget-select-button:focus:not(.focus-ring) { + outline: var(--highlight) 2px solid; +} /*********** Filter date ************/ .filter-date { @@ -159,6 +162,9 @@ main { margin-top: 13px; white-space: nowrap; text-decoration: underline; + color: var(--text); + background: none; + border: none; } .filter-date-button:not(.filter-date-button-disabled):hover { opacity: 0.65; @@ -374,11 +380,6 @@ main { /* Table Module Basic ========================================================================== */ -.table-module { - height: 1000px; - overflow-y: auto; -} - .table-basic { display: table; border-collapse: collapse; @@ -438,6 +439,23 @@ main { text-decoration: none; } +.odswidget-pagination { + margin-bottom: 50px; +} + + + +/* Map */ +.odswidget-map__map { + min-height: 550px; +} +.map-active { + height: 550px; + overflow-y: auto; +} + + + /** Specific override for custom views **/ @media screen and (min-width: 1408px) { .ods-dataset-visualization .ods-tabs__pane .container:not(.is-max-desktop):not(.is-max-widescreen) { diff --git a/content/generators/listing-generator/doc/index.md b/content/generators/listing-generator/doc/index.md new file mode 100644 index 000000000..6984ba160 --- /dev/null +++ b/content/generators/listing-generator/doc/index.md @@ -0,0 +1,253 @@ +--- +title: Listing Generator documentation +date: "2022-02-10T00:00:00+01:00" +description: Complete list of options for the listing generator resource +tags: ["display", "navigation", "list", "map", "aggregation"] +nocode: true +--- + +Welcome to the Listing Generator documentation ! +Find the [code and live examples above](#automated-listing-visualization). + +### Before start, important read + +The listing generator is an HTML template powered by ods-widgets library from Huwise. ods-widgets library relies on AngularJs and therefore propose directives and expressions to operate dynamic behavior into your pages. +Settings set within the page. You'll therefore need to pay attention to the following section to avoid input mistakes. + +#### First, a minimalist example + +A simple page containing a variable declaration into an ng-init directive: + +```html +
+

+ {{ title }} +

+
+``` + +- `title` is a variable, and `Any text here...` its value + +The value is then between quotes `'`. + +> A common error is omitting to escape (protect) apostrophes with a leading backslash (ie `\'`). +Apostrophes are used to declare keys and values in object, and therefore are reserved characters. This is the reason why they MUST be escaped. + + +```javascript +wrongVariable = 'I'll be freed from apostrophes'; // This leads to an error !!! +``` + +```javascript +correctVariable = 'I\'ll be freed from apostrophes'; // Ok ! +``` + +## General settings + +#### `domain` + +Domain URL (string) : Must contain the URL of the domain where the dataset is published. +``` +domain = 'userclub.huwise.com'; +``` + +#### `datasetid` + +Dataset ID (string) : Must contain the ID of the dataset +``` +datasetid = 'oeuvres-de-johannes-vermeer'; +``` + +#### `sort` + +Sort (string) : a sort parameter +``` +sort = '-date'; +``` + +**Note:** The field must be sortable (numeric,date,facet or sortable text field) + +## Filters settings + +#### `filters` + +List of filter configurations to generate the filters panel. +Parameters are : +- id (string) : the ID of the field +- multiple (boolean) : true or false, to allow the user to select multiple values in the filter +- label (string) : a custom placeholder instead of the field label + +**Note :** The field must be a facet in the dataset +**Note :** Alphanumerical sort is applied in the filter view + +``` +filters = [ + {'id':'filterid','multiple':true}, + {'id':'filterid2','multiple':false,'label':'ID of the filter'} + ]; +``` + +#### `resetFiltersButton` + +resetFiltersButton (boolean) : true or false, add a reset filters button after filters block --> +``` +resetFiltersButton = true; +``` + +#### `resetFiltersButtonLabel` + +resetFiltersButtonLabel (string) : label of the reset filters button +``` +resetFiltersButtonLabel = 'Clear all filters'; +``` + +## Date settings + +#### `fieldDate` + +fieldDate (string) : a date field to display a date-range-slider +``` +fieldDate = 'date'; +``` + +#### `resetFiltersButton` +resetFiltersButton (boolean) : true or false, display a button to reset the date period selection +``` +resetFiltersButton = true; +``` + +#### `fieldDefaultRangeStartsNow` +fieldDefaultRangeStartsNow (boolean) : +- false : set the date range based on the data, ie. start from the first date, and end to the last date +- true : the range starts from now (the calendar day), to the last date + +``` +fieldDefaultRangeStartsNow = false; +``` + +## List view settings + +#### `view` +view (string) : Type of the view to list results, can be `table` or `cards` +``` +view = 'cards'; +``` + +#### `noResultMsg` (only available if `view` is set to `cards`) +noResultMsg (string) : the message to display if no results + +``` +noResultMsg = 'No more results.'; +``` + +#### `fieldsList` + +fieldsList (list) : Set the list of fields + +##### Simple mode : can be an array of field IDs +``` +fieldsList = ['title','category','genre','date']; +``` + +##### Advanced mode : can be an array of object. + + Each object describes the field format and provide optional options. + - `field` (string) : mandatory, the ID of te field + - `format` (string) : optional, can be 'date' or 'number' + - `options` (string) : optional, format options + - for `number` format : + - `precision` (string) : set the number of digit for decimals + - `unit` (string) : set an unit after the value + - for `date` format : + - `dateFormat` (string) : date format, according to [Angularjs date filter syntax](https://www.w3schools.com/angular/ng_filter_date.asp) + - label (string) : optional, define your own label for this field. + - if not set : use the default label from the dataset + - if set to a string, use this string as label + - if set to an empty string `''`, remove the field label (for `cards` view only). + +``` +fieldsList = [ + {'field':'address'}, + {'field':'city'}, + {'field':'price', 'format':'number', 'options': {'precision':1, 'unit':'$'}}, + {'field':'date_start','format':'date'}, + {'field':'date_end','format':'date', 'options': {'dateFormat':'longDate'}} + ]; +``` + +#### `fieldLink` + +fieldLink (string) : the field ID of external resource as a web URL +``` +link = 'urlfield'; +``` + +#### `fieldLinkLabel` + +fieldLinkLabel (string) : Label of the external resource link +``` +fieldLinkLabel = 'Read more here'; +``` + +#### `cardTitle` (only available if `view` is set to `cards`) +cardTitle (string) : id of the field used as a title of the card +``` +cardTitle = 'title'; +``` + +#### `fieldPhoto` (only available if `view` is set to `cards`) +fieldPhoto (string) : (Field id of the image field if any) +``` +fieldPhoto = 'image'; +```` + +#### `imagePosition` (only available if `view` is set to `cards`) +imagePosition (string) : (Image position) : Image position in the card, can be 'top' or 'left' +``` +imagePosition = 'left'; +``` + +#### `itemsPerRow` +itemsPerRow (string) : number of columns in the cards and KPI layout, must be a 12 multiple (1, 2, 3, 4, 6 or 12). +``` +itemsPerRow = '3'; +``` + +## KPI Settings + +KPI settings is a list of object that describes each KPI. +Available options are : +- `title` (string) : mandatory, name of the KPI, ex: 'City population' +- `select` (string) : mandatory, API V2 select, containing the calculation to perform, ex: 'sum(population)' or 'count(*)' +- `precision` (string) : optional, decimal precision of the KPI, ex: 2 +- `unit` (string) : optional, KPI unit, ex: 'citizens' +- `faicon` (stirng) : optional, FontAwesome icon id, ex: 'square-o' (omit the fa- prefix) + +[Please see the documentation for more information regarding the select](https://help.huwise.com/apis/ods-explore-v2/#section/Huwise-Query-Language-(ODSQL)) + +[Please see all available Fontawesome icons here](https://fontawesome.com/v4.7.0/icons/) + +``` +kpis = [ + { + 'title': 'Taille moyenne', + 'select': 'avg(surface), + 'precision': 2, + 'unit': 'm2', + 'faicon': 'square-o' + }, + { + 'title': 'Nombre d\'oeuvre référencées', + 'select': 'count(*)' + } + ]; +``` + +#### `sourceLinkLabel` + +sourceLinkLabel (string) : the label of the 'access to source' link + +``` +sourceLinkLabel = 'Direct access to the data'; +``` \ No newline at end of file diff --git a/content/generators/listing-generator/index.md b/content/generators/listing-generator/index.md index f5fedd4ff..4ce594164 100644 --- a/content/generators/listing-generator/index.md +++ b/content/generators/listing-generator/index.md @@ -1,8 +1,13 @@ --- title: "Listing Generator" +date: "2022-02-10T00:00:00+01:00" description: "Ideal for listing! Edit only a few settings to generate a modern looking visulization that uses ODS components and widgets." tags: ["display", "navigation", "list"] resources: - src: '*/' name: folder-:counter --- + +> The code of these resources is not meant to be modified. It requires good development skills and strong knowledge of widgets. Huwise will encourage to develop your own page if it doesn't suit your needs (and therefor won't provide support if you still try to modified it) + +Find [the complete documentation](/generators/listing-generator/#listing-generator-documentation) at the end of this page \ No newline at end of file diff --git a/content/generators/listing-generator/posthtml.inc b/content/generators/listing-generator/posthtml.inc index cd4d9bd8d..42925e7b2 100644 --- a/content/generators/listing-generator/posthtml.inc +++ b/content/generators/listing-generator/posthtml.inc @@ -1,375 +1,388 @@ - DO_NOT_MODIFY_BELOW; - - ctxfields = {}; - values = {}; - activeFilters = {}; - "> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {{ctxdate.parameters={'q.date': fieldDate + '>#now()'};''}} - - -

- {{ ctx.dataset.metas.title }} -

- -

- - - {{ ctxfields[field.name] = field.label; '' }} - - - - {{ ctx.parameters['refine.' + filter.id] = activeFilters[filter.id] ; '' }} - - -
- -
- - - -
- - -
-
- {{ ctx.parameters['disjunctive.' + filter.id] = true; '' }} -
- -
-
- -
-
- {{ resetFiltersButtonLabel }} - -
-
-
- - -
- - - - {{ values['periode']['min'] = dateminmax.results[0].x.year + '-' + (10 > dateminmax.results[0].x.month?'0':'') + dateminmax.results[0].x.month + '-' + (10 > dateminmax.results[0].x.day?'0':'') + dateminmax.results[0].x.day; - values['periode']['max'] = dateminmax.results[dateminmax.results.length-1].x.year + '-' + (10 > dateminmax.results[dateminmax.results.length-1].x.month?'0':'') + dateminmax.results[dateminmax.results.length-1].x.month + '-' + (10 > dateminmax.results[dateminmax.results.length-1].x.day?'0':'') + dateminmax.results[dateminmax.results.length-1].x.day; - ''}} - + + DO_NOT_MODIFY_BELOW; + + localctxfields = {}; + values = {}; + activeFilters = {}; + localctx = undefined; + "> + + + {{ localctx = ctx || localctx ; '' }} + + + + + + {{localctx.parameters['sort'] = sort; ''}} + + + + {{localctxdate.parameters={'q.date': fieldDate + '>#now()'}; ''}} + + +
+

+ {{ localctx.dataset.metas.title }} +

+ +

+
+ + + {{ localctxfields[field.name] = field.label; '' }} - - - - - - -
- Toute la période -
- -
-
- - -
-
- -
- -

- {{ (agg || 0) | number : (kpi.precision || 0) }} - {{ kpi.unit }} -

-

- {{ kpi.title }} -

-
-
-
- - -
-
- - - - - - - - - - - - - -
{{ ctxfields[field] }}
- {{ item.fields[field] }} - - - - - - - - - - - -
-
-
- - -
-
-
-
-
-
-
-

- {{ item.fields[cardTitle] }} -

-
-
-
{{ ctxfields[field] }}
-
{{ item.fields[field] }}
-
-
- -
-
-
-
-
- - Accéder aux données source +
+ + {{ localctx.parameters['refine.' + filter.id] = activeFilters[filter.id] ; '' }} + +
+ +
+ +
+ + + +
+ + +
+
+ {{ localctx.parameters['disjunctive.' + filter.id] = true; '' }} +
+ +
+
+ +
+ +
+
+ + +
+ + + + {{ values['periode']['min'] = dateminmax.results[0].x.year + '-' + (10 > dateminmax.results[0].x.month?'0':'') + dateminmax.results[0].x.month + '-' + (10 > dateminmax.results[0].x.day?'0':'') + dateminmax.results[0].x.day; + values['periode']['max'] = dateminmax.results[dateminmax.results.length-1].x.year + '-' + (10 > dateminmax.results[dateminmax.results.length-1].x.month?'0':'') + dateminmax.results[dateminmax.results.length-1].x.month + '-' + (10 > dateminmax.results[dateminmax.results.length-1].x.day?'0':'') + dateminmax.results[dateminmax.results.length-1].x.day; + ''}} + + + + + + + + + + + +
+
+ + +
+
+ +
+ +

+ {{ (agg[0].x || 0) | number : (kpi.precision || 0) }} + {{ kpi.unit }} +

+

+ {{ kpi.title }} +

+
+
+
+ + + + + +
+
+ + + {{ localctx.parameters['start'] = + (localctx.nhits - localctx.parameters['start']) <= 0 ? undefined : localctx.parameters['start'] ; '' }} + + + + + + + + + + + + + + +
{{ localctxfields[field] }}{{ fieldconfig.label || localctxfields[fieldconfig.field] }}
+ {{ item.fields[field] }} + + + + {{ item.fields[fieldconfig.field] | number : (fieldconfig.options.precision || 0) }} {{ fieldconfig.options.unit }} + + + {{ item.fields[fieldconfig.field] | date : (fieldconfig.options.dateFormat || 'mediumDate') }} + + + {{ item.fields[fieldconfig.field] }} + + + + + + + + + + + + + +
+
+
+ + + + +
+
+ +
+
+
+
+

+ {{ item.fields[$parent.$parent.$parent.$parent.$parent.cardTitle] }} +

+
+ +
+
+ {{ $parent.$parent.$parent.$parent.$parent.localctxfields[field] }} +
+
+ {{ item.fields[field] }} +
+
+ +
+
+ {{ (fieldconfig|keys).indexOf('label')>=0?fieldconfig.label : $parent.$parent.$parent.$parent.$parent.localctxfields[fieldconfig.field] }} +
+
+ + {{ item.fields[fieldconfig.field] | number : (fieldconfig.options.precision || 0) }} {{ fieldconfig.options.unit }} + + + {{ item.fields[fieldconfig.field] | date : (fieldconfig.options.dateFormat || 'mediumDate') }} + + + {{ item.fields[fieldconfig.field] }} + +
+
+
+ +
+
+
+
+
+ + + + + +
+
+ + +
-
+ +
\ No newline at end of file diff --git a/content/generators/listing-generator/prehtml.inc b/content/generators/listing-generator/prehtml.inc index 427b02076..d6f3b3dbc 100644 --- a/content/generators/listing-generator/prehtml.inc +++ b/content/generators/listing-generator/prehtml.inc @@ -1,26 +1 @@ - - - - - -
Architecture religieuse,Religion > Christianisme,Art > Moyen Age,Habitat / Architecture > Vue intérieure|Arrondissement IV |Eglise, Vitraux |Autochrome |1911-1913 (?) |https://opendata.hauts-de-seine.fr/api/v2/catalog/datasets/archives-de-la-planete-paris/files/b43f9eefacb9cd0425b64b1dfc98182f|Vitraux du chœur de la chapelle haute de la Sainte-Chapelle |48.85535,2.345259 | +|opérateur non mentionné |Habitat / Architecture > Palais / Château|Arrondissement I/Louvre |Musée, Place |Autochrome |1911-1913 (?) |https://opendata.hauts-de-seine.fr/api/v2/catalog/datasets/archives-de-la-planete-paris/files/d9facf2c30be75bca06d0b827c7eba07|Aile Richelieu du Palais du Louvre depuis la place du Carrousel |48.861613,2.336221| +|opérateur non mentionné |Habitat / Architecture > Architecture civile publique,Sciences / Techniques > Astronomie|Arrondissement XIV | |Autochrome |1911-1913 (?) |https://opendata.hauts-de-seine.fr/api/v2/catalog/datasets/archives-de-la-planete-paris/files/f81844dadc15b884c63fe4350113101c|L'Observatoire vu de la rue Cassini |48.837325,2.336566| +|Fernand Cuvil |Activite économique > Industrie,Art > Moyen Age,Habitat / Architecture > Usine / atelier|Arrondissement XIII |Hôtel particulier|Autochrome |1911-1913 (?) |https://opendata.hauts-de-seine.fr/api/v2/catalog/datasets/archives-de-la-planete-paris/files/e46007bc138d98d7131395595f9bdfeb|L'hôtel de la reine Blanche au 17 rue des Gobelins |48.837518,2.351398| + diff --git a/content/generators/map-listing/index.md b/content/generators/map-listing/index.md index 6a62246a1..2bad26cbe 100644 --- a/content/generators/map-listing/index.md +++ b/content/generators/map-listing/index.md @@ -7,4 +7,6 @@ resources: name: folder-:counter --- +> Note: The listing generator V3 can now handle maps, pagination and other new features. We then recommend to use the [listing generator](/generators/listing-generator/) instead of this resource. + Edit only a few settings to generate a modern looking visualization that uses ODS components and widgets. diff --git a/content/generators/map-listing/posthtml.inc b/content/generators/map-listing/posthtml.inc index 275ae45fd..f0c23f98b 100644 --- a/content/generators/map-listing/posthtml.inc +++ b/content/generators/map-listing/posthtml.inc @@ -8,7 +8,7 @@ diff --git a/public/widget-tricks/heatmaps-vegalite/2/css.inc b/content/page-templates/advanced-search/1-recherche/css.inc similarity index 100% rename from public/widget-tricks/heatmaps-vegalite/2/css.inc rename to content/page-templates/advanced-search/1-recherche/css.inc diff --git a/content/page-templates/advanced-search/1-recherche/html.inc b/content/page-templates/advanced-search/1-recherche/html.inc new file mode 100644 index 000000000..bff760368 --- /dev/null +++ b/content/page-templates/advanced-search/1-recherche/html.inc @@ -0,0 +1,218 @@ + + +
+ {{ values.motcles = motcles ; '' }} +
+ +
+ {{ values.items = items ; '' }} +
+ +
+
+

+ Page de recherche avancée +

+ +
+ + +
+ +
+ + +
+ +
+ Type marché : {{ boamp.parameters['refine.type_marche_facette'] }} + + + +
+ +
+ Statut de l’avis : {{ boamp.parameters['q.etat_avis'] }} +
+ + +
+
+ + +
+
+ + +
+ + + {{ values.statut_avis == 0 ? boamp.parameters['q.etat_avis'] = '(NOT #null(datelimitereponse) AND datelimitereponse>="' + datedujour + '") OR (#null(datelimitereponse) AND datefindiffusion>="' + datedujour + '")' : '' ; '' }} + {{ values.statut_avis == 1 ? boamp.parameters['q.etat_avis'] = '(NOT #null(datelimitereponse) AND datelimitereponse<"' + datedujour + '") OR (#null(datelimitereponse) AND datefindiffusion<"' + datedujour + '")' : '' ; '' }} + {{ values.statut_avis == 2 ? boamp.parameters['q.etat_avis'] = null : '' ; '' }} +
+ +
+ + + +
+ +
+ + +
+ +
+ + + + + Date de publication + ( format : jj/mm/aaaa ) + +
+ +
+ +
+
    +
  • + +
    +

    + Annonce supprimée +

    +
    + + {{link_to_annonce = "https://userclub.huwise.com/pages/advanced-search-fiche?q=idweb:" + '"' + item.fields.idweb + '"' ; '' }} + +
    + +

    +
    + +
    +
      +
    • + Objet : + +
    • +
    • + Département : + {{dept}} +
    • +
    • + Acheteur : +
    • + +
    • + Type d'avis : + + - + - rectificatif + - annulation + - rectificatif et annulation +
    • + +
    • + Procédure : + +
    • + +
    • + Date de parution : + + - date limite de réponse : + +
    • +
    +
    +
    +
  • +
+ + + +
+
+ +
\ No newline at end of file diff --git a/content/page-templates/advanced-search/1-recherche/index.md b/content/page-templates/advanced-search/1-recherche/index.md new file mode 100644 index 000000000..d399fa2e7 --- /dev/null +++ b/content/page-templates/advanced-search/1-recherche/index.md @@ -0,0 +1,6 @@ +--- +title: "Advanced search with most common inputs - Search form" +date: 2023-08-09 +--- + + diff --git a/public/widget-tricks/heatmaps-vegalite/3/css.inc b/content/page-templates/advanced-search/2-fiche/css.inc similarity index 100% rename from public/widget-tricks/heatmaps-vegalite/3/css.inc rename to content/page-templates/advanced-search/2-fiche/css.inc diff --git a/content/page-templates/advanced-search/2-fiche/html.inc b/content/page-templates/advanced-search/2-fiche/html.inc new file mode 100644 index 000000000..c8d7102d3 --- /dev/null +++ b/content/page-templates/advanced-search/2-fiche/html.inc @@ -0,0 +1,467 @@ + + +
+ +

+ +

+ Date limite de réponse le {{date_str_FormatFr}} à {{time_display}} +

+

+ +
    +
  • + Objet : + +
  • +
  • + Département : + {{dept}} +
  • +
  • + Acheteur : +
  • + +
  • + Type d'avis : + + - + - rectificatif + - annulation + - rectificatif et annulation +
  • + +
  • + Procédure : + +
  • + +
  • + Date de parution : + + - date limite de réponse : + +
  • +
+ +

+ L’essentiel du marché +

+ + +
+
+ +
    +
  • +
    + + +
  • + +
  • + A l'attention de :
    + +
  • + +
  • + Adresse :
    + + + + +
  • + +
  • + Téléphone :
    + +
  • + +
  • + Poste :
    + +
  • + +
  • + Télécopieur :
    + +
  • + +
  • + Point(s) de contact :
    + +
  • + +
  • + Courriel :
    + +
  • + +
  • + + +
    + +
  • + +
  • + Adresse internet du profil d'acheteur :
    + +
  • + +
  • + Accès électronique à l'information :
    + +
  • + +
  • + Soumission des offres et des demandes de participation par voie électronique :
    + +
  • + + +
    +
  • + Objet du marché :
    + +
  • + + + + + +
  • + Lieu d'exécution des travaux, de livraison fournitures ou de prestation des services
    + +
    +
  • + +
  • + Autres caractéristiques et informations sur la nature et l'objet de la convention :
    + +
  • + +
  • + Durée de la délégation :
    + ans + mois + +
  • + +
  • + Date à partir de laquelle la convention prend effet :
    + +
  • + + + +
  • + Possibilité de présenter une offre pour :
    + un lot + un ou plusieurs lots + tous les lots +
  • + + + + + +
  • + + Renseignements relatifs aux lots :
    + + +
      +
    • + +
      +
      + +
    • +
    + +
  • + + +
  • + Caractéristiques principales :
    + +
  • + +
  • + Quantité ou étendue :
    + +
  • + + +
    +
  • + L'avis implique l'établissement d'un accord-cadre +
  • + +
  • + La prestation est réservée à une profession particulière :
    + +
  • +
    +
+ +

+ Informations pratiques +

+ +
    +
  • + Date limite de réception des candidatures :
    + {{ date_str_FormatFr }} à {{time_display}} + + + +
  • + +
  • + Date limite de réception des offres :
    + + {{ date_str_FormatFr }} à {{time_display}} + + + + +
  • + + + +
  • + Délai minimum de validité des offres :
    + + + + mois + + et + + + jours + +
  • + + +
  • + Conditions de participations :
    + +
  • + + +
  • + Situation propre :
    +
    + Critères relatifs à la situation personnelle d'opérateurs économiques (susceptibles d'entraîner leur exclusion), y compris exigences relatives à leur inscription à un registre professionnel ou du commerce. Renseignements et formalités nécessaires pour évaluer si ces exigences sont remplies :
    + +
    + +
    + Critères relatifs à la situation personnelle de sous-traitants (susceptibles d'entraîner leur rejet), y compris exigences relatives à leur inscription à un registre professionnel ou du commerce. Renseignements et formalités nécessaires pour évaluer si ces exigences sont remplies :
    + +
    +
  • + + +
  • + Capacité économique et financière - références requises :
    +
      +
    • + + Critères relatifs à la situation économique et financière d'opérateurs économiques (susceptibles d'entraîner leur exclusion). Renseignements et formalités nécessaires pour évaluer si ces exigences sont remplies :
      +
      + +
    • + +
    • + + Niveau(x) spécifique(s) minimal(aux) exigé(s) :
      +
      + +
    • + +
    • + + Critères relatifs à la situation économique et financière de sous-traitants (susceptibles d'entraîner leur rejet). Renseignements et formalités nécessaires pour évaluer si ces exigences sont remplies :
      +
      + +
    • + +
    • + + Niveau(x) spécifique(s) minimal(aux) exigé(s) : + + + +
    • + +
    +
  • + + +
  • + Référence professionnelle et/ou capacité technique - références requises :
    +
      +
    • + Critères relatifs à la capacité technique et/ou professionnelle d'opérateurs économiques (susceptibles d'entraîner leur exclusion). Renseignements et formalités nécessaires pour évaluer si ces exigences sont remplies : +
      +
      + +
    • + +
    • + Niveau(x) spécifique(s) minimal(aux) exigé(s) : + + +
    • + +
    • + Critères relatifs à la capacité technique et/ou professionnelle de sous-traitants (susceptibles d'entraîner leur rejet). Renseignements et formalités nécessaires pour évaluer si ces exigences sont remplies : +
      +
      + +
    • + +
    • + Niveau(x) spécifique(s) minimal(aux) exigé(s) : + + +
    • +
    +
  • + + + + +
  • + Conditions et mode de paiement pour obtenir les documents contractuels et additionnels :
    + + +
    +
      +
    • + date limite d'obtention :
      + + +
    • + +
    • + + Prix :
      + + +
    • +
    +
    +
  • + + + + + +
    + + + +
      +
    • + + Adresse auprès de laquelle les documents peuvent être obtenus :
      + Adresse à laquelle les offres/candidatures/projets/demandes de participation doivent être envoyés :
      + Adresse auprès de laquelle des renseignements d'ordre administratif peuvent être obtenus :
      + Adresse auprès de laquelle des renseignements d'ordre technique peuvent être obtenus :
      + Adresse auprès de laquelle des renseignements d'ordre administratif et technique peuvent être obtenus :
      + Adresse auprès de laquelle les documents peuvent être obtenus :
      + Adresse auprès de laquelle des renseignements complémentaires peuvent être obtenus :
      + +
      +
      +
      +
      + Correspondant :
      + Contact:
      + + + + + +
      +
      + Poste :
      + Fax :
      + Courriel :
      + Adresse internet :
      + +
      + +
    • +
    +
    +
+
+
diff --git a/content/page-templates/advanced-search/2-fiche/index.md b/content/page-templates/advanced-search/2-fiche/index.md new file mode 100644 index 000000000..5bbbc9e58 --- /dev/null +++ b/content/page-templates/advanced-search/2-fiche/index.md @@ -0,0 +1,6 @@ +--- +title: "Advanced search with most common inputs - Details" +date: 2023-08-09 +--- + + diff --git a/content/page-templates/advanced-search/index.md b/content/page-templates/advanced-search/index.md new file mode 100644 index 000000000..a4eb2681c --- /dev/null +++ b/content/page-templates/advanced-search/index.md @@ -0,0 +1,12 @@ +--- +title: "Advanced search" +description: "A template to take advantage of AngularJs ng-model directives on HTML forms to develop advanced search pages." +date: 2023-08-09 +tags: ["search"] +draft: true +resources: +- src: '*/' + name: folder-:counter +--- + +This example demonstrate how to get the value of HTML form inputs and use them to filter a context. \ No newline at end of file diff --git a/content/page-templates/css-grid-framework/0-benefits/css.inc b/content/page-templates/css-grid-framework/0-benefits/css.inc index 8ebff36dd..f6e1a56ad 100644 --- a/content/page-templates/css-grid-framework/0-benefits/css.inc +++ b/content/page-templates/css-grid-framework/0-benefits/css.inc @@ -1,9 +1,9 @@ /** * License: MIT License * Generated on 25 May 2021 - * Author: Fpassaniti for Opendatasoft + * Author: Fpassaniti for Huwise * Version: 0.1 - * Description: CSS Grid framework for Opendatasoft pages (and more). Go to http://codelibrary.opendatasoft.com/ for more information (doc & examples). + * Description: CSS Grid framework for Huwise pages (and more). Go to http://codelibrary.huwise.com/ for more information (doc & examples). */ [class^=grid]{display:grid;grid-gap:1rem}.grid-auto,.grid-auto-flow,.grid-cols-auto-flow{grid-auto-flow:column}.grid-rows-auto-flow{grid-auto-flow:row}.grid-cols-fit,.grid-fit{grid-auto-columns:max-content}.grid-rows-fit{grid-auto-rows:max-content}.grid-2,.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3,.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4,.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-5,.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-6,.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-7,.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.grid-8,.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.grid-9,.grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.grid-10,.grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.grid-11,.grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.grid-12,.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.grid-cols-none{grid-template-columns:none}.grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.grid-rows-none{grid-template-rows:none}[class*=":cell"],[class^=cell]{display:flex;flex-direction:column;justify-content:stretch}.cell-auto,.cell-span-auto{grid-column:auto}.cell-full,.cell-span-full{grid-column:1/-1}.cell-1,.cell-span-1{grid-column:span 1/span 1}.cell-2,.cell-span-2{grid-column:span 2/span 2}.cell-3,.cell-span-3{grid-column:span 3/span 3}.cell-4,.cell-span-4{grid-column:span 4/span 4}.cell-5,.cell-span-5{grid-column:span 5/span 5}.cell-6,.cell-span-6{grid-column:span 6/span 6}.cell-7,.cell-span-7{grid-column:span 7/span 7}.cell-8,.cell-span-8{grid-column:span 8/span 8}.cell-9,.cell-span-9{grid-column:span 9/span 9}.cell-10,.cell-span-10{grid-column:span 10/span 10}.cell-11,.cell-span-11{grid-column:span 11/span 11}.cell-12,.cell-span-12{grid-column:span 12/span 12}.cell-row-auto{grid-row:auto}.cell-row-full{grid-row:1/-1}.cell-row-1,.cell-row-span-1{grid-row:span 1/span 1}.cell-row-2,.cell-row-span-2{grid-row:span 2/span 2}.cell-row-3,.cell-row-span-3{grid-row:span 3/span 3}.cell-row-4,.cell-row-span-4{grid-row:span 4/span 4}.cell-row-5,.cell-row-span-5{grid-row:span 5/span 5}.cell-row-6,.cell-row-span-6{grid-row:span 6/span 6}.cell-col-start-1,.cell-start-1{grid-column-start:1}.cell-col-end-1,.cell-end-1{grid-column-end:1}.cell-col-start-2,.cell-start-2{grid-column-start:2}.cell-col-end-2,.cell-end-2{grid-column-end:2}.cell-col-start-3,.cell-start-3{grid-column-start:3}.cell-col-end-3,.cell-end-3{grid-column-end:3}.cell-col-start-4,.cell-start-4{grid-column-start:4}.cell-col-end-4,.cell-end-4{grid-column-end:4}.cell-col-start-5,.cell-start-5{grid-column-start:5}.cell-col-end-5,.cell-end-5{grid-column-end:5}.cell-col-start-6,.cell-start-6{grid-column-start:6}.cell-col-end-6,.cell-end-6{grid-column-end:6}.cell-col-start-7,.cell-start-7{grid-column-start:7}.cell-col-end-7,.cell-end-7{grid-column-end:7}.cell-col-start-8,.cell-start-8{grid-column-start:8}.cell-col-end-8,.cell-end-8{grid-column-end:8}.cell-col-start-9,.cell-start-9{grid-column-start:9}.cell-col-end-9,.cell-end-9{grid-column-end:9}.cell-col-start-10,.cell-start-10{grid-column-start:10}.cell-col-end-10,.cell-end-10{grid-column-end:10}.cell-col-start-11,.cell-start-11{grid-column-start:11}.cell-col-end-11,.cell-end-11{grid-column-end:11}.cell-col-start-12,.cell-start-12{grid-column-start:12}.cell-col-end-12,.cell-end-12{grid-column-end:12}.cell-col-start-13,.cell-start-13{grid-column-start:13}.cell-col-end-13,.cell-end-13{grid-column-end:13}.cell-row-start-1{grid-row-start:1}.cell-row-end-1{grid-row-end:1}.cell-row-start-2{grid-row-start:2}.cell-row-end-2{grid-row-end:2}.cell-row-start-3{grid-row-start:3}.cell-row-end-3{grid-row-end:3}.cell-row-start-4{grid-row-start:4}.cell-row-end-4{grid-row-end:4}.cell-row-start-5{grid-row-start:5}.cell-row-end-5{grid-row-end:5}.cell-row-start-6{grid-row-start:6}.cell-row-end-6{grid-row-end:6}.cell-row-start-7{grid-row-start:7}.cell-row-end-7{grid-row-end:7}.cell-order-first{order:-9999}.cell-order-last{order:9999}.cell-order-none{order:0}.cell-order-1{order:1}.cell-order-2{order:2}.cell-order-3{order:3}.cell-order-4{order:4}.cell-order-5{order:5}.cell-order-6{order:6}.cell-order-7{order:7}.cell-order-8{order:8}.cell-order-9{order:9}.cell-order-10{order:10}.cell-order-11{order:11}.cell-order-12{order:12}@media screen and (min-width:640px),print{.sm\:grid-2,.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-3,.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-4,.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-5,.sm\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.sm\:grid-6,.sm\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.sm\:grid-7,.sm\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.sm\:grid-8,.sm\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.sm\:grid-9,.sm\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.sm\:grid-10,.sm\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.sm\:grid-11,.sm\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.sm\:grid-12,.sm\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.sm\:grid-cols-none{grid-template-columns:none}.sm\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.sm\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.sm\:grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.sm\:grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.sm\:grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.sm\:grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.sm\:grid-rows-none{grid-template-rows:none}.sm\:cell-auto,.sm\:cell-span-auto{grid-column:auto}.sm\:cell-full,.sm\:cell-span-full{grid-column:1/-1}.sm\:cell-1,.sm\:cell-span-1{grid-column:span 1/span 1}.sm\:cell-2,.sm\:cell-span-2{grid-column:span 2/span 2}.sm\:cell-3,.sm\:cell-span-3{grid-column:span 3/span 3}.sm\:cell-4,.sm\:cell-span-4{grid-column:span 4/span 4}.sm\:cell-5,.sm\:cell-span-5{grid-column:span 5/span 5}.sm\:cell-6,.sm\:cell-span-6{grid-column:span 6/span 6}.sm\:cell-7,.sm\:cell-span-7{grid-column:span 7/span 7}.sm\:cell-8,.sm\:cell-span-8{grid-column:span 8/span 8}.sm\:cell-9,.sm\:cell-span-9{grid-column:span 9/span 9}.sm\:cell-10,.sm\:cell-span-10{grid-column:span 10/span 10}.sm\:cell-11,.sm\:cell-span-11{grid-column:span 11/span 11}.sm\:cell-12,.sm\:cell-span-12{grid-column:span 12/span 12}.sm\:cell-row-auto{grid-row:auto}.sm\:cell-row-full{grid-row:1/-1}.sm\:cell-row-1,.sm\:cell-row-span-1{grid-row:span 1/span 1}.sm\:cell-row-2,.sm\:cell-row-span-2{grid-row:span 2/span 2}.sm\:cell-row-3,.sm\:cell-row-span-3{grid-row:span 3/span 3}.sm\:cell-row-4,.sm\:cell-row-span-4{grid-row:span 4/span 4}.sm\:cell-row-5,.sm\:cell-row-span-5{grid-row:span 5/span 5}.sm\:cell-row-6,.sm\:cell-row-span-6{grid-row:span 6/span 6}.sm\:cell-col-start-1,.sm\:cell-start-1{grid-column-start:1}.sm\:cell-col-end-1,.sm\:cell-end-1{grid-column-end:1}.sm\:cell-col-start-2,.sm\:cell-start-2{grid-column-start:2}.sm\:cell-col-end-2,.sm\:cell-end-2{grid-column-end:2}.sm\:cell-col-start-3,.sm\:cell-start-3{grid-column-start:3}.sm\:cell-col-end-3,.sm\:cell-end-3{grid-column-end:3}.sm\:cell-col-start-4,.sm\:cell-start-4{grid-column-start:4}.sm\:cell-col-end-4,.sm\:cell-end-4{grid-column-end:4}.sm\:cell-col-start-5,.sm\:cell-start-5{grid-column-start:5}.sm\:cell-col-end-5,.sm\:cell-end-5{grid-column-end:5}.sm\:cell-col-start-6,.sm\:cell-start-6{grid-column-start:6}.sm\:cell-col-end-6,.sm\:cell-end-6{grid-column-end:6}.sm\:cell-col-start-7,.sm\:cell-start-7{grid-column-start:7}.sm\:cell-col-end-7,.sm\:cell-end-7{grid-column-end:7}.sm\:cell-col-start-8,.sm\:cell-start-8{grid-column-start:8}.sm\:cell-col-end-8,.sm\:cell-end-8{grid-column-end:8}.sm\:cell-col-start-9,.sm\:cell-start-9{grid-column-start:9}.sm\:cell-col-end-9,.sm\:cell-end-9{grid-column-end:9}.sm\:cell-col-start-10,.sm\:cell-start-10{grid-column-start:10}.sm\:cell-col-end-10,.sm\:cell-end-10{grid-column-end:10}.sm\:cell-col-start-11,.sm\:cell-start-11{grid-column-start:11}.sm\:cell-col-end-11,.sm\:cell-end-11{grid-column-end:11}.sm\:cell-col-start-12,.sm\:cell-start-12{grid-column-start:12}.sm\:cell-col-end-12,.sm\:cell-end-12{grid-column-end:12}.sm\:cell-col-start-13,.sm\:cell-start-13{grid-column-start:13}.sm\:cell-col-end-13,.sm\:cell-end-13{grid-column-end:13}.sm\:cell-row-start-1{grid-row-start:1}.sm\:cell-row-end-1{grid-row-end:1}.sm\:cell-row-start-2{grid-row-start:2}.sm\:cell-row-end-2{grid-row-end:2}.sm\:cell-row-start-3{grid-row-start:3}.sm\:cell-row-end-3{grid-row-end:3}.sm\:cell-row-start-4{grid-row-start:4}.sm\:cell-row-end-4{grid-row-end:4}.sm\:cell-row-start-5{grid-row-start:5}.sm\:cell-row-end-5{grid-row-end:5}.sm\:cell-row-start-6{grid-row-start:6}.sm\:cell-row-end-6{grid-row-end:6}.sm\:cell-row-start-7{grid-row-start:7}.sm\:cell-row-end-7{grid-row-end:7}.sm\:cell-order-first{order:-9999}.sm\:cell-order-last{order:9999}.sm\:cell-order-none{order:0}.sm\:cell-order-1{order:1}.sm\:cell-order-2{order:2}.sm\:cell-order-3{order:3}.sm\:cell-order-4{order:4}.sm\:cell-order-5{order:5}.sm\:cell-order-6{order:6}.sm\:cell-order-7{order:7}.sm\:cell-order-8{order:8}.sm\:cell-order-9{order:9}.sm\:cell-order-10{order:10}.sm\:cell-order-11{order:11}.sm\:cell-order-12{order:12}}@media screen and (min-width:768px),print{.md\:grid-2,.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-3,.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-4,.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-5,.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:grid-6,.md\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.md\:grid-7,.md\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.md\:grid-8,.md\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.md\:grid-9,.md\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.md\:grid-10,.md\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.md\:grid-11,.md\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.md\:grid-12,.md\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.md\:grid-cols-none{grid-template-columns:none}.md\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.md\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.md\:grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.md\:grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.md\:grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.md\:grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.md\:grid-rows-none{grid-template-rows:none}.md\:cell-auto,.md\:cell-span-auto{grid-column:auto}.md\:cell-full,.md\:cell-span-full{grid-column:1/-1}.md\:cell-1,.md\:cell-span-1{grid-column:span 1/span 1}.md\:cell-2,.md\:cell-span-2{grid-column:span 2/span 2}.md\:cell-3,.md\:cell-span-3{grid-column:span 3/span 3}.md\:cell-4,.md\:cell-span-4{grid-column:span 4/span 4}.md\:cell-5,.md\:cell-span-5{grid-column:span 5/span 5}.md\:cell-6,.md\:cell-span-6{grid-column:span 6/span 6}.md\:cell-7,.md\:cell-span-7{grid-column:span 7/span 7}.md\:cell-8,.md\:cell-span-8{grid-column:span 8/span 8}.md\:cell-9,.md\:cell-span-9{grid-column:span 9/span 9}.md\:cell-10,.md\:cell-span-10{grid-column:span 10/span 10}.md\:cell-11,.md\:cell-span-11{grid-column:span 11/span 11}.md\:cell-12,.md\:cell-span-12{grid-column:span 12/span 12}.md\:cell-row-auto{grid-row:auto}.md\:cell-row-full{grid-row:1/-1}.md\:cell-row-1,.md\:cell-row-span-1{grid-row:span 1/span 1}.md\:cell-row-2,.md\:cell-row-span-2{grid-row:span 2/span 2}.md\:cell-row-3,.md\:cell-row-span-3{grid-row:span 3/span 3}.md\:cell-row-4,.md\:cell-row-span-4{grid-row:span 4/span 4}.md\:cell-row-5,.md\:cell-row-span-5{grid-row:span 5/span 5}.md\:cell-row-6,.md\:cell-row-span-6{grid-row:span 6/span 6}.md\:cell-col-start-1,.md\:cell-start-1{grid-column-start:1}.md\:cell-col-end-1,.md\:cell-end-1{grid-column-end:1}.md\:cell-col-start-2,.md\:cell-start-2{grid-column-start:2}.md\:cell-col-end-2,.md\:cell-end-2{grid-column-end:2}.md\:cell-col-start-3,.md\:cell-start-3{grid-column-start:3}.md\:cell-col-end-3,.md\:cell-end-3{grid-column-end:3}.md\:cell-col-start-4,.md\:cell-start-4{grid-column-start:4}.md\:cell-col-end-4,.md\:cell-end-4{grid-column-end:4}.md\:cell-col-start-5,.md\:cell-start-5{grid-column-start:5}.md\:cell-col-end-5,.md\:cell-end-5{grid-column-end:5}.md\:cell-col-start-6,.md\:cell-start-6{grid-column-start:6}.md\:cell-col-end-6,.md\:cell-end-6{grid-column-end:6}.md\:cell-col-start-7,.md\:cell-start-7{grid-column-start:7}.md\:cell-col-end-7,.md\:cell-end-7{grid-column-end:7}.md\:cell-col-start-8,.md\:cell-start-8{grid-column-start:8}.md\:cell-col-end-8,.md\:cell-end-8{grid-column-end:8}.md\:cell-col-start-9,.md\:cell-start-9{grid-column-start:9}.md\:cell-col-end-9,.md\:cell-end-9{grid-column-end:9}.md\:cell-col-start-10,.md\:cell-start-10{grid-column-start:10}.md\:cell-col-end-10,.md\:cell-end-10{grid-column-end:10}.md\:cell-col-start-11,.md\:cell-start-11{grid-column-start:11}.md\:cell-col-end-11,.md\:cell-end-11{grid-column-end:11}.md\:cell-col-start-12,.md\:cell-start-12{grid-column-start:12}.md\:cell-col-end-12,.md\:cell-end-12{grid-column-end:12}.md\:cell-col-start-13,.md\:cell-start-13{grid-column-start:13}.md\:cell-col-end-13,.md\:cell-end-13{grid-column-end:13}.md\:cell-row-start-1{grid-row-start:1}.md\:cell-row-end-1{grid-row-end:1}.md\:cell-row-start-2{grid-row-start:2}.md\:cell-row-end-2{grid-row-end:2}.md\:cell-row-start-3{grid-row-start:3}.md\:cell-row-end-3{grid-row-end:3}.md\:cell-row-start-4{grid-row-start:4}.md\:cell-row-end-4{grid-row-end:4}.md\:cell-row-start-5{grid-row-start:5}.md\:cell-row-end-5{grid-row-end:5}.md\:cell-row-start-6{grid-row-start:6}.md\:cell-row-end-6{grid-row-end:6}.md\:cell-row-start-7{grid-row-start:7}.md\:cell-row-end-7{grid-row-end:7}.md\:cell-order-first{order:-9999}.md\:cell-order-last{order:9999}.md\:cell-order-none{order:0}.md\:cell-order-1{order:1}.md\:cell-order-2{order:2}.md\:cell-order-3{order:3}.md\:cell-order-4{order:4}.md\:cell-order-5{order:5}.md\:cell-order-6{order:6}.md\:cell-order-7{order:7}.md\:cell-order-8{order:8}.md\:cell-order-9{order:9}.md\:cell-order-10{order:10}.md\:cell-order-11{order:11}.md\:cell-order-12{order:12}}@media screen and (min-width:1024px),print{.lg\:grid-2,.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-3,.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-4,.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-5,.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-6,.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:grid-7,.lg\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.lg\:grid-8,.lg\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.lg\:grid-9,.lg\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.lg\:grid-10,.lg\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.lg\:grid-11,.lg\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.lg\:grid-12,.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-none{grid-template-columns:none}.lg\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.lg\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.lg\:grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.lg\:grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.lg\:grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.lg\:grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.lg\:grid-rows-none{grid-template-rows:none}.lg\:cell-auto,.lg\:cell-span-auto{grid-column:auto}.lg\:cell-full,.lg\:cell-span-full{grid-column:1/-1}.lg\:cell-1,.lg\:cell-span-1{grid-column:span 1/span 1}.lg\:cell-2,.lg\:cell-span-2{grid-column:span 2/span 2}.lg\:cell-3,.lg\:cell-span-3{grid-column:span 3/span 3}.lg\:cell-4,.lg\:cell-span-4{grid-column:span 4/span 4}.lg\:cell-5,.lg\:cell-span-5{grid-column:span 5/span 5}.lg\:cell-6,.lg\:cell-span-6{grid-column:span 6/span 6}.lg\:cell-7,.lg\:cell-span-7{grid-column:span 7/span 7}.lg\:cell-8,.lg\:cell-span-8{grid-column:span 8/span 8}.lg\:cell-9,.lg\:cell-span-9{grid-column:span 9/span 9}.lg\:cell-10,.lg\:cell-span-10{grid-column:span 10/span 10}.lg\:cell-11,.lg\:cell-span-11{grid-column:span 11/span 11}.lg\:cell-12,.lg\:cell-span-12{grid-column:span 12/span 12}.lg\:cell-row-auto{grid-row:auto}.lg\:cell-row-full{grid-row:1/-1}.lg\:cell-row-1,.lg\:cell-row-span-1{grid-row:span 1/span 1}.lg\:cell-row-2,.lg\:cell-row-span-2{grid-row:span 2/span 2}.lg\:cell-row-3,.lg\:cell-row-span-3{grid-row:span 3/span 3}.lg\:cell-row-4,.lg\:cell-row-span-4{grid-row:span 4/span 4}.lg\:cell-row-5,.lg\:cell-row-span-5{grid-row:span 5/span 5}.lg\:cell-row-6,.lg\:cell-row-span-6{grid-row:span 6/span 6}.lg\:cell-col-start-1,.lg\:cell-start-1{grid-column-start:1}.lg\:cell-col-end-1,.lg\:cell-end-1{grid-column-end:1}.lg\:cell-col-start-2,.lg\:cell-start-2{grid-column-start:2}.lg\:cell-col-end-2,.lg\:cell-end-2{grid-column-end:2}.lg\:cell-col-start-3,.lg\:cell-start-3{grid-column-start:3}.lg\:cell-col-end-3,.lg\:cell-end-3{grid-column-end:3}.lg\:cell-col-start-4,.lg\:cell-start-4{grid-column-start:4}.lg\:cell-col-end-4,.lg\:cell-end-4{grid-column-end:4}.lg\:cell-col-start-5,.lg\:cell-start-5{grid-column-start:5}.lg\:cell-col-end-5,.lg\:cell-end-5{grid-column-end:5}.lg\:cell-col-start-6,.lg\:cell-start-6{grid-column-start:6}.lg\:cell-col-end-6,.lg\:cell-end-6{grid-column-end:6}.lg\:cell-col-start-7,.lg\:cell-start-7{grid-column-start:7}.lg\:cell-col-end-7,.lg\:cell-end-7{grid-column-end:7}.lg\:cell-col-start-8,.lg\:cell-start-8{grid-column-start:8}.lg\:cell-col-end-8,.lg\:cell-end-8{grid-column-end:8}.lg\:cell-col-start-9,.lg\:cell-start-9{grid-column-start:9}.lg\:cell-col-end-9,.lg\:cell-end-9{grid-column-end:9}.lg\:cell-col-start-10,.lg\:cell-start-10{grid-column-start:10}.lg\:cell-col-end-10,.lg\:cell-end-10{grid-column-end:10}.lg\:cell-col-start-11,.lg\:cell-start-11{grid-column-start:11}.lg\:cell-col-end-11,.lg\:cell-end-11{grid-column-end:11}.lg\:cell-col-start-12,.lg\:cell-start-12{grid-column-start:12}.lg\:cell-col-end-12,.lg\:cell-end-12{grid-column-end:12}.lg\:cell-col-start-13,.lg\:cell-start-13{grid-column-start:13}.lg\:cell-col-end-13,.lg\:cell-end-13{grid-column-end:13}.lg\:cell-row-start-1{grid-row-start:1}.lg\:cell-row-end-1{grid-row-end:1}.lg\:cell-row-start-2{grid-row-start:2}.lg\:cell-row-end-2{grid-row-end:2}.lg\:cell-row-start-3{grid-row-start:3}.lg\:cell-row-end-3{grid-row-end:3}.lg\:cell-row-start-4{grid-row-start:4}.lg\:cell-row-end-4{grid-row-end:4}.lg\:cell-row-start-5{grid-row-start:5}.lg\:cell-row-end-5{grid-row-end:5}.lg\:cell-row-start-6{grid-row-start:6}.lg\:cell-row-end-6{grid-row-end:6}.lg\:cell-row-start-7{grid-row-start:7}.lg\:cell-row-end-7{grid-row-end:7}.lg\:cell-order-first{order:-9999}.lg\:cell-order-last{order:9999}.lg\:cell-order-none{order:0}.lg\:cell-order-1{order:1}.lg\:cell-order-2{order:2}.lg\:cell-order-3{order:3}.lg\:cell-order-4{order:4}.lg\:cell-order-5{order:5}.lg\:cell-order-6{order:6}.lg\:cell-order-7{order:7}.lg\:cell-order-8{order:8}.lg\:cell-order-9{order:9}.lg\:cell-order-10{order:10}.lg\:cell-order-11{order:11}.lg\:cell-order-12{order:12}}.gap-px{gap:1px}.gap-x-px{column-gap:1px}.gap-y-px{row-gap:1px}.gap-0,.gap-0 [class^=grid]{gap:0}.gap-x-0,.gap-x-0 [class^=grid]{column-gap:0}.gap-y-0,.gap-y-0 [class^=grid]{row-gap:0}.gap-1,.gap-1 [class^=grid]{gap:.25rem}.gap-x-1,.gap-x-1 [class^=grid]{column-gap:.25rem}.gap-y-1,.gap-y-1 [class^=grid]{row-gap:.25rem}.gap-2,.gap-2 [class^=grid]{gap:.5rem}.gap-x-2,.gap-x-2 [class^=grid]{column-gap:.5rem}.gap-y-2,.gap-y-2 [class^=grid]{row-gap:.5rem}.gap-3,.gap-3 [class^=grid]{gap:.75rem}.gap-x-3,.gap-x-3 [class^=grid]{column-gap:.75rem}.gap-y-3,.gap-y-3 [class^=grid]{row-gap:.75rem}.gap-4,.gap-4 [class^=grid]{gap:1rem}.gap-x-4,.gap-x-4 [class^=grid]{column-gap:1rem}.gap-y-4,.gap-y-4 [class^=grid]{row-gap:1rem}.gap-5,.gap-5 [class^=grid]{gap:1.25rem}.gap-x-5,.gap-x-5 [class^=grid]{column-gap:1.25rem}.gap-y-5,.gap-y-5 [class^=grid]{row-gap:1.25rem}.gap-6,.gap-6 [class^=grid]{gap:1.5rem}.gap-x-6,.gap-x-6 [class^=grid]{column-gap:1.5rem}.gap-y-6,.gap-y-6 [class^=grid]{row-gap:1.5rem}.gap-7,.gap-7 [class^=grid]{gap:1.75rem}.gap-x-7,.gap-x-7 [class^=grid]{column-gap:1.75rem}.gap-y-7,.gap-y-7 [class^=grid]{row-gap:1.75rem}.gap-8,.gap-8 [class^=grid]{gap:2rem}.gap-x-8,.gap-x-8 [class^=grid]{column-gap:2rem}.gap-y-8,.gap-y-8 [class^=grid]{row-gap:2rem}.gap-9,.gap-9 [class^=grid]{gap:2.25rem}.gap-x-9,.gap-x-9 [class^=grid]{column-gap:2.25rem}.gap-y-9,.gap-y-9 [class^=grid]{row-gap:2.25rem}.gap-10,.gap-10 [class^=grid]{gap:2.5rem}.gap-x-10,.gap-x-10 [class^=grid]{column-gap:2.5rem}.gap-y-10,.gap-y-10 [class^=grid]{row-gap:2.5rem} diff --git a/content/page-templates/css-grid-framework/1-grid/css.inc b/content/page-templates/css-grid-framework/1-grid/css.inc index 8ebff36dd..f6e1a56ad 100644 --- a/content/page-templates/css-grid-framework/1-grid/css.inc +++ b/content/page-templates/css-grid-framework/1-grid/css.inc @@ -1,9 +1,9 @@ /** * License: MIT License * Generated on 25 May 2021 - * Author: Fpassaniti for Opendatasoft + * Author: Fpassaniti for Huwise * Version: 0.1 - * Description: CSS Grid framework for Opendatasoft pages (and more). Go to http://codelibrary.opendatasoft.com/ for more information (doc & examples). + * Description: CSS Grid framework for Huwise pages (and more). Go to http://codelibrary.huwise.com/ for more information (doc & examples). */ [class^=grid]{display:grid;grid-gap:1rem}.grid-auto,.grid-auto-flow,.grid-cols-auto-flow{grid-auto-flow:column}.grid-rows-auto-flow{grid-auto-flow:row}.grid-cols-fit,.grid-fit{grid-auto-columns:max-content}.grid-rows-fit{grid-auto-rows:max-content}.grid-2,.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3,.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4,.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-5,.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-6,.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-7,.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.grid-8,.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.grid-9,.grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.grid-10,.grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.grid-11,.grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.grid-12,.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.grid-cols-none{grid-template-columns:none}.grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.grid-rows-none{grid-template-rows:none}[class*=":cell"],[class^=cell]{display:flex;flex-direction:column;justify-content:stretch}.cell-auto,.cell-span-auto{grid-column:auto}.cell-full,.cell-span-full{grid-column:1/-1}.cell-1,.cell-span-1{grid-column:span 1/span 1}.cell-2,.cell-span-2{grid-column:span 2/span 2}.cell-3,.cell-span-3{grid-column:span 3/span 3}.cell-4,.cell-span-4{grid-column:span 4/span 4}.cell-5,.cell-span-5{grid-column:span 5/span 5}.cell-6,.cell-span-6{grid-column:span 6/span 6}.cell-7,.cell-span-7{grid-column:span 7/span 7}.cell-8,.cell-span-8{grid-column:span 8/span 8}.cell-9,.cell-span-9{grid-column:span 9/span 9}.cell-10,.cell-span-10{grid-column:span 10/span 10}.cell-11,.cell-span-11{grid-column:span 11/span 11}.cell-12,.cell-span-12{grid-column:span 12/span 12}.cell-row-auto{grid-row:auto}.cell-row-full{grid-row:1/-1}.cell-row-1,.cell-row-span-1{grid-row:span 1/span 1}.cell-row-2,.cell-row-span-2{grid-row:span 2/span 2}.cell-row-3,.cell-row-span-3{grid-row:span 3/span 3}.cell-row-4,.cell-row-span-4{grid-row:span 4/span 4}.cell-row-5,.cell-row-span-5{grid-row:span 5/span 5}.cell-row-6,.cell-row-span-6{grid-row:span 6/span 6}.cell-col-start-1,.cell-start-1{grid-column-start:1}.cell-col-end-1,.cell-end-1{grid-column-end:1}.cell-col-start-2,.cell-start-2{grid-column-start:2}.cell-col-end-2,.cell-end-2{grid-column-end:2}.cell-col-start-3,.cell-start-3{grid-column-start:3}.cell-col-end-3,.cell-end-3{grid-column-end:3}.cell-col-start-4,.cell-start-4{grid-column-start:4}.cell-col-end-4,.cell-end-4{grid-column-end:4}.cell-col-start-5,.cell-start-5{grid-column-start:5}.cell-col-end-5,.cell-end-5{grid-column-end:5}.cell-col-start-6,.cell-start-6{grid-column-start:6}.cell-col-end-6,.cell-end-6{grid-column-end:6}.cell-col-start-7,.cell-start-7{grid-column-start:7}.cell-col-end-7,.cell-end-7{grid-column-end:7}.cell-col-start-8,.cell-start-8{grid-column-start:8}.cell-col-end-8,.cell-end-8{grid-column-end:8}.cell-col-start-9,.cell-start-9{grid-column-start:9}.cell-col-end-9,.cell-end-9{grid-column-end:9}.cell-col-start-10,.cell-start-10{grid-column-start:10}.cell-col-end-10,.cell-end-10{grid-column-end:10}.cell-col-start-11,.cell-start-11{grid-column-start:11}.cell-col-end-11,.cell-end-11{grid-column-end:11}.cell-col-start-12,.cell-start-12{grid-column-start:12}.cell-col-end-12,.cell-end-12{grid-column-end:12}.cell-col-start-13,.cell-start-13{grid-column-start:13}.cell-col-end-13,.cell-end-13{grid-column-end:13}.cell-row-start-1{grid-row-start:1}.cell-row-end-1{grid-row-end:1}.cell-row-start-2{grid-row-start:2}.cell-row-end-2{grid-row-end:2}.cell-row-start-3{grid-row-start:3}.cell-row-end-3{grid-row-end:3}.cell-row-start-4{grid-row-start:4}.cell-row-end-4{grid-row-end:4}.cell-row-start-5{grid-row-start:5}.cell-row-end-5{grid-row-end:5}.cell-row-start-6{grid-row-start:6}.cell-row-end-6{grid-row-end:6}.cell-row-start-7{grid-row-start:7}.cell-row-end-7{grid-row-end:7}.cell-order-first{order:-9999}.cell-order-last{order:9999}.cell-order-none{order:0}.cell-order-1{order:1}.cell-order-2{order:2}.cell-order-3{order:3}.cell-order-4{order:4}.cell-order-5{order:5}.cell-order-6{order:6}.cell-order-7{order:7}.cell-order-8{order:8}.cell-order-9{order:9}.cell-order-10{order:10}.cell-order-11{order:11}.cell-order-12{order:12}@media screen and (min-width:640px),print{.sm\:grid-2,.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-3,.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-4,.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-5,.sm\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.sm\:grid-6,.sm\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.sm\:grid-7,.sm\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.sm\:grid-8,.sm\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.sm\:grid-9,.sm\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.sm\:grid-10,.sm\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.sm\:grid-11,.sm\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.sm\:grid-12,.sm\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.sm\:grid-cols-none{grid-template-columns:none}.sm\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.sm\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.sm\:grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.sm\:grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.sm\:grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.sm\:grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.sm\:grid-rows-none{grid-template-rows:none}.sm\:cell-auto,.sm\:cell-span-auto{grid-column:auto}.sm\:cell-full,.sm\:cell-span-full{grid-column:1/-1}.sm\:cell-1,.sm\:cell-span-1{grid-column:span 1/span 1}.sm\:cell-2,.sm\:cell-span-2{grid-column:span 2/span 2}.sm\:cell-3,.sm\:cell-span-3{grid-column:span 3/span 3}.sm\:cell-4,.sm\:cell-span-4{grid-column:span 4/span 4}.sm\:cell-5,.sm\:cell-span-5{grid-column:span 5/span 5}.sm\:cell-6,.sm\:cell-span-6{grid-column:span 6/span 6}.sm\:cell-7,.sm\:cell-span-7{grid-column:span 7/span 7}.sm\:cell-8,.sm\:cell-span-8{grid-column:span 8/span 8}.sm\:cell-9,.sm\:cell-span-9{grid-column:span 9/span 9}.sm\:cell-10,.sm\:cell-span-10{grid-column:span 10/span 10}.sm\:cell-11,.sm\:cell-span-11{grid-column:span 11/span 11}.sm\:cell-12,.sm\:cell-span-12{grid-column:span 12/span 12}.sm\:cell-row-auto{grid-row:auto}.sm\:cell-row-full{grid-row:1/-1}.sm\:cell-row-1,.sm\:cell-row-span-1{grid-row:span 1/span 1}.sm\:cell-row-2,.sm\:cell-row-span-2{grid-row:span 2/span 2}.sm\:cell-row-3,.sm\:cell-row-span-3{grid-row:span 3/span 3}.sm\:cell-row-4,.sm\:cell-row-span-4{grid-row:span 4/span 4}.sm\:cell-row-5,.sm\:cell-row-span-5{grid-row:span 5/span 5}.sm\:cell-row-6,.sm\:cell-row-span-6{grid-row:span 6/span 6}.sm\:cell-col-start-1,.sm\:cell-start-1{grid-column-start:1}.sm\:cell-col-end-1,.sm\:cell-end-1{grid-column-end:1}.sm\:cell-col-start-2,.sm\:cell-start-2{grid-column-start:2}.sm\:cell-col-end-2,.sm\:cell-end-2{grid-column-end:2}.sm\:cell-col-start-3,.sm\:cell-start-3{grid-column-start:3}.sm\:cell-col-end-3,.sm\:cell-end-3{grid-column-end:3}.sm\:cell-col-start-4,.sm\:cell-start-4{grid-column-start:4}.sm\:cell-col-end-4,.sm\:cell-end-4{grid-column-end:4}.sm\:cell-col-start-5,.sm\:cell-start-5{grid-column-start:5}.sm\:cell-col-end-5,.sm\:cell-end-5{grid-column-end:5}.sm\:cell-col-start-6,.sm\:cell-start-6{grid-column-start:6}.sm\:cell-col-end-6,.sm\:cell-end-6{grid-column-end:6}.sm\:cell-col-start-7,.sm\:cell-start-7{grid-column-start:7}.sm\:cell-col-end-7,.sm\:cell-end-7{grid-column-end:7}.sm\:cell-col-start-8,.sm\:cell-start-8{grid-column-start:8}.sm\:cell-col-end-8,.sm\:cell-end-8{grid-column-end:8}.sm\:cell-col-start-9,.sm\:cell-start-9{grid-column-start:9}.sm\:cell-col-end-9,.sm\:cell-end-9{grid-column-end:9}.sm\:cell-col-start-10,.sm\:cell-start-10{grid-column-start:10}.sm\:cell-col-end-10,.sm\:cell-end-10{grid-column-end:10}.sm\:cell-col-start-11,.sm\:cell-start-11{grid-column-start:11}.sm\:cell-col-end-11,.sm\:cell-end-11{grid-column-end:11}.sm\:cell-col-start-12,.sm\:cell-start-12{grid-column-start:12}.sm\:cell-col-end-12,.sm\:cell-end-12{grid-column-end:12}.sm\:cell-col-start-13,.sm\:cell-start-13{grid-column-start:13}.sm\:cell-col-end-13,.sm\:cell-end-13{grid-column-end:13}.sm\:cell-row-start-1{grid-row-start:1}.sm\:cell-row-end-1{grid-row-end:1}.sm\:cell-row-start-2{grid-row-start:2}.sm\:cell-row-end-2{grid-row-end:2}.sm\:cell-row-start-3{grid-row-start:3}.sm\:cell-row-end-3{grid-row-end:3}.sm\:cell-row-start-4{grid-row-start:4}.sm\:cell-row-end-4{grid-row-end:4}.sm\:cell-row-start-5{grid-row-start:5}.sm\:cell-row-end-5{grid-row-end:5}.sm\:cell-row-start-6{grid-row-start:6}.sm\:cell-row-end-6{grid-row-end:6}.sm\:cell-row-start-7{grid-row-start:7}.sm\:cell-row-end-7{grid-row-end:7}.sm\:cell-order-first{order:-9999}.sm\:cell-order-last{order:9999}.sm\:cell-order-none{order:0}.sm\:cell-order-1{order:1}.sm\:cell-order-2{order:2}.sm\:cell-order-3{order:3}.sm\:cell-order-4{order:4}.sm\:cell-order-5{order:5}.sm\:cell-order-6{order:6}.sm\:cell-order-7{order:7}.sm\:cell-order-8{order:8}.sm\:cell-order-9{order:9}.sm\:cell-order-10{order:10}.sm\:cell-order-11{order:11}.sm\:cell-order-12{order:12}}@media screen and (min-width:768px),print{.md\:grid-2,.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-3,.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-4,.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-5,.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:grid-6,.md\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.md\:grid-7,.md\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.md\:grid-8,.md\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.md\:grid-9,.md\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.md\:grid-10,.md\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.md\:grid-11,.md\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.md\:grid-12,.md\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.md\:grid-cols-none{grid-template-columns:none}.md\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.md\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.md\:grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.md\:grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.md\:grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.md\:grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.md\:grid-rows-none{grid-template-rows:none}.md\:cell-auto,.md\:cell-span-auto{grid-column:auto}.md\:cell-full,.md\:cell-span-full{grid-column:1/-1}.md\:cell-1,.md\:cell-span-1{grid-column:span 1/span 1}.md\:cell-2,.md\:cell-span-2{grid-column:span 2/span 2}.md\:cell-3,.md\:cell-span-3{grid-column:span 3/span 3}.md\:cell-4,.md\:cell-span-4{grid-column:span 4/span 4}.md\:cell-5,.md\:cell-span-5{grid-column:span 5/span 5}.md\:cell-6,.md\:cell-span-6{grid-column:span 6/span 6}.md\:cell-7,.md\:cell-span-7{grid-column:span 7/span 7}.md\:cell-8,.md\:cell-span-8{grid-column:span 8/span 8}.md\:cell-9,.md\:cell-span-9{grid-column:span 9/span 9}.md\:cell-10,.md\:cell-span-10{grid-column:span 10/span 10}.md\:cell-11,.md\:cell-span-11{grid-column:span 11/span 11}.md\:cell-12,.md\:cell-span-12{grid-column:span 12/span 12}.md\:cell-row-auto{grid-row:auto}.md\:cell-row-full{grid-row:1/-1}.md\:cell-row-1,.md\:cell-row-span-1{grid-row:span 1/span 1}.md\:cell-row-2,.md\:cell-row-span-2{grid-row:span 2/span 2}.md\:cell-row-3,.md\:cell-row-span-3{grid-row:span 3/span 3}.md\:cell-row-4,.md\:cell-row-span-4{grid-row:span 4/span 4}.md\:cell-row-5,.md\:cell-row-span-5{grid-row:span 5/span 5}.md\:cell-row-6,.md\:cell-row-span-6{grid-row:span 6/span 6}.md\:cell-col-start-1,.md\:cell-start-1{grid-column-start:1}.md\:cell-col-end-1,.md\:cell-end-1{grid-column-end:1}.md\:cell-col-start-2,.md\:cell-start-2{grid-column-start:2}.md\:cell-col-end-2,.md\:cell-end-2{grid-column-end:2}.md\:cell-col-start-3,.md\:cell-start-3{grid-column-start:3}.md\:cell-col-end-3,.md\:cell-end-3{grid-column-end:3}.md\:cell-col-start-4,.md\:cell-start-4{grid-column-start:4}.md\:cell-col-end-4,.md\:cell-end-4{grid-column-end:4}.md\:cell-col-start-5,.md\:cell-start-5{grid-column-start:5}.md\:cell-col-end-5,.md\:cell-end-5{grid-column-end:5}.md\:cell-col-start-6,.md\:cell-start-6{grid-column-start:6}.md\:cell-col-end-6,.md\:cell-end-6{grid-column-end:6}.md\:cell-col-start-7,.md\:cell-start-7{grid-column-start:7}.md\:cell-col-end-7,.md\:cell-end-7{grid-column-end:7}.md\:cell-col-start-8,.md\:cell-start-8{grid-column-start:8}.md\:cell-col-end-8,.md\:cell-end-8{grid-column-end:8}.md\:cell-col-start-9,.md\:cell-start-9{grid-column-start:9}.md\:cell-col-end-9,.md\:cell-end-9{grid-column-end:9}.md\:cell-col-start-10,.md\:cell-start-10{grid-column-start:10}.md\:cell-col-end-10,.md\:cell-end-10{grid-column-end:10}.md\:cell-col-start-11,.md\:cell-start-11{grid-column-start:11}.md\:cell-col-end-11,.md\:cell-end-11{grid-column-end:11}.md\:cell-col-start-12,.md\:cell-start-12{grid-column-start:12}.md\:cell-col-end-12,.md\:cell-end-12{grid-column-end:12}.md\:cell-col-start-13,.md\:cell-start-13{grid-column-start:13}.md\:cell-col-end-13,.md\:cell-end-13{grid-column-end:13}.md\:cell-row-start-1{grid-row-start:1}.md\:cell-row-end-1{grid-row-end:1}.md\:cell-row-start-2{grid-row-start:2}.md\:cell-row-end-2{grid-row-end:2}.md\:cell-row-start-3{grid-row-start:3}.md\:cell-row-end-3{grid-row-end:3}.md\:cell-row-start-4{grid-row-start:4}.md\:cell-row-end-4{grid-row-end:4}.md\:cell-row-start-5{grid-row-start:5}.md\:cell-row-end-5{grid-row-end:5}.md\:cell-row-start-6{grid-row-start:6}.md\:cell-row-end-6{grid-row-end:6}.md\:cell-row-start-7{grid-row-start:7}.md\:cell-row-end-7{grid-row-end:7}.md\:cell-order-first{order:-9999}.md\:cell-order-last{order:9999}.md\:cell-order-none{order:0}.md\:cell-order-1{order:1}.md\:cell-order-2{order:2}.md\:cell-order-3{order:3}.md\:cell-order-4{order:4}.md\:cell-order-5{order:5}.md\:cell-order-6{order:6}.md\:cell-order-7{order:7}.md\:cell-order-8{order:8}.md\:cell-order-9{order:9}.md\:cell-order-10{order:10}.md\:cell-order-11{order:11}.md\:cell-order-12{order:12}}@media screen and (min-width:1024px),print{.lg\:grid-2,.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-3,.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-4,.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-5,.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-6,.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:grid-7,.lg\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.lg\:grid-8,.lg\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.lg\:grid-9,.lg\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.lg\:grid-10,.lg\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.lg\:grid-11,.lg\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.lg\:grid-12,.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-none{grid-template-columns:none}.lg\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.lg\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.lg\:grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.lg\:grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.lg\:grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.lg\:grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.lg\:grid-rows-none{grid-template-rows:none}.lg\:cell-auto,.lg\:cell-span-auto{grid-column:auto}.lg\:cell-full,.lg\:cell-span-full{grid-column:1/-1}.lg\:cell-1,.lg\:cell-span-1{grid-column:span 1/span 1}.lg\:cell-2,.lg\:cell-span-2{grid-column:span 2/span 2}.lg\:cell-3,.lg\:cell-span-3{grid-column:span 3/span 3}.lg\:cell-4,.lg\:cell-span-4{grid-column:span 4/span 4}.lg\:cell-5,.lg\:cell-span-5{grid-column:span 5/span 5}.lg\:cell-6,.lg\:cell-span-6{grid-column:span 6/span 6}.lg\:cell-7,.lg\:cell-span-7{grid-column:span 7/span 7}.lg\:cell-8,.lg\:cell-span-8{grid-column:span 8/span 8}.lg\:cell-9,.lg\:cell-span-9{grid-column:span 9/span 9}.lg\:cell-10,.lg\:cell-span-10{grid-column:span 10/span 10}.lg\:cell-11,.lg\:cell-span-11{grid-column:span 11/span 11}.lg\:cell-12,.lg\:cell-span-12{grid-column:span 12/span 12}.lg\:cell-row-auto{grid-row:auto}.lg\:cell-row-full{grid-row:1/-1}.lg\:cell-row-1,.lg\:cell-row-span-1{grid-row:span 1/span 1}.lg\:cell-row-2,.lg\:cell-row-span-2{grid-row:span 2/span 2}.lg\:cell-row-3,.lg\:cell-row-span-3{grid-row:span 3/span 3}.lg\:cell-row-4,.lg\:cell-row-span-4{grid-row:span 4/span 4}.lg\:cell-row-5,.lg\:cell-row-span-5{grid-row:span 5/span 5}.lg\:cell-row-6,.lg\:cell-row-span-6{grid-row:span 6/span 6}.lg\:cell-col-start-1,.lg\:cell-start-1{grid-column-start:1}.lg\:cell-col-end-1,.lg\:cell-end-1{grid-column-end:1}.lg\:cell-col-start-2,.lg\:cell-start-2{grid-column-start:2}.lg\:cell-col-end-2,.lg\:cell-end-2{grid-column-end:2}.lg\:cell-col-start-3,.lg\:cell-start-3{grid-column-start:3}.lg\:cell-col-end-3,.lg\:cell-end-3{grid-column-end:3}.lg\:cell-col-start-4,.lg\:cell-start-4{grid-column-start:4}.lg\:cell-col-end-4,.lg\:cell-end-4{grid-column-end:4}.lg\:cell-col-start-5,.lg\:cell-start-5{grid-column-start:5}.lg\:cell-col-end-5,.lg\:cell-end-5{grid-column-end:5}.lg\:cell-col-start-6,.lg\:cell-start-6{grid-column-start:6}.lg\:cell-col-end-6,.lg\:cell-end-6{grid-column-end:6}.lg\:cell-col-start-7,.lg\:cell-start-7{grid-column-start:7}.lg\:cell-col-end-7,.lg\:cell-end-7{grid-column-end:7}.lg\:cell-col-start-8,.lg\:cell-start-8{grid-column-start:8}.lg\:cell-col-end-8,.lg\:cell-end-8{grid-column-end:8}.lg\:cell-col-start-9,.lg\:cell-start-9{grid-column-start:9}.lg\:cell-col-end-9,.lg\:cell-end-9{grid-column-end:9}.lg\:cell-col-start-10,.lg\:cell-start-10{grid-column-start:10}.lg\:cell-col-end-10,.lg\:cell-end-10{grid-column-end:10}.lg\:cell-col-start-11,.lg\:cell-start-11{grid-column-start:11}.lg\:cell-col-end-11,.lg\:cell-end-11{grid-column-end:11}.lg\:cell-col-start-12,.lg\:cell-start-12{grid-column-start:12}.lg\:cell-col-end-12,.lg\:cell-end-12{grid-column-end:12}.lg\:cell-col-start-13,.lg\:cell-start-13{grid-column-start:13}.lg\:cell-col-end-13,.lg\:cell-end-13{grid-column-end:13}.lg\:cell-row-start-1{grid-row-start:1}.lg\:cell-row-end-1{grid-row-end:1}.lg\:cell-row-start-2{grid-row-start:2}.lg\:cell-row-end-2{grid-row-end:2}.lg\:cell-row-start-3{grid-row-start:3}.lg\:cell-row-end-3{grid-row-end:3}.lg\:cell-row-start-4{grid-row-start:4}.lg\:cell-row-end-4{grid-row-end:4}.lg\:cell-row-start-5{grid-row-start:5}.lg\:cell-row-end-5{grid-row-end:5}.lg\:cell-row-start-6{grid-row-start:6}.lg\:cell-row-end-6{grid-row-end:6}.lg\:cell-row-start-7{grid-row-start:7}.lg\:cell-row-end-7{grid-row-end:7}.lg\:cell-order-first{order:-9999}.lg\:cell-order-last{order:9999}.lg\:cell-order-none{order:0}.lg\:cell-order-1{order:1}.lg\:cell-order-2{order:2}.lg\:cell-order-3{order:3}.lg\:cell-order-4{order:4}.lg\:cell-order-5{order:5}.lg\:cell-order-6{order:6}.lg\:cell-order-7{order:7}.lg\:cell-order-8{order:8}.lg\:cell-order-9{order:9}.lg\:cell-order-10{order:10}.lg\:cell-order-11{order:11}.lg\:cell-order-12{order:12}}.gap-px{gap:1px}.gap-x-px{column-gap:1px}.gap-y-px{row-gap:1px}.gap-0,.gap-0 [class^=grid]{gap:0}.gap-x-0,.gap-x-0 [class^=grid]{column-gap:0}.gap-y-0,.gap-y-0 [class^=grid]{row-gap:0}.gap-1,.gap-1 [class^=grid]{gap:.25rem}.gap-x-1,.gap-x-1 [class^=grid]{column-gap:.25rem}.gap-y-1,.gap-y-1 [class^=grid]{row-gap:.25rem}.gap-2,.gap-2 [class^=grid]{gap:.5rem}.gap-x-2,.gap-x-2 [class^=grid]{column-gap:.5rem}.gap-y-2,.gap-y-2 [class^=grid]{row-gap:.5rem}.gap-3,.gap-3 [class^=grid]{gap:.75rem}.gap-x-3,.gap-x-3 [class^=grid]{column-gap:.75rem}.gap-y-3,.gap-y-3 [class^=grid]{row-gap:.75rem}.gap-4,.gap-4 [class^=grid]{gap:1rem}.gap-x-4,.gap-x-4 [class^=grid]{column-gap:1rem}.gap-y-4,.gap-y-4 [class^=grid]{row-gap:1rem}.gap-5,.gap-5 [class^=grid]{gap:1.25rem}.gap-x-5,.gap-x-5 [class^=grid]{column-gap:1.25rem}.gap-y-5,.gap-y-5 [class^=grid]{row-gap:1.25rem}.gap-6,.gap-6 [class^=grid]{gap:1.5rem}.gap-x-6,.gap-x-6 [class^=grid]{column-gap:1.5rem}.gap-y-6,.gap-y-6 [class^=grid]{row-gap:1.5rem}.gap-7,.gap-7 [class^=grid]{gap:1.75rem}.gap-x-7,.gap-x-7 [class^=grid]{column-gap:1.75rem}.gap-y-7,.gap-y-7 [class^=grid]{row-gap:1.75rem}.gap-8,.gap-8 [class^=grid]{gap:2rem}.gap-x-8,.gap-x-8 [class^=grid]{column-gap:2rem}.gap-y-8,.gap-y-8 [class^=grid]{row-gap:2rem}.gap-9,.gap-9 [class^=grid]{gap:2.25rem}.gap-x-9,.gap-x-9 [class^=grid]{column-gap:2.25rem}.gap-y-9,.gap-y-9 [class^=grid]{row-gap:2.25rem}.gap-10,.gap-10 [class^=grid]{gap:2.5rem}.gap-x-10,.gap-x-10 [class^=grid]{column-gap:2.5rem}.gap-y-10,.gap-y-10 [class^=grid]{row-gap:2.5rem} diff --git a/content/page-templates/css-grid-framework/2-span-start-end/css.inc b/content/page-templates/css-grid-framework/2-span-start-end/css.inc index 8ebff36dd..f6e1a56ad 100644 --- a/content/page-templates/css-grid-framework/2-span-start-end/css.inc +++ b/content/page-templates/css-grid-framework/2-span-start-end/css.inc @@ -1,9 +1,9 @@ /** * License: MIT License * Generated on 25 May 2021 - * Author: Fpassaniti for Opendatasoft + * Author: Fpassaniti for Huwise * Version: 0.1 - * Description: CSS Grid framework for Opendatasoft pages (and more). Go to http://codelibrary.opendatasoft.com/ for more information (doc & examples). + * Description: CSS Grid framework for Huwise pages (and more). Go to http://codelibrary.huwise.com/ for more information (doc & examples). */ [class^=grid]{display:grid;grid-gap:1rem}.grid-auto,.grid-auto-flow,.grid-cols-auto-flow{grid-auto-flow:column}.grid-rows-auto-flow{grid-auto-flow:row}.grid-cols-fit,.grid-fit{grid-auto-columns:max-content}.grid-rows-fit{grid-auto-rows:max-content}.grid-2,.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3,.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4,.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-5,.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-6,.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-7,.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.grid-8,.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.grid-9,.grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.grid-10,.grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.grid-11,.grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.grid-12,.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.grid-cols-none{grid-template-columns:none}.grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.grid-rows-none{grid-template-rows:none}[class*=":cell"],[class^=cell]{display:flex;flex-direction:column;justify-content:stretch}.cell-auto,.cell-span-auto{grid-column:auto}.cell-full,.cell-span-full{grid-column:1/-1}.cell-1,.cell-span-1{grid-column:span 1/span 1}.cell-2,.cell-span-2{grid-column:span 2/span 2}.cell-3,.cell-span-3{grid-column:span 3/span 3}.cell-4,.cell-span-4{grid-column:span 4/span 4}.cell-5,.cell-span-5{grid-column:span 5/span 5}.cell-6,.cell-span-6{grid-column:span 6/span 6}.cell-7,.cell-span-7{grid-column:span 7/span 7}.cell-8,.cell-span-8{grid-column:span 8/span 8}.cell-9,.cell-span-9{grid-column:span 9/span 9}.cell-10,.cell-span-10{grid-column:span 10/span 10}.cell-11,.cell-span-11{grid-column:span 11/span 11}.cell-12,.cell-span-12{grid-column:span 12/span 12}.cell-row-auto{grid-row:auto}.cell-row-full{grid-row:1/-1}.cell-row-1,.cell-row-span-1{grid-row:span 1/span 1}.cell-row-2,.cell-row-span-2{grid-row:span 2/span 2}.cell-row-3,.cell-row-span-3{grid-row:span 3/span 3}.cell-row-4,.cell-row-span-4{grid-row:span 4/span 4}.cell-row-5,.cell-row-span-5{grid-row:span 5/span 5}.cell-row-6,.cell-row-span-6{grid-row:span 6/span 6}.cell-col-start-1,.cell-start-1{grid-column-start:1}.cell-col-end-1,.cell-end-1{grid-column-end:1}.cell-col-start-2,.cell-start-2{grid-column-start:2}.cell-col-end-2,.cell-end-2{grid-column-end:2}.cell-col-start-3,.cell-start-3{grid-column-start:3}.cell-col-end-3,.cell-end-3{grid-column-end:3}.cell-col-start-4,.cell-start-4{grid-column-start:4}.cell-col-end-4,.cell-end-4{grid-column-end:4}.cell-col-start-5,.cell-start-5{grid-column-start:5}.cell-col-end-5,.cell-end-5{grid-column-end:5}.cell-col-start-6,.cell-start-6{grid-column-start:6}.cell-col-end-6,.cell-end-6{grid-column-end:6}.cell-col-start-7,.cell-start-7{grid-column-start:7}.cell-col-end-7,.cell-end-7{grid-column-end:7}.cell-col-start-8,.cell-start-8{grid-column-start:8}.cell-col-end-8,.cell-end-8{grid-column-end:8}.cell-col-start-9,.cell-start-9{grid-column-start:9}.cell-col-end-9,.cell-end-9{grid-column-end:9}.cell-col-start-10,.cell-start-10{grid-column-start:10}.cell-col-end-10,.cell-end-10{grid-column-end:10}.cell-col-start-11,.cell-start-11{grid-column-start:11}.cell-col-end-11,.cell-end-11{grid-column-end:11}.cell-col-start-12,.cell-start-12{grid-column-start:12}.cell-col-end-12,.cell-end-12{grid-column-end:12}.cell-col-start-13,.cell-start-13{grid-column-start:13}.cell-col-end-13,.cell-end-13{grid-column-end:13}.cell-row-start-1{grid-row-start:1}.cell-row-end-1{grid-row-end:1}.cell-row-start-2{grid-row-start:2}.cell-row-end-2{grid-row-end:2}.cell-row-start-3{grid-row-start:3}.cell-row-end-3{grid-row-end:3}.cell-row-start-4{grid-row-start:4}.cell-row-end-4{grid-row-end:4}.cell-row-start-5{grid-row-start:5}.cell-row-end-5{grid-row-end:5}.cell-row-start-6{grid-row-start:6}.cell-row-end-6{grid-row-end:6}.cell-row-start-7{grid-row-start:7}.cell-row-end-7{grid-row-end:7}.cell-order-first{order:-9999}.cell-order-last{order:9999}.cell-order-none{order:0}.cell-order-1{order:1}.cell-order-2{order:2}.cell-order-3{order:3}.cell-order-4{order:4}.cell-order-5{order:5}.cell-order-6{order:6}.cell-order-7{order:7}.cell-order-8{order:8}.cell-order-9{order:9}.cell-order-10{order:10}.cell-order-11{order:11}.cell-order-12{order:12}@media screen and (min-width:640px),print{.sm\:grid-2,.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-3,.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-4,.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-5,.sm\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.sm\:grid-6,.sm\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.sm\:grid-7,.sm\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.sm\:grid-8,.sm\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.sm\:grid-9,.sm\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.sm\:grid-10,.sm\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.sm\:grid-11,.sm\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.sm\:grid-12,.sm\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.sm\:grid-cols-none{grid-template-columns:none}.sm\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.sm\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.sm\:grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.sm\:grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.sm\:grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.sm\:grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.sm\:grid-rows-none{grid-template-rows:none}.sm\:cell-auto,.sm\:cell-span-auto{grid-column:auto}.sm\:cell-full,.sm\:cell-span-full{grid-column:1/-1}.sm\:cell-1,.sm\:cell-span-1{grid-column:span 1/span 1}.sm\:cell-2,.sm\:cell-span-2{grid-column:span 2/span 2}.sm\:cell-3,.sm\:cell-span-3{grid-column:span 3/span 3}.sm\:cell-4,.sm\:cell-span-4{grid-column:span 4/span 4}.sm\:cell-5,.sm\:cell-span-5{grid-column:span 5/span 5}.sm\:cell-6,.sm\:cell-span-6{grid-column:span 6/span 6}.sm\:cell-7,.sm\:cell-span-7{grid-column:span 7/span 7}.sm\:cell-8,.sm\:cell-span-8{grid-column:span 8/span 8}.sm\:cell-9,.sm\:cell-span-9{grid-column:span 9/span 9}.sm\:cell-10,.sm\:cell-span-10{grid-column:span 10/span 10}.sm\:cell-11,.sm\:cell-span-11{grid-column:span 11/span 11}.sm\:cell-12,.sm\:cell-span-12{grid-column:span 12/span 12}.sm\:cell-row-auto{grid-row:auto}.sm\:cell-row-full{grid-row:1/-1}.sm\:cell-row-1,.sm\:cell-row-span-1{grid-row:span 1/span 1}.sm\:cell-row-2,.sm\:cell-row-span-2{grid-row:span 2/span 2}.sm\:cell-row-3,.sm\:cell-row-span-3{grid-row:span 3/span 3}.sm\:cell-row-4,.sm\:cell-row-span-4{grid-row:span 4/span 4}.sm\:cell-row-5,.sm\:cell-row-span-5{grid-row:span 5/span 5}.sm\:cell-row-6,.sm\:cell-row-span-6{grid-row:span 6/span 6}.sm\:cell-col-start-1,.sm\:cell-start-1{grid-column-start:1}.sm\:cell-col-end-1,.sm\:cell-end-1{grid-column-end:1}.sm\:cell-col-start-2,.sm\:cell-start-2{grid-column-start:2}.sm\:cell-col-end-2,.sm\:cell-end-2{grid-column-end:2}.sm\:cell-col-start-3,.sm\:cell-start-3{grid-column-start:3}.sm\:cell-col-end-3,.sm\:cell-end-3{grid-column-end:3}.sm\:cell-col-start-4,.sm\:cell-start-4{grid-column-start:4}.sm\:cell-col-end-4,.sm\:cell-end-4{grid-column-end:4}.sm\:cell-col-start-5,.sm\:cell-start-5{grid-column-start:5}.sm\:cell-col-end-5,.sm\:cell-end-5{grid-column-end:5}.sm\:cell-col-start-6,.sm\:cell-start-6{grid-column-start:6}.sm\:cell-col-end-6,.sm\:cell-end-6{grid-column-end:6}.sm\:cell-col-start-7,.sm\:cell-start-7{grid-column-start:7}.sm\:cell-col-end-7,.sm\:cell-end-7{grid-column-end:7}.sm\:cell-col-start-8,.sm\:cell-start-8{grid-column-start:8}.sm\:cell-col-end-8,.sm\:cell-end-8{grid-column-end:8}.sm\:cell-col-start-9,.sm\:cell-start-9{grid-column-start:9}.sm\:cell-col-end-9,.sm\:cell-end-9{grid-column-end:9}.sm\:cell-col-start-10,.sm\:cell-start-10{grid-column-start:10}.sm\:cell-col-end-10,.sm\:cell-end-10{grid-column-end:10}.sm\:cell-col-start-11,.sm\:cell-start-11{grid-column-start:11}.sm\:cell-col-end-11,.sm\:cell-end-11{grid-column-end:11}.sm\:cell-col-start-12,.sm\:cell-start-12{grid-column-start:12}.sm\:cell-col-end-12,.sm\:cell-end-12{grid-column-end:12}.sm\:cell-col-start-13,.sm\:cell-start-13{grid-column-start:13}.sm\:cell-col-end-13,.sm\:cell-end-13{grid-column-end:13}.sm\:cell-row-start-1{grid-row-start:1}.sm\:cell-row-end-1{grid-row-end:1}.sm\:cell-row-start-2{grid-row-start:2}.sm\:cell-row-end-2{grid-row-end:2}.sm\:cell-row-start-3{grid-row-start:3}.sm\:cell-row-end-3{grid-row-end:3}.sm\:cell-row-start-4{grid-row-start:4}.sm\:cell-row-end-4{grid-row-end:4}.sm\:cell-row-start-5{grid-row-start:5}.sm\:cell-row-end-5{grid-row-end:5}.sm\:cell-row-start-6{grid-row-start:6}.sm\:cell-row-end-6{grid-row-end:6}.sm\:cell-row-start-7{grid-row-start:7}.sm\:cell-row-end-7{grid-row-end:7}.sm\:cell-order-first{order:-9999}.sm\:cell-order-last{order:9999}.sm\:cell-order-none{order:0}.sm\:cell-order-1{order:1}.sm\:cell-order-2{order:2}.sm\:cell-order-3{order:3}.sm\:cell-order-4{order:4}.sm\:cell-order-5{order:5}.sm\:cell-order-6{order:6}.sm\:cell-order-7{order:7}.sm\:cell-order-8{order:8}.sm\:cell-order-9{order:9}.sm\:cell-order-10{order:10}.sm\:cell-order-11{order:11}.sm\:cell-order-12{order:12}}@media screen and (min-width:768px),print{.md\:grid-2,.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-3,.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-4,.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-5,.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:grid-6,.md\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.md\:grid-7,.md\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.md\:grid-8,.md\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.md\:grid-9,.md\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.md\:grid-10,.md\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.md\:grid-11,.md\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.md\:grid-12,.md\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.md\:grid-cols-none{grid-template-columns:none}.md\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.md\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.md\:grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.md\:grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.md\:grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.md\:grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.md\:grid-rows-none{grid-template-rows:none}.md\:cell-auto,.md\:cell-span-auto{grid-column:auto}.md\:cell-full,.md\:cell-span-full{grid-column:1/-1}.md\:cell-1,.md\:cell-span-1{grid-column:span 1/span 1}.md\:cell-2,.md\:cell-span-2{grid-column:span 2/span 2}.md\:cell-3,.md\:cell-span-3{grid-column:span 3/span 3}.md\:cell-4,.md\:cell-span-4{grid-column:span 4/span 4}.md\:cell-5,.md\:cell-span-5{grid-column:span 5/span 5}.md\:cell-6,.md\:cell-span-6{grid-column:span 6/span 6}.md\:cell-7,.md\:cell-span-7{grid-column:span 7/span 7}.md\:cell-8,.md\:cell-span-8{grid-column:span 8/span 8}.md\:cell-9,.md\:cell-span-9{grid-column:span 9/span 9}.md\:cell-10,.md\:cell-span-10{grid-column:span 10/span 10}.md\:cell-11,.md\:cell-span-11{grid-column:span 11/span 11}.md\:cell-12,.md\:cell-span-12{grid-column:span 12/span 12}.md\:cell-row-auto{grid-row:auto}.md\:cell-row-full{grid-row:1/-1}.md\:cell-row-1,.md\:cell-row-span-1{grid-row:span 1/span 1}.md\:cell-row-2,.md\:cell-row-span-2{grid-row:span 2/span 2}.md\:cell-row-3,.md\:cell-row-span-3{grid-row:span 3/span 3}.md\:cell-row-4,.md\:cell-row-span-4{grid-row:span 4/span 4}.md\:cell-row-5,.md\:cell-row-span-5{grid-row:span 5/span 5}.md\:cell-row-6,.md\:cell-row-span-6{grid-row:span 6/span 6}.md\:cell-col-start-1,.md\:cell-start-1{grid-column-start:1}.md\:cell-col-end-1,.md\:cell-end-1{grid-column-end:1}.md\:cell-col-start-2,.md\:cell-start-2{grid-column-start:2}.md\:cell-col-end-2,.md\:cell-end-2{grid-column-end:2}.md\:cell-col-start-3,.md\:cell-start-3{grid-column-start:3}.md\:cell-col-end-3,.md\:cell-end-3{grid-column-end:3}.md\:cell-col-start-4,.md\:cell-start-4{grid-column-start:4}.md\:cell-col-end-4,.md\:cell-end-4{grid-column-end:4}.md\:cell-col-start-5,.md\:cell-start-5{grid-column-start:5}.md\:cell-col-end-5,.md\:cell-end-5{grid-column-end:5}.md\:cell-col-start-6,.md\:cell-start-6{grid-column-start:6}.md\:cell-col-end-6,.md\:cell-end-6{grid-column-end:6}.md\:cell-col-start-7,.md\:cell-start-7{grid-column-start:7}.md\:cell-col-end-7,.md\:cell-end-7{grid-column-end:7}.md\:cell-col-start-8,.md\:cell-start-8{grid-column-start:8}.md\:cell-col-end-8,.md\:cell-end-8{grid-column-end:8}.md\:cell-col-start-9,.md\:cell-start-9{grid-column-start:9}.md\:cell-col-end-9,.md\:cell-end-9{grid-column-end:9}.md\:cell-col-start-10,.md\:cell-start-10{grid-column-start:10}.md\:cell-col-end-10,.md\:cell-end-10{grid-column-end:10}.md\:cell-col-start-11,.md\:cell-start-11{grid-column-start:11}.md\:cell-col-end-11,.md\:cell-end-11{grid-column-end:11}.md\:cell-col-start-12,.md\:cell-start-12{grid-column-start:12}.md\:cell-col-end-12,.md\:cell-end-12{grid-column-end:12}.md\:cell-col-start-13,.md\:cell-start-13{grid-column-start:13}.md\:cell-col-end-13,.md\:cell-end-13{grid-column-end:13}.md\:cell-row-start-1{grid-row-start:1}.md\:cell-row-end-1{grid-row-end:1}.md\:cell-row-start-2{grid-row-start:2}.md\:cell-row-end-2{grid-row-end:2}.md\:cell-row-start-3{grid-row-start:3}.md\:cell-row-end-3{grid-row-end:3}.md\:cell-row-start-4{grid-row-start:4}.md\:cell-row-end-4{grid-row-end:4}.md\:cell-row-start-5{grid-row-start:5}.md\:cell-row-end-5{grid-row-end:5}.md\:cell-row-start-6{grid-row-start:6}.md\:cell-row-end-6{grid-row-end:6}.md\:cell-row-start-7{grid-row-start:7}.md\:cell-row-end-7{grid-row-end:7}.md\:cell-order-first{order:-9999}.md\:cell-order-last{order:9999}.md\:cell-order-none{order:0}.md\:cell-order-1{order:1}.md\:cell-order-2{order:2}.md\:cell-order-3{order:3}.md\:cell-order-4{order:4}.md\:cell-order-5{order:5}.md\:cell-order-6{order:6}.md\:cell-order-7{order:7}.md\:cell-order-8{order:8}.md\:cell-order-9{order:9}.md\:cell-order-10{order:10}.md\:cell-order-11{order:11}.md\:cell-order-12{order:12}}@media screen and (min-width:1024px),print{.lg\:grid-2,.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-3,.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-4,.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-5,.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-6,.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:grid-7,.lg\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.lg\:grid-8,.lg\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.lg\:grid-9,.lg\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.lg\:grid-10,.lg\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.lg\:grid-11,.lg\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.lg\:grid-12,.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-none{grid-template-columns:none}.lg\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.lg\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.lg\:grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.lg\:grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.lg\:grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.lg\:grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.lg\:grid-rows-none{grid-template-rows:none}.lg\:cell-auto,.lg\:cell-span-auto{grid-column:auto}.lg\:cell-full,.lg\:cell-span-full{grid-column:1/-1}.lg\:cell-1,.lg\:cell-span-1{grid-column:span 1/span 1}.lg\:cell-2,.lg\:cell-span-2{grid-column:span 2/span 2}.lg\:cell-3,.lg\:cell-span-3{grid-column:span 3/span 3}.lg\:cell-4,.lg\:cell-span-4{grid-column:span 4/span 4}.lg\:cell-5,.lg\:cell-span-5{grid-column:span 5/span 5}.lg\:cell-6,.lg\:cell-span-6{grid-column:span 6/span 6}.lg\:cell-7,.lg\:cell-span-7{grid-column:span 7/span 7}.lg\:cell-8,.lg\:cell-span-8{grid-column:span 8/span 8}.lg\:cell-9,.lg\:cell-span-9{grid-column:span 9/span 9}.lg\:cell-10,.lg\:cell-span-10{grid-column:span 10/span 10}.lg\:cell-11,.lg\:cell-span-11{grid-column:span 11/span 11}.lg\:cell-12,.lg\:cell-span-12{grid-column:span 12/span 12}.lg\:cell-row-auto{grid-row:auto}.lg\:cell-row-full{grid-row:1/-1}.lg\:cell-row-1,.lg\:cell-row-span-1{grid-row:span 1/span 1}.lg\:cell-row-2,.lg\:cell-row-span-2{grid-row:span 2/span 2}.lg\:cell-row-3,.lg\:cell-row-span-3{grid-row:span 3/span 3}.lg\:cell-row-4,.lg\:cell-row-span-4{grid-row:span 4/span 4}.lg\:cell-row-5,.lg\:cell-row-span-5{grid-row:span 5/span 5}.lg\:cell-row-6,.lg\:cell-row-span-6{grid-row:span 6/span 6}.lg\:cell-col-start-1,.lg\:cell-start-1{grid-column-start:1}.lg\:cell-col-end-1,.lg\:cell-end-1{grid-column-end:1}.lg\:cell-col-start-2,.lg\:cell-start-2{grid-column-start:2}.lg\:cell-col-end-2,.lg\:cell-end-2{grid-column-end:2}.lg\:cell-col-start-3,.lg\:cell-start-3{grid-column-start:3}.lg\:cell-col-end-3,.lg\:cell-end-3{grid-column-end:3}.lg\:cell-col-start-4,.lg\:cell-start-4{grid-column-start:4}.lg\:cell-col-end-4,.lg\:cell-end-4{grid-column-end:4}.lg\:cell-col-start-5,.lg\:cell-start-5{grid-column-start:5}.lg\:cell-col-end-5,.lg\:cell-end-5{grid-column-end:5}.lg\:cell-col-start-6,.lg\:cell-start-6{grid-column-start:6}.lg\:cell-col-end-6,.lg\:cell-end-6{grid-column-end:6}.lg\:cell-col-start-7,.lg\:cell-start-7{grid-column-start:7}.lg\:cell-col-end-7,.lg\:cell-end-7{grid-column-end:7}.lg\:cell-col-start-8,.lg\:cell-start-8{grid-column-start:8}.lg\:cell-col-end-8,.lg\:cell-end-8{grid-column-end:8}.lg\:cell-col-start-9,.lg\:cell-start-9{grid-column-start:9}.lg\:cell-col-end-9,.lg\:cell-end-9{grid-column-end:9}.lg\:cell-col-start-10,.lg\:cell-start-10{grid-column-start:10}.lg\:cell-col-end-10,.lg\:cell-end-10{grid-column-end:10}.lg\:cell-col-start-11,.lg\:cell-start-11{grid-column-start:11}.lg\:cell-col-end-11,.lg\:cell-end-11{grid-column-end:11}.lg\:cell-col-start-12,.lg\:cell-start-12{grid-column-start:12}.lg\:cell-col-end-12,.lg\:cell-end-12{grid-column-end:12}.lg\:cell-col-start-13,.lg\:cell-start-13{grid-column-start:13}.lg\:cell-col-end-13,.lg\:cell-end-13{grid-column-end:13}.lg\:cell-row-start-1{grid-row-start:1}.lg\:cell-row-end-1{grid-row-end:1}.lg\:cell-row-start-2{grid-row-start:2}.lg\:cell-row-end-2{grid-row-end:2}.lg\:cell-row-start-3{grid-row-start:3}.lg\:cell-row-end-3{grid-row-end:3}.lg\:cell-row-start-4{grid-row-start:4}.lg\:cell-row-end-4{grid-row-end:4}.lg\:cell-row-start-5{grid-row-start:5}.lg\:cell-row-end-5{grid-row-end:5}.lg\:cell-row-start-6{grid-row-start:6}.lg\:cell-row-end-6{grid-row-end:6}.lg\:cell-row-start-7{grid-row-start:7}.lg\:cell-row-end-7{grid-row-end:7}.lg\:cell-order-first{order:-9999}.lg\:cell-order-last{order:9999}.lg\:cell-order-none{order:0}.lg\:cell-order-1{order:1}.lg\:cell-order-2{order:2}.lg\:cell-order-3{order:3}.lg\:cell-order-4{order:4}.lg\:cell-order-5{order:5}.lg\:cell-order-6{order:6}.lg\:cell-order-7{order:7}.lg\:cell-order-8{order:8}.lg\:cell-order-9{order:9}.lg\:cell-order-10{order:10}.lg\:cell-order-11{order:11}.lg\:cell-order-12{order:12}}.gap-px{gap:1px}.gap-x-px{column-gap:1px}.gap-y-px{row-gap:1px}.gap-0,.gap-0 [class^=grid]{gap:0}.gap-x-0,.gap-x-0 [class^=grid]{column-gap:0}.gap-y-0,.gap-y-0 [class^=grid]{row-gap:0}.gap-1,.gap-1 [class^=grid]{gap:.25rem}.gap-x-1,.gap-x-1 [class^=grid]{column-gap:.25rem}.gap-y-1,.gap-y-1 [class^=grid]{row-gap:.25rem}.gap-2,.gap-2 [class^=grid]{gap:.5rem}.gap-x-2,.gap-x-2 [class^=grid]{column-gap:.5rem}.gap-y-2,.gap-y-2 [class^=grid]{row-gap:.5rem}.gap-3,.gap-3 [class^=grid]{gap:.75rem}.gap-x-3,.gap-x-3 [class^=grid]{column-gap:.75rem}.gap-y-3,.gap-y-3 [class^=grid]{row-gap:.75rem}.gap-4,.gap-4 [class^=grid]{gap:1rem}.gap-x-4,.gap-x-4 [class^=grid]{column-gap:1rem}.gap-y-4,.gap-y-4 [class^=grid]{row-gap:1rem}.gap-5,.gap-5 [class^=grid]{gap:1.25rem}.gap-x-5,.gap-x-5 [class^=grid]{column-gap:1.25rem}.gap-y-5,.gap-y-5 [class^=grid]{row-gap:1.25rem}.gap-6,.gap-6 [class^=grid]{gap:1.5rem}.gap-x-6,.gap-x-6 [class^=grid]{column-gap:1.5rem}.gap-y-6,.gap-y-6 [class^=grid]{row-gap:1.5rem}.gap-7,.gap-7 [class^=grid]{gap:1.75rem}.gap-x-7,.gap-x-7 [class^=grid]{column-gap:1.75rem}.gap-y-7,.gap-y-7 [class^=grid]{row-gap:1.75rem}.gap-8,.gap-8 [class^=grid]{gap:2rem}.gap-x-8,.gap-x-8 [class^=grid]{column-gap:2rem}.gap-y-8,.gap-y-8 [class^=grid]{row-gap:2rem}.gap-9,.gap-9 [class^=grid]{gap:2.25rem}.gap-x-9,.gap-x-9 [class^=grid]{column-gap:2.25rem}.gap-y-9,.gap-y-9 [class^=grid]{row-gap:2.25rem}.gap-10,.gap-10 [class^=grid]{gap:2.5rem}.gap-x-10,.gap-x-10 [class^=grid]{column-gap:2.5rem}.gap-y-10,.gap-y-10 [class^=grid]{row-gap:2.5rem} diff --git a/content/page-templates/css-grid-framework/3-rows/css.inc b/content/page-templates/css-grid-framework/3-rows/css.inc index 8ebff36dd..f6e1a56ad 100644 --- a/content/page-templates/css-grid-framework/3-rows/css.inc +++ b/content/page-templates/css-grid-framework/3-rows/css.inc @@ -1,9 +1,9 @@ /** * License: MIT License * Generated on 25 May 2021 - * Author: Fpassaniti for Opendatasoft + * Author: Fpassaniti for Huwise * Version: 0.1 - * Description: CSS Grid framework for Opendatasoft pages (and more). Go to http://codelibrary.opendatasoft.com/ for more information (doc & examples). + * Description: CSS Grid framework for Huwise pages (and more). Go to http://codelibrary.huwise.com/ for more information (doc & examples). */ [class^=grid]{display:grid;grid-gap:1rem}.grid-auto,.grid-auto-flow,.grid-cols-auto-flow{grid-auto-flow:column}.grid-rows-auto-flow{grid-auto-flow:row}.grid-cols-fit,.grid-fit{grid-auto-columns:max-content}.grid-rows-fit{grid-auto-rows:max-content}.grid-2,.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3,.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4,.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-5,.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-6,.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-7,.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.grid-8,.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.grid-9,.grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.grid-10,.grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.grid-11,.grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.grid-12,.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.grid-cols-none{grid-template-columns:none}.grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.grid-rows-none{grid-template-rows:none}[class*=":cell"],[class^=cell]{display:flex;flex-direction:column;justify-content:stretch}.cell-auto,.cell-span-auto{grid-column:auto}.cell-full,.cell-span-full{grid-column:1/-1}.cell-1,.cell-span-1{grid-column:span 1/span 1}.cell-2,.cell-span-2{grid-column:span 2/span 2}.cell-3,.cell-span-3{grid-column:span 3/span 3}.cell-4,.cell-span-4{grid-column:span 4/span 4}.cell-5,.cell-span-5{grid-column:span 5/span 5}.cell-6,.cell-span-6{grid-column:span 6/span 6}.cell-7,.cell-span-7{grid-column:span 7/span 7}.cell-8,.cell-span-8{grid-column:span 8/span 8}.cell-9,.cell-span-9{grid-column:span 9/span 9}.cell-10,.cell-span-10{grid-column:span 10/span 10}.cell-11,.cell-span-11{grid-column:span 11/span 11}.cell-12,.cell-span-12{grid-column:span 12/span 12}.cell-row-auto{grid-row:auto}.cell-row-full{grid-row:1/-1}.cell-row-1,.cell-row-span-1{grid-row:span 1/span 1}.cell-row-2,.cell-row-span-2{grid-row:span 2/span 2}.cell-row-3,.cell-row-span-3{grid-row:span 3/span 3}.cell-row-4,.cell-row-span-4{grid-row:span 4/span 4}.cell-row-5,.cell-row-span-5{grid-row:span 5/span 5}.cell-row-6,.cell-row-span-6{grid-row:span 6/span 6}.cell-col-start-1,.cell-start-1{grid-column-start:1}.cell-col-end-1,.cell-end-1{grid-column-end:1}.cell-col-start-2,.cell-start-2{grid-column-start:2}.cell-col-end-2,.cell-end-2{grid-column-end:2}.cell-col-start-3,.cell-start-3{grid-column-start:3}.cell-col-end-3,.cell-end-3{grid-column-end:3}.cell-col-start-4,.cell-start-4{grid-column-start:4}.cell-col-end-4,.cell-end-4{grid-column-end:4}.cell-col-start-5,.cell-start-5{grid-column-start:5}.cell-col-end-5,.cell-end-5{grid-column-end:5}.cell-col-start-6,.cell-start-6{grid-column-start:6}.cell-col-end-6,.cell-end-6{grid-column-end:6}.cell-col-start-7,.cell-start-7{grid-column-start:7}.cell-col-end-7,.cell-end-7{grid-column-end:7}.cell-col-start-8,.cell-start-8{grid-column-start:8}.cell-col-end-8,.cell-end-8{grid-column-end:8}.cell-col-start-9,.cell-start-9{grid-column-start:9}.cell-col-end-9,.cell-end-9{grid-column-end:9}.cell-col-start-10,.cell-start-10{grid-column-start:10}.cell-col-end-10,.cell-end-10{grid-column-end:10}.cell-col-start-11,.cell-start-11{grid-column-start:11}.cell-col-end-11,.cell-end-11{grid-column-end:11}.cell-col-start-12,.cell-start-12{grid-column-start:12}.cell-col-end-12,.cell-end-12{grid-column-end:12}.cell-col-start-13,.cell-start-13{grid-column-start:13}.cell-col-end-13,.cell-end-13{grid-column-end:13}.cell-row-start-1{grid-row-start:1}.cell-row-end-1{grid-row-end:1}.cell-row-start-2{grid-row-start:2}.cell-row-end-2{grid-row-end:2}.cell-row-start-3{grid-row-start:3}.cell-row-end-3{grid-row-end:3}.cell-row-start-4{grid-row-start:4}.cell-row-end-4{grid-row-end:4}.cell-row-start-5{grid-row-start:5}.cell-row-end-5{grid-row-end:5}.cell-row-start-6{grid-row-start:6}.cell-row-end-6{grid-row-end:6}.cell-row-start-7{grid-row-start:7}.cell-row-end-7{grid-row-end:7}.cell-order-first{order:-9999}.cell-order-last{order:9999}.cell-order-none{order:0}.cell-order-1{order:1}.cell-order-2{order:2}.cell-order-3{order:3}.cell-order-4{order:4}.cell-order-5{order:5}.cell-order-6{order:6}.cell-order-7{order:7}.cell-order-8{order:8}.cell-order-9{order:9}.cell-order-10{order:10}.cell-order-11{order:11}.cell-order-12{order:12}@media screen and (min-width:640px),print{.sm\:grid-2,.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-3,.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-4,.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-5,.sm\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.sm\:grid-6,.sm\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.sm\:grid-7,.sm\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.sm\:grid-8,.sm\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.sm\:grid-9,.sm\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.sm\:grid-10,.sm\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.sm\:grid-11,.sm\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.sm\:grid-12,.sm\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.sm\:grid-cols-none{grid-template-columns:none}.sm\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.sm\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.sm\:grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.sm\:grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.sm\:grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.sm\:grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.sm\:grid-rows-none{grid-template-rows:none}.sm\:cell-auto,.sm\:cell-span-auto{grid-column:auto}.sm\:cell-full,.sm\:cell-span-full{grid-column:1/-1}.sm\:cell-1,.sm\:cell-span-1{grid-column:span 1/span 1}.sm\:cell-2,.sm\:cell-span-2{grid-column:span 2/span 2}.sm\:cell-3,.sm\:cell-span-3{grid-column:span 3/span 3}.sm\:cell-4,.sm\:cell-span-4{grid-column:span 4/span 4}.sm\:cell-5,.sm\:cell-span-5{grid-column:span 5/span 5}.sm\:cell-6,.sm\:cell-span-6{grid-column:span 6/span 6}.sm\:cell-7,.sm\:cell-span-7{grid-column:span 7/span 7}.sm\:cell-8,.sm\:cell-span-8{grid-column:span 8/span 8}.sm\:cell-9,.sm\:cell-span-9{grid-column:span 9/span 9}.sm\:cell-10,.sm\:cell-span-10{grid-column:span 10/span 10}.sm\:cell-11,.sm\:cell-span-11{grid-column:span 11/span 11}.sm\:cell-12,.sm\:cell-span-12{grid-column:span 12/span 12}.sm\:cell-row-auto{grid-row:auto}.sm\:cell-row-full{grid-row:1/-1}.sm\:cell-row-1,.sm\:cell-row-span-1{grid-row:span 1/span 1}.sm\:cell-row-2,.sm\:cell-row-span-2{grid-row:span 2/span 2}.sm\:cell-row-3,.sm\:cell-row-span-3{grid-row:span 3/span 3}.sm\:cell-row-4,.sm\:cell-row-span-4{grid-row:span 4/span 4}.sm\:cell-row-5,.sm\:cell-row-span-5{grid-row:span 5/span 5}.sm\:cell-row-6,.sm\:cell-row-span-6{grid-row:span 6/span 6}.sm\:cell-col-start-1,.sm\:cell-start-1{grid-column-start:1}.sm\:cell-col-end-1,.sm\:cell-end-1{grid-column-end:1}.sm\:cell-col-start-2,.sm\:cell-start-2{grid-column-start:2}.sm\:cell-col-end-2,.sm\:cell-end-2{grid-column-end:2}.sm\:cell-col-start-3,.sm\:cell-start-3{grid-column-start:3}.sm\:cell-col-end-3,.sm\:cell-end-3{grid-column-end:3}.sm\:cell-col-start-4,.sm\:cell-start-4{grid-column-start:4}.sm\:cell-col-end-4,.sm\:cell-end-4{grid-column-end:4}.sm\:cell-col-start-5,.sm\:cell-start-5{grid-column-start:5}.sm\:cell-col-end-5,.sm\:cell-end-5{grid-column-end:5}.sm\:cell-col-start-6,.sm\:cell-start-6{grid-column-start:6}.sm\:cell-col-end-6,.sm\:cell-end-6{grid-column-end:6}.sm\:cell-col-start-7,.sm\:cell-start-7{grid-column-start:7}.sm\:cell-col-end-7,.sm\:cell-end-7{grid-column-end:7}.sm\:cell-col-start-8,.sm\:cell-start-8{grid-column-start:8}.sm\:cell-col-end-8,.sm\:cell-end-8{grid-column-end:8}.sm\:cell-col-start-9,.sm\:cell-start-9{grid-column-start:9}.sm\:cell-col-end-9,.sm\:cell-end-9{grid-column-end:9}.sm\:cell-col-start-10,.sm\:cell-start-10{grid-column-start:10}.sm\:cell-col-end-10,.sm\:cell-end-10{grid-column-end:10}.sm\:cell-col-start-11,.sm\:cell-start-11{grid-column-start:11}.sm\:cell-col-end-11,.sm\:cell-end-11{grid-column-end:11}.sm\:cell-col-start-12,.sm\:cell-start-12{grid-column-start:12}.sm\:cell-col-end-12,.sm\:cell-end-12{grid-column-end:12}.sm\:cell-col-start-13,.sm\:cell-start-13{grid-column-start:13}.sm\:cell-col-end-13,.sm\:cell-end-13{grid-column-end:13}.sm\:cell-row-start-1{grid-row-start:1}.sm\:cell-row-end-1{grid-row-end:1}.sm\:cell-row-start-2{grid-row-start:2}.sm\:cell-row-end-2{grid-row-end:2}.sm\:cell-row-start-3{grid-row-start:3}.sm\:cell-row-end-3{grid-row-end:3}.sm\:cell-row-start-4{grid-row-start:4}.sm\:cell-row-end-4{grid-row-end:4}.sm\:cell-row-start-5{grid-row-start:5}.sm\:cell-row-end-5{grid-row-end:5}.sm\:cell-row-start-6{grid-row-start:6}.sm\:cell-row-end-6{grid-row-end:6}.sm\:cell-row-start-7{grid-row-start:7}.sm\:cell-row-end-7{grid-row-end:7}.sm\:cell-order-first{order:-9999}.sm\:cell-order-last{order:9999}.sm\:cell-order-none{order:0}.sm\:cell-order-1{order:1}.sm\:cell-order-2{order:2}.sm\:cell-order-3{order:3}.sm\:cell-order-4{order:4}.sm\:cell-order-5{order:5}.sm\:cell-order-6{order:6}.sm\:cell-order-7{order:7}.sm\:cell-order-8{order:8}.sm\:cell-order-9{order:9}.sm\:cell-order-10{order:10}.sm\:cell-order-11{order:11}.sm\:cell-order-12{order:12}}@media screen and (min-width:768px),print{.md\:grid-2,.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-3,.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-4,.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-5,.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:grid-6,.md\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.md\:grid-7,.md\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.md\:grid-8,.md\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.md\:grid-9,.md\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.md\:grid-10,.md\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.md\:grid-11,.md\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.md\:grid-12,.md\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.md\:grid-cols-none{grid-template-columns:none}.md\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.md\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.md\:grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.md\:grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.md\:grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.md\:grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.md\:grid-rows-none{grid-template-rows:none}.md\:cell-auto,.md\:cell-span-auto{grid-column:auto}.md\:cell-full,.md\:cell-span-full{grid-column:1/-1}.md\:cell-1,.md\:cell-span-1{grid-column:span 1/span 1}.md\:cell-2,.md\:cell-span-2{grid-column:span 2/span 2}.md\:cell-3,.md\:cell-span-3{grid-column:span 3/span 3}.md\:cell-4,.md\:cell-span-4{grid-column:span 4/span 4}.md\:cell-5,.md\:cell-span-5{grid-column:span 5/span 5}.md\:cell-6,.md\:cell-span-6{grid-column:span 6/span 6}.md\:cell-7,.md\:cell-span-7{grid-column:span 7/span 7}.md\:cell-8,.md\:cell-span-8{grid-column:span 8/span 8}.md\:cell-9,.md\:cell-span-9{grid-column:span 9/span 9}.md\:cell-10,.md\:cell-span-10{grid-column:span 10/span 10}.md\:cell-11,.md\:cell-span-11{grid-column:span 11/span 11}.md\:cell-12,.md\:cell-span-12{grid-column:span 12/span 12}.md\:cell-row-auto{grid-row:auto}.md\:cell-row-full{grid-row:1/-1}.md\:cell-row-1,.md\:cell-row-span-1{grid-row:span 1/span 1}.md\:cell-row-2,.md\:cell-row-span-2{grid-row:span 2/span 2}.md\:cell-row-3,.md\:cell-row-span-3{grid-row:span 3/span 3}.md\:cell-row-4,.md\:cell-row-span-4{grid-row:span 4/span 4}.md\:cell-row-5,.md\:cell-row-span-5{grid-row:span 5/span 5}.md\:cell-row-6,.md\:cell-row-span-6{grid-row:span 6/span 6}.md\:cell-col-start-1,.md\:cell-start-1{grid-column-start:1}.md\:cell-col-end-1,.md\:cell-end-1{grid-column-end:1}.md\:cell-col-start-2,.md\:cell-start-2{grid-column-start:2}.md\:cell-col-end-2,.md\:cell-end-2{grid-column-end:2}.md\:cell-col-start-3,.md\:cell-start-3{grid-column-start:3}.md\:cell-col-end-3,.md\:cell-end-3{grid-column-end:3}.md\:cell-col-start-4,.md\:cell-start-4{grid-column-start:4}.md\:cell-col-end-4,.md\:cell-end-4{grid-column-end:4}.md\:cell-col-start-5,.md\:cell-start-5{grid-column-start:5}.md\:cell-col-end-5,.md\:cell-end-5{grid-column-end:5}.md\:cell-col-start-6,.md\:cell-start-6{grid-column-start:6}.md\:cell-col-end-6,.md\:cell-end-6{grid-column-end:6}.md\:cell-col-start-7,.md\:cell-start-7{grid-column-start:7}.md\:cell-col-end-7,.md\:cell-end-7{grid-column-end:7}.md\:cell-col-start-8,.md\:cell-start-8{grid-column-start:8}.md\:cell-col-end-8,.md\:cell-end-8{grid-column-end:8}.md\:cell-col-start-9,.md\:cell-start-9{grid-column-start:9}.md\:cell-col-end-9,.md\:cell-end-9{grid-column-end:9}.md\:cell-col-start-10,.md\:cell-start-10{grid-column-start:10}.md\:cell-col-end-10,.md\:cell-end-10{grid-column-end:10}.md\:cell-col-start-11,.md\:cell-start-11{grid-column-start:11}.md\:cell-col-end-11,.md\:cell-end-11{grid-column-end:11}.md\:cell-col-start-12,.md\:cell-start-12{grid-column-start:12}.md\:cell-col-end-12,.md\:cell-end-12{grid-column-end:12}.md\:cell-col-start-13,.md\:cell-start-13{grid-column-start:13}.md\:cell-col-end-13,.md\:cell-end-13{grid-column-end:13}.md\:cell-row-start-1{grid-row-start:1}.md\:cell-row-end-1{grid-row-end:1}.md\:cell-row-start-2{grid-row-start:2}.md\:cell-row-end-2{grid-row-end:2}.md\:cell-row-start-3{grid-row-start:3}.md\:cell-row-end-3{grid-row-end:3}.md\:cell-row-start-4{grid-row-start:4}.md\:cell-row-end-4{grid-row-end:4}.md\:cell-row-start-5{grid-row-start:5}.md\:cell-row-end-5{grid-row-end:5}.md\:cell-row-start-6{grid-row-start:6}.md\:cell-row-end-6{grid-row-end:6}.md\:cell-row-start-7{grid-row-start:7}.md\:cell-row-end-7{grid-row-end:7}.md\:cell-order-first{order:-9999}.md\:cell-order-last{order:9999}.md\:cell-order-none{order:0}.md\:cell-order-1{order:1}.md\:cell-order-2{order:2}.md\:cell-order-3{order:3}.md\:cell-order-4{order:4}.md\:cell-order-5{order:5}.md\:cell-order-6{order:6}.md\:cell-order-7{order:7}.md\:cell-order-8{order:8}.md\:cell-order-9{order:9}.md\:cell-order-10{order:10}.md\:cell-order-11{order:11}.md\:cell-order-12{order:12}}@media screen and (min-width:1024px),print{.lg\:grid-2,.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-3,.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-4,.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-5,.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-6,.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:grid-7,.lg\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.lg\:grid-8,.lg\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.lg\:grid-9,.lg\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.lg\:grid-10,.lg\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.lg\:grid-11,.lg\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.lg\:grid-12,.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-none{grid-template-columns:none}.lg\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.lg\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.lg\:grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.lg\:grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.lg\:grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.lg\:grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.lg\:grid-rows-none{grid-template-rows:none}.lg\:cell-auto,.lg\:cell-span-auto{grid-column:auto}.lg\:cell-full,.lg\:cell-span-full{grid-column:1/-1}.lg\:cell-1,.lg\:cell-span-1{grid-column:span 1/span 1}.lg\:cell-2,.lg\:cell-span-2{grid-column:span 2/span 2}.lg\:cell-3,.lg\:cell-span-3{grid-column:span 3/span 3}.lg\:cell-4,.lg\:cell-span-4{grid-column:span 4/span 4}.lg\:cell-5,.lg\:cell-span-5{grid-column:span 5/span 5}.lg\:cell-6,.lg\:cell-span-6{grid-column:span 6/span 6}.lg\:cell-7,.lg\:cell-span-7{grid-column:span 7/span 7}.lg\:cell-8,.lg\:cell-span-8{grid-column:span 8/span 8}.lg\:cell-9,.lg\:cell-span-9{grid-column:span 9/span 9}.lg\:cell-10,.lg\:cell-span-10{grid-column:span 10/span 10}.lg\:cell-11,.lg\:cell-span-11{grid-column:span 11/span 11}.lg\:cell-12,.lg\:cell-span-12{grid-column:span 12/span 12}.lg\:cell-row-auto{grid-row:auto}.lg\:cell-row-full{grid-row:1/-1}.lg\:cell-row-1,.lg\:cell-row-span-1{grid-row:span 1/span 1}.lg\:cell-row-2,.lg\:cell-row-span-2{grid-row:span 2/span 2}.lg\:cell-row-3,.lg\:cell-row-span-3{grid-row:span 3/span 3}.lg\:cell-row-4,.lg\:cell-row-span-4{grid-row:span 4/span 4}.lg\:cell-row-5,.lg\:cell-row-span-5{grid-row:span 5/span 5}.lg\:cell-row-6,.lg\:cell-row-span-6{grid-row:span 6/span 6}.lg\:cell-col-start-1,.lg\:cell-start-1{grid-column-start:1}.lg\:cell-col-end-1,.lg\:cell-end-1{grid-column-end:1}.lg\:cell-col-start-2,.lg\:cell-start-2{grid-column-start:2}.lg\:cell-col-end-2,.lg\:cell-end-2{grid-column-end:2}.lg\:cell-col-start-3,.lg\:cell-start-3{grid-column-start:3}.lg\:cell-col-end-3,.lg\:cell-end-3{grid-column-end:3}.lg\:cell-col-start-4,.lg\:cell-start-4{grid-column-start:4}.lg\:cell-col-end-4,.lg\:cell-end-4{grid-column-end:4}.lg\:cell-col-start-5,.lg\:cell-start-5{grid-column-start:5}.lg\:cell-col-end-5,.lg\:cell-end-5{grid-column-end:5}.lg\:cell-col-start-6,.lg\:cell-start-6{grid-column-start:6}.lg\:cell-col-end-6,.lg\:cell-end-6{grid-column-end:6}.lg\:cell-col-start-7,.lg\:cell-start-7{grid-column-start:7}.lg\:cell-col-end-7,.lg\:cell-end-7{grid-column-end:7}.lg\:cell-col-start-8,.lg\:cell-start-8{grid-column-start:8}.lg\:cell-col-end-8,.lg\:cell-end-8{grid-column-end:8}.lg\:cell-col-start-9,.lg\:cell-start-9{grid-column-start:9}.lg\:cell-col-end-9,.lg\:cell-end-9{grid-column-end:9}.lg\:cell-col-start-10,.lg\:cell-start-10{grid-column-start:10}.lg\:cell-col-end-10,.lg\:cell-end-10{grid-column-end:10}.lg\:cell-col-start-11,.lg\:cell-start-11{grid-column-start:11}.lg\:cell-col-end-11,.lg\:cell-end-11{grid-column-end:11}.lg\:cell-col-start-12,.lg\:cell-start-12{grid-column-start:12}.lg\:cell-col-end-12,.lg\:cell-end-12{grid-column-end:12}.lg\:cell-col-start-13,.lg\:cell-start-13{grid-column-start:13}.lg\:cell-col-end-13,.lg\:cell-end-13{grid-column-end:13}.lg\:cell-row-start-1{grid-row-start:1}.lg\:cell-row-end-1{grid-row-end:1}.lg\:cell-row-start-2{grid-row-start:2}.lg\:cell-row-end-2{grid-row-end:2}.lg\:cell-row-start-3{grid-row-start:3}.lg\:cell-row-end-3{grid-row-end:3}.lg\:cell-row-start-4{grid-row-start:4}.lg\:cell-row-end-4{grid-row-end:4}.lg\:cell-row-start-5{grid-row-start:5}.lg\:cell-row-end-5{grid-row-end:5}.lg\:cell-row-start-6{grid-row-start:6}.lg\:cell-row-end-6{grid-row-end:6}.lg\:cell-row-start-7{grid-row-start:7}.lg\:cell-row-end-7{grid-row-end:7}.lg\:cell-order-first{order:-9999}.lg\:cell-order-last{order:9999}.lg\:cell-order-none{order:0}.lg\:cell-order-1{order:1}.lg\:cell-order-2{order:2}.lg\:cell-order-3{order:3}.lg\:cell-order-4{order:4}.lg\:cell-order-5{order:5}.lg\:cell-order-6{order:6}.lg\:cell-order-7{order:7}.lg\:cell-order-8{order:8}.lg\:cell-order-9{order:9}.lg\:cell-order-10{order:10}.lg\:cell-order-11{order:11}.lg\:cell-order-12{order:12}}.gap-px{gap:1px}.gap-x-px{column-gap:1px}.gap-y-px{row-gap:1px}.gap-0,.gap-0 [class^=grid]{gap:0}.gap-x-0,.gap-x-0 [class^=grid]{column-gap:0}.gap-y-0,.gap-y-0 [class^=grid]{row-gap:0}.gap-1,.gap-1 [class^=grid]{gap:.25rem}.gap-x-1,.gap-x-1 [class^=grid]{column-gap:.25rem}.gap-y-1,.gap-y-1 [class^=grid]{row-gap:.25rem}.gap-2,.gap-2 [class^=grid]{gap:.5rem}.gap-x-2,.gap-x-2 [class^=grid]{column-gap:.5rem}.gap-y-2,.gap-y-2 [class^=grid]{row-gap:.5rem}.gap-3,.gap-3 [class^=grid]{gap:.75rem}.gap-x-3,.gap-x-3 [class^=grid]{column-gap:.75rem}.gap-y-3,.gap-y-3 [class^=grid]{row-gap:.75rem}.gap-4,.gap-4 [class^=grid]{gap:1rem}.gap-x-4,.gap-x-4 [class^=grid]{column-gap:1rem}.gap-y-4,.gap-y-4 [class^=grid]{row-gap:1rem}.gap-5,.gap-5 [class^=grid]{gap:1.25rem}.gap-x-5,.gap-x-5 [class^=grid]{column-gap:1.25rem}.gap-y-5,.gap-y-5 [class^=grid]{row-gap:1.25rem}.gap-6,.gap-6 [class^=grid]{gap:1.5rem}.gap-x-6,.gap-x-6 [class^=grid]{column-gap:1.5rem}.gap-y-6,.gap-y-6 [class^=grid]{row-gap:1.5rem}.gap-7,.gap-7 [class^=grid]{gap:1.75rem}.gap-x-7,.gap-x-7 [class^=grid]{column-gap:1.75rem}.gap-y-7,.gap-y-7 [class^=grid]{row-gap:1.75rem}.gap-8,.gap-8 [class^=grid]{gap:2rem}.gap-x-8,.gap-x-8 [class^=grid]{column-gap:2rem}.gap-y-8,.gap-y-8 [class^=grid]{row-gap:2rem}.gap-9,.gap-9 [class^=grid]{gap:2.25rem}.gap-x-9,.gap-x-9 [class^=grid]{column-gap:2.25rem}.gap-y-9,.gap-y-9 [class^=grid]{row-gap:2.25rem}.gap-10,.gap-10 [class^=grid]{gap:2.5rem}.gap-x-10,.gap-x-10 [class^=grid]{column-gap:2.5rem}.gap-y-10,.gap-y-10 [class^=grid]{row-gap:2.5rem} diff --git a/content/page-templates/css-grid-framework/4-gap/css.inc b/content/page-templates/css-grid-framework/4-gap/css.inc index 8ebff36dd..f6e1a56ad 100644 --- a/content/page-templates/css-grid-framework/4-gap/css.inc +++ b/content/page-templates/css-grid-framework/4-gap/css.inc @@ -1,9 +1,9 @@ /** * License: MIT License * Generated on 25 May 2021 - * Author: Fpassaniti for Opendatasoft + * Author: Fpassaniti for Huwise * Version: 0.1 - * Description: CSS Grid framework for Opendatasoft pages (and more). Go to http://codelibrary.opendatasoft.com/ for more information (doc & examples). + * Description: CSS Grid framework for Huwise pages (and more). Go to http://codelibrary.huwise.com/ for more information (doc & examples). */ [class^=grid]{display:grid;grid-gap:1rem}.grid-auto,.grid-auto-flow,.grid-cols-auto-flow{grid-auto-flow:column}.grid-rows-auto-flow{grid-auto-flow:row}.grid-cols-fit,.grid-fit{grid-auto-columns:max-content}.grid-rows-fit{grid-auto-rows:max-content}.grid-2,.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3,.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4,.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-5,.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-6,.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-7,.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.grid-8,.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.grid-9,.grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.grid-10,.grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.grid-11,.grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.grid-12,.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.grid-cols-none{grid-template-columns:none}.grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.grid-rows-none{grid-template-rows:none}[class*=":cell"],[class^=cell]{display:flex;flex-direction:column;justify-content:stretch}.cell-auto,.cell-span-auto{grid-column:auto}.cell-full,.cell-span-full{grid-column:1/-1}.cell-1,.cell-span-1{grid-column:span 1/span 1}.cell-2,.cell-span-2{grid-column:span 2/span 2}.cell-3,.cell-span-3{grid-column:span 3/span 3}.cell-4,.cell-span-4{grid-column:span 4/span 4}.cell-5,.cell-span-5{grid-column:span 5/span 5}.cell-6,.cell-span-6{grid-column:span 6/span 6}.cell-7,.cell-span-7{grid-column:span 7/span 7}.cell-8,.cell-span-8{grid-column:span 8/span 8}.cell-9,.cell-span-9{grid-column:span 9/span 9}.cell-10,.cell-span-10{grid-column:span 10/span 10}.cell-11,.cell-span-11{grid-column:span 11/span 11}.cell-12,.cell-span-12{grid-column:span 12/span 12}.cell-row-auto{grid-row:auto}.cell-row-full{grid-row:1/-1}.cell-row-1,.cell-row-span-1{grid-row:span 1/span 1}.cell-row-2,.cell-row-span-2{grid-row:span 2/span 2}.cell-row-3,.cell-row-span-3{grid-row:span 3/span 3}.cell-row-4,.cell-row-span-4{grid-row:span 4/span 4}.cell-row-5,.cell-row-span-5{grid-row:span 5/span 5}.cell-row-6,.cell-row-span-6{grid-row:span 6/span 6}.cell-col-start-1,.cell-start-1{grid-column-start:1}.cell-col-end-1,.cell-end-1{grid-column-end:1}.cell-col-start-2,.cell-start-2{grid-column-start:2}.cell-col-end-2,.cell-end-2{grid-column-end:2}.cell-col-start-3,.cell-start-3{grid-column-start:3}.cell-col-end-3,.cell-end-3{grid-column-end:3}.cell-col-start-4,.cell-start-4{grid-column-start:4}.cell-col-end-4,.cell-end-4{grid-column-end:4}.cell-col-start-5,.cell-start-5{grid-column-start:5}.cell-col-end-5,.cell-end-5{grid-column-end:5}.cell-col-start-6,.cell-start-6{grid-column-start:6}.cell-col-end-6,.cell-end-6{grid-column-end:6}.cell-col-start-7,.cell-start-7{grid-column-start:7}.cell-col-end-7,.cell-end-7{grid-column-end:7}.cell-col-start-8,.cell-start-8{grid-column-start:8}.cell-col-end-8,.cell-end-8{grid-column-end:8}.cell-col-start-9,.cell-start-9{grid-column-start:9}.cell-col-end-9,.cell-end-9{grid-column-end:9}.cell-col-start-10,.cell-start-10{grid-column-start:10}.cell-col-end-10,.cell-end-10{grid-column-end:10}.cell-col-start-11,.cell-start-11{grid-column-start:11}.cell-col-end-11,.cell-end-11{grid-column-end:11}.cell-col-start-12,.cell-start-12{grid-column-start:12}.cell-col-end-12,.cell-end-12{grid-column-end:12}.cell-col-start-13,.cell-start-13{grid-column-start:13}.cell-col-end-13,.cell-end-13{grid-column-end:13}.cell-row-start-1{grid-row-start:1}.cell-row-end-1{grid-row-end:1}.cell-row-start-2{grid-row-start:2}.cell-row-end-2{grid-row-end:2}.cell-row-start-3{grid-row-start:3}.cell-row-end-3{grid-row-end:3}.cell-row-start-4{grid-row-start:4}.cell-row-end-4{grid-row-end:4}.cell-row-start-5{grid-row-start:5}.cell-row-end-5{grid-row-end:5}.cell-row-start-6{grid-row-start:6}.cell-row-end-6{grid-row-end:6}.cell-row-start-7{grid-row-start:7}.cell-row-end-7{grid-row-end:7}.cell-order-first{order:-9999}.cell-order-last{order:9999}.cell-order-none{order:0}.cell-order-1{order:1}.cell-order-2{order:2}.cell-order-3{order:3}.cell-order-4{order:4}.cell-order-5{order:5}.cell-order-6{order:6}.cell-order-7{order:7}.cell-order-8{order:8}.cell-order-9{order:9}.cell-order-10{order:10}.cell-order-11{order:11}.cell-order-12{order:12}@media screen and (min-width:640px),print{.sm\:grid-2,.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-3,.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-4,.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-5,.sm\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.sm\:grid-6,.sm\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.sm\:grid-7,.sm\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.sm\:grid-8,.sm\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.sm\:grid-9,.sm\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.sm\:grid-10,.sm\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.sm\:grid-11,.sm\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.sm\:grid-12,.sm\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.sm\:grid-cols-none{grid-template-columns:none}.sm\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.sm\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.sm\:grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.sm\:grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.sm\:grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.sm\:grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.sm\:grid-rows-none{grid-template-rows:none}.sm\:cell-auto,.sm\:cell-span-auto{grid-column:auto}.sm\:cell-full,.sm\:cell-span-full{grid-column:1/-1}.sm\:cell-1,.sm\:cell-span-1{grid-column:span 1/span 1}.sm\:cell-2,.sm\:cell-span-2{grid-column:span 2/span 2}.sm\:cell-3,.sm\:cell-span-3{grid-column:span 3/span 3}.sm\:cell-4,.sm\:cell-span-4{grid-column:span 4/span 4}.sm\:cell-5,.sm\:cell-span-5{grid-column:span 5/span 5}.sm\:cell-6,.sm\:cell-span-6{grid-column:span 6/span 6}.sm\:cell-7,.sm\:cell-span-7{grid-column:span 7/span 7}.sm\:cell-8,.sm\:cell-span-8{grid-column:span 8/span 8}.sm\:cell-9,.sm\:cell-span-9{grid-column:span 9/span 9}.sm\:cell-10,.sm\:cell-span-10{grid-column:span 10/span 10}.sm\:cell-11,.sm\:cell-span-11{grid-column:span 11/span 11}.sm\:cell-12,.sm\:cell-span-12{grid-column:span 12/span 12}.sm\:cell-row-auto{grid-row:auto}.sm\:cell-row-full{grid-row:1/-1}.sm\:cell-row-1,.sm\:cell-row-span-1{grid-row:span 1/span 1}.sm\:cell-row-2,.sm\:cell-row-span-2{grid-row:span 2/span 2}.sm\:cell-row-3,.sm\:cell-row-span-3{grid-row:span 3/span 3}.sm\:cell-row-4,.sm\:cell-row-span-4{grid-row:span 4/span 4}.sm\:cell-row-5,.sm\:cell-row-span-5{grid-row:span 5/span 5}.sm\:cell-row-6,.sm\:cell-row-span-6{grid-row:span 6/span 6}.sm\:cell-col-start-1,.sm\:cell-start-1{grid-column-start:1}.sm\:cell-col-end-1,.sm\:cell-end-1{grid-column-end:1}.sm\:cell-col-start-2,.sm\:cell-start-2{grid-column-start:2}.sm\:cell-col-end-2,.sm\:cell-end-2{grid-column-end:2}.sm\:cell-col-start-3,.sm\:cell-start-3{grid-column-start:3}.sm\:cell-col-end-3,.sm\:cell-end-3{grid-column-end:3}.sm\:cell-col-start-4,.sm\:cell-start-4{grid-column-start:4}.sm\:cell-col-end-4,.sm\:cell-end-4{grid-column-end:4}.sm\:cell-col-start-5,.sm\:cell-start-5{grid-column-start:5}.sm\:cell-col-end-5,.sm\:cell-end-5{grid-column-end:5}.sm\:cell-col-start-6,.sm\:cell-start-6{grid-column-start:6}.sm\:cell-col-end-6,.sm\:cell-end-6{grid-column-end:6}.sm\:cell-col-start-7,.sm\:cell-start-7{grid-column-start:7}.sm\:cell-col-end-7,.sm\:cell-end-7{grid-column-end:7}.sm\:cell-col-start-8,.sm\:cell-start-8{grid-column-start:8}.sm\:cell-col-end-8,.sm\:cell-end-8{grid-column-end:8}.sm\:cell-col-start-9,.sm\:cell-start-9{grid-column-start:9}.sm\:cell-col-end-9,.sm\:cell-end-9{grid-column-end:9}.sm\:cell-col-start-10,.sm\:cell-start-10{grid-column-start:10}.sm\:cell-col-end-10,.sm\:cell-end-10{grid-column-end:10}.sm\:cell-col-start-11,.sm\:cell-start-11{grid-column-start:11}.sm\:cell-col-end-11,.sm\:cell-end-11{grid-column-end:11}.sm\:cell-col-start-12,.sm\:cell-start-12{grid-column-start:12}.sm\:cell-col-end-12,.sm\:cell-end-12{grid-column-end:12}.sm\:cell-col-start-13,.sm\:cell-start-13{grid-column-start:13}.sm\:cell-col-end-13,.sm\:cell-end-13{grid-column-end:13}.sm\:cell-row-start-1{grid-row-start:1}.sm\:cell-row-end-1{grid-row-end:1}.sm\:cell-row-start-2{grid-row-start:2}.sm\:cell-row-end-2{grid-row-end:2}.sm\:cell-row-start-3{grid-row-start:3}.sm\:cell-row-end-3{grid-row-end:3}.sm\:cell-row-start-4{grid-row-start:4}.sm\:cell-row-end-4{grid-row-end:4}.sm\:cell-row-start-5{grid-row-start:5}.sm\:cell-row-end-5{grid-row-end:5}.sm\:cell-row-start-6{grid-row-start:6}.sm\:cell-row-end-6{grid-row-end:6}.sm\:cell-row-start-7{grid-row-start:7}.sm\:cell-row-end-7{grid-row-end:7}.sm\:cell-order-first{order:-9999}.sm\:cell-order-last{order:9999}.sm\:cell-order-none{order:0}.sm\:cell-order-1{order:1}.sm\:cell-order-2{order:2}.sm\:cell-order-3{order:3}.sm\:cell-order-4{order:4}.sm\:cell-order-5{order:5}.sm\:cell-order-6{order:6}.sm\:cell-order-7{order:7}.sm\:cell-order-8{order:8}.sm\:cell-order-9{order:9}.sm\:cell-order-10{order:10}.sm\:cell-order-11{order:11}.sm\:cell-order-12{order:12}}@media screen and (min-width:768px),print{.md\:grid-2,.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-3,.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-4,.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-5,.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:grid-6,.md\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.md\:grid-7,.md\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.md\:grid-8,.md\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.md\:grid-9,.md\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.md\:grid-10,.md\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.md\:grid-11,.md\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.md\:grid-12,.md\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.md\:grid-cols-none{grid-template-columns:none}.md\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.md\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.md\:grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.md\:grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.md\:grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.md\:grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.md\:grid-rows-none{grid-template-rows:none}.md\:cell-auto,.md\:cell-span-auto{grid-column:auto}.md\:cell-full,.md\:cell-span-full{grid-column:1/-1}.md\:cell-1,.md\:cell-span-1{grid-column:span 1/span 1}.md\:cell-2,.md\:cell-span-2{grid-column:span 2/span 2}.md\:cell-3,.md\:cell-span-3{grid-column:span 3/span 3}.md\:cell-4,.md\:cell-span-4{grid-column:span 4/span 4}.md\:cell-5,.md\:cell-span-5{grid-column:span 5/span 5}.md\:cell-6,.md\:cell-span-6{grid-column:span 6/span 6}.md\:cell-7,.md\:cell-span-7{grid-column:span 7/span 7}.md\:cell-8,.md\:cell-span-8{grid-column:span 8/span 8}.md\:cell-9,.md\:cell-span-9{grid-column:span 9/span 9}.md\:cell-10,.md\:cell-span-10{grid-column:span 10/span 10}.md\:cell-11,.md\:cell-span-11{grid-column:span 11/span 11}.md\:cell-12,.md\:cell-span-12{grid-column:span 12/span 12}.md\:cell-row-auto{grid-row:auto}.md\:cell-row-full{grid-row:1/-1}.md\:cell-row-1,.md\:cell-row-span-1{grid-row:span 1/span 1}.md\:cell-row-2,.md\:cell-row-span-2{grid-row:span 2/span 2}.md\:cell-row-3,.md\:cell-row-span-3{grid-row:span 3/span 3}.md\:cell-row-4,.md\:cell-row-span-4{grid-row:span 4/span 4}.md\:cell-row-5,.md\:cell-row-span-5{grid-row:span 5/span 5}.md\:cell-row-6,.md\:cell-row-span-6{grid-row:span 6/span 6}.md\:cell-col-start-1,.md\:cell-start-1{grid-column-start:1}.md\:cell-col-end-1,.md\:cell-end-1{grid-column-end:1}.md\:cell-col-start-2,.md\:cell-start-2{grid-column-start:2}.md\:cell-col-end-2,.md\:cell-end-2{grid-column-end:2}.md\:cell-col-start-3,.md\:cell-start-3{grid-column-start:3}.md\:cell-col-end-3,.md\:cell-end-3{grid-column-end:3}.md\:cell-col-start-4,.md\:cell-start-4{grid-column-start:4}.md\:cell-col-end-4,.md\:cell-end-4{grid-column-end:4}.md\:cell-col-start-5,.md\:cell-start-5{grid-column-start:5}.md\:cell-col-end-5,.md\:cell-end-5{grid-column-end:5}.md\:cell-col-start-6,.md\:cell-start-6{grid-column-start:6}.md\:cell-col-end-6,.md\:cell-end-6{grid-column-end:6}.md\:cell-col-start-7,.md\:cell-start-7{grid-column-start:7}.md\:cell-col-end-7,.md\:cell-end-7{grid-column-end:7}.md\:cell-col-start-8,.md\:cell-start-8{grid-column-start:8}.md\:cell-col-end-8,.md\:cell-end-8{grid-column-end:8}.md\:cell-col-start-9,.md\:cell-start-9{grid-column-start:9}.md\:cell-col-end-9,.md\:cell-end-9{grid-column-end:9}.md\:cell-col-start-10,.md\:cell-start-10{grid-column-start:10}.md\:cell-col-end-10,.md\:cell-end-10{grid-column-end:10}.md\:cell-col-start-11,.md\:cell-start-11{grid-column-start:11}.md\:cell-col-end-11,.md\:cell-end-11{grid-column-end:11}.md\:cell-col-start-12,.md\:cell-start-12{grid-column-start:12}.md\:cell-col-end-12,.md\:cell-end-12{grid-column-end:12}.md\:cell-col-start-13,.md\:cell-start-13{grid-column-start:13}.md\:cell-col-end-13,.md\:cell-end-13{grid-column-end:13}.md\:cell-row-start-1{grid-row-start:1}.md\:cell-row-end-1{grid-row-end:1}.md\:cell-row-start-2{grid-row-start:2}.md\:cell-row-end-2{grid-row-end:2}.md\:cell-row-start-3{grid-row-start:3}.md\:cell-row-end-3{grid-row-end:3}.md\:cell-row-start-4{grid-row-start:4}.md\:cell-row-end-4{grid-row-end:4}.md\:cell-row-start-5{grid-row-start:5}.md\:cell-row-end-5{grid-row-end:5}.md\:cell-row-start-6{grid-row-start:6}.md\:cell-row-end-6{grid-row-end:6}.md\:cell-row-start-7{grid-row-start:7}.md\:cell-row-end-7{grid-row-end:7}.md\:cell-order-first{order:-9999}.md\:cell-order-last{order:9999}.md\:cell-order-none{order:0}.md\:cell-order-1{order:1}.md\:cell-order-2{order:2}.md\:cell-order-3{order:3}.md\:cell-order-4{order:4}.md\:cell-order-5{order:5}.md\:cell-order-6{order:6}.md\:cell-order-7{order:7}.md\:cell-order-8{order:8}.md\:cell-order-9{order:9}.md\:cell-order-10{order:10}.md\:cell-order-11{order:11}.md\:cell-order-12{order:12}}@media screen and (min-width:1024px),print{.lg\:grid-2,.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-3,.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-4,.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-5,.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-6,.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:grid-7,.lg\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.lg\:grid-8,.lg\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.lg\:grid-9,.lg\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.lg\:grid-10,.lg\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.lg\:grid-11,.lg\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.lg\:grid-12,.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-none{grid-template-columns:none}.lg\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.lg\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.lg\:grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.lg\:grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.lg\:grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.lg\:grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.lg\:grid-rows-none{grid-template-rows:none}.lg\:cell-auto,.lg\:cell-span-auto{grid-column:auto}.lg\:cell-full,.lg\:cell-span-full{grid-column:1/-1}.lg\:cell-1,.lg\:cell-span-1{grid-column:span 1/span 1}.lg\:cell-2,.lg\:cell-span-2{grid-column:span 2/span 2}.lg\:cell-3,.lg\:cell-span-3{grid-column:span 3/span 3}.lg\:cell-4,.lg\:cell-span-4{grid-column:span 4/span 4}.lg\:cell-5,.lg\:cell-span-5{grid-column:span 5/span 5}.lg\:cell-6,.lg\:cell-span-6{grid-column:span 6/span 6}.lg\:cell-7,.lg\:cell-span-7{grid-column:span 7/span 7}.lg\:cell-8,.lg\:cell-span-8{grid-column:span 8/span 8}.lg\:cell-9,.lg\:cell-span-9{grid-column:span 9/span 9}.lg\:cell-10,.lg\:cell-span-10{grid-column:span 10/span 10}.lg\:cell-11,.lg\:cell-span-11{grid-column:span 11/span 11}.lg\:cell-12,.lg\:cell-span-12{grid-column:span 12/span 12}.lg\:cell-row-auto{grid-row:auto}.lg\:cell-row-full{grid-row:1/-1}.lg\:cell-row-1,.lg\:cell-row-span-1{grid-row:span 1/span 1}.lg\:cell-row-2,.lg\:cell-row-span-2{grid-row:span 2/span 2}.lg\:cell-row-3,.lg\:cell-row-span-3{grid-row:span 3/span 3}.lg\:cell-row-4,.lg\:cell-row-span-4{grid-row:span 4/span 4}.lg\:cell-row-5,.lg\:cell-row-span-5{grid-row:span 5/span 5}.lg\:cell-row-6,.lg\:cell-row-span-6{grid-row:span 6/span 6}.lg\:cell-col-start-1,.lg\:cell-start-1{grid-column-start:1}.lg\:cell-col-end-1,.lg\:cell-end-1{grid-column-end:1}.lg\:cell-col-start-2,.lg\:cell-start-2{grid-column-start:2}.lg\:cell-col-end-2,.lg\:cell-end-2{grid-column-end:2}.lg\:cell-col-start-3,.lg\:cell-start-3{grid-column-start:3}.lg\:cell-col-end-3,.lg\:cell-end-3{grid-column-end:3}.lg\:cell-col-start-4,.lg\:cell-start-4{grid-column-start:4}.lg\:cell-col-end-4,.lg\:cell-end-4{grid-column-end:4}.lg\:cell-col-start-5,.lg\:cell-start-5{grid-column-start:5}.lg\:cell-col-end-5,.lg\:cell-end-5{grid-column-end:5}.lg\:cell-col-start-6,.lg\:cell-start-6{grid-column-start:6}.lg\:cell-col-end-6,.lg\:cell-end-6{grid-column-end:6}.lg\:cell-col-start-7,.lg\:cell-start-7{grid-column-start:7}.lg\:cell-col-end-7,.lg\:cell-end-7{grid-column-end:7}.lg\:cell-col-start-8,.lg\:cell-start-8{grid-column-start:8}.lg\:cell-col-end-8,.lg\:cell-end-8{grid-column-end:8}.lg\:cell-col-start-9,.lg\:cell-start-9{grid-column-start:9}.lg\:cell-col-end-9,.lg\:cell-end-9{grid-column-end:9}.lg\:cell-col-start-10,.lg\:cell-start-10{grid-column-start:10}.lg\:cell-col-end-10,.lg\:cell-end-10{grid-column-end:10}.lg\:cell-col-start-11,.lg\:cell-start-11{grid-column-start:11}.lg\:cell-col-end-11,.lg\:cell-end-11{grid-column-end:11}.lg\:cell-col-start-12,.lg\:cell-start-12{grid-column-start:12}.lg\:cell-col-end-12,.lg\:cell-end-12{grid-column-end:12}.lg\:cell-col-start-13,.lg\:cell-start-13{grid-column-start:13}.lg\:cell-col-end-13,.lg\:cell-end-13{grid-column-end:13}.lg\:cell-row-start-1{grid-row-start:1}.lg\:cell-row-end-1{grid-row-end:1}.lg\:cell-row-start-2{grid-row-start:2}.lg\:cell-row-end-2{grid-row-end:2}.lg\:cell-row-start-3{grid-row-start:3}.lg\:cell-row-end-3{grid-row-end:3}.lg\:cell-row-start-4{grid-row-start:4}.lg\:cell-row-end-4{grid-row-end:4}.lg\:cell-row-start-5{grid-row-start:5}.lg\:cell-row-end-5{grid-row-end:5}.lg\:cell-row-start-6{grid-row-start:6}.lg\:cell-row-end-6{grid-row-end:6}.lg\:cell-row-start-7{grid-row-start:7}.lg\:cell-row-end-7{grid-row-end:7}.lg\:cell-order-first{order:-9999}.lg\:cell-order-last{order:9999}.lg\:cell-order-none{order:0}.lg\:cell-order-1{order:1}.lg\:cell-order-2{order:2}.lg\:cell-order-3{order:3}.lg\:cell-order-4{order:4}.lg\:cell-order-5{order:5}.lg\:cell-order-6{order:6}.lg\:cell-order-7{order:7}.lg\:cell-order-8{order:8}.lg\:cell-order-9{order:9}.lg\:cell-order-10{order:10}.lg\:cell-order-11{order:11}.lg\:cell-order-12{order:12}}.gap-px{gap:1px}.gap-x-px{column-gap:1px}.gap-y-px{row-gap:1px}.gap-0,.gap-0 [class^=grid]{gap:0}.gap-x-0,.gap-x-0 [class^=grid]{column-gap:0}.gap-y-0,.gap-y-0 [class^=grid]{row-gap:0}.gap-1,.gap-1 [class^=grid]{gap:.25rem}.gap-x-1,.gap-x-1 [class^=grid]{column-gap:.25rem}.gap-y-1,.gap-y-1 [class^=grid]{row-gap:.25rem}.gap-2,.gap-2 [class^=grid]{gap:.5rem}.gap-x-2,.gap-x-2 [class^=grid]{column-gap:.5rem}.gap-y-2,.gap-y-2 [class^=grid]{row-gap:.5rem}.gap-3,.gap-3 [class^=grid]{gap:.75rem}.gap-x-3,.gap-x-3 [class^=grid]{column-gap:.75rem}.gap-y-3,.gap-y-3 [class^=grid]{row-gap:.75rem}.gap-4,.gap-4 [class^=grid]{gap:1rem}.gap-x-4,.gap-x-4 [class^=grid]{column-gap:1rem}.gap-y-4,.gap-y-4 [class^=grid]{row-gap:1rem}.gap-5,.gap-5 [class^=grid]{gap:1.25rem}.gap-x-5,.gap-x-5 [class^=grid]{column-gap:1.25rem}.gap-y-5,.gap-y-5 [class^=grid]{row-gap:1.25rem}.gap-6,.gap-6 [class^=grid]{gap:1.5rem}.gap-x-6,.gap-x-6 [class^=grid]{column-gap:1.5rem}.gap-y-6,.gap-y-6 [class^=grid]{row-gap:1.5rem}.gap-7,.gap-7 [class^=grid]{gap:1.75rem}.gap-x-7,.gap-x-7 [class^=grid]{column-gap:1.75rem}.gap-y-7,.gap-y-7 [class^=grid]{row-gap:1.75rem}.gap-8,.gap-8 [class^=grid]{gap:2rem}.gap-x-8,.gap-x-8 [class^=grid]{column-gap:2rem}.gap-y-8,.gap-y-8 [class^=grid]{row-gap:2rem}.gap-9,.gap-9 [class^=grid]{gap:2.25rem}.gap-x-9,.gap-x-9 [class^=grid]{column-gap:2.25rem}.gap-y-9,.gap-y-9 [class^=grid]{row-gap:2.25rem}.gap-10,.gap-10 [class^=grid]{gap:2.5rem}.gap-x-10,.gap-x-10 [class^=grid]{column-gap:2.5rem}.gap-y-10,.gap-y-10 [class^=grid]{row-gap:2.5rem} diff --git a/content/page-templates/css-grid-framework/5-others/css.inc b/content/page-templates/css-grid-framework/5-others/css.inc index 8ebff36dd..f6e1a56ad 100644 --- a/content/page-templates/css-grid-framework/5-others/css.inc +++ b/content/page-templates/css-grid-framework/5-others/css.inc @@ -1,9 +1,9 @@ /** * License: MIT License * Generated on 25 May 2021 - * Author: Fpassaniti for Opendatasoft + * Author: Fpassaniti for Huwise * Version: 0.1 - * Description: CSS Grid framework for Opendatasoft pages (and more). Go to http://codelibrary.opendatasoft.com/ for more information (doc & examples). + * Description: CSS Grid framework for Huwise pages (and more). Go to http://codelibrary.huwise.com/ for more information (doc & examples). */ [class^=grid]{display:grid;grid-gap:1rem}.grid-auto,.grid-auto-flow,.grid-cols-auto-flow{grid-auto-flow:column}.grid-rows-auto-flow{grid-auto-flow:row}.grid-cols-fit,.grid-fit{grid-auto-columns:max-content}.grid-rows-fit{grid-auto-rows:max-content}.grid-2,.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3,.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4,.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-5,.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-6,.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-7,.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.grid-8,.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.grid-9,.grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.grid-10,.grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.grid-11,.grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.grid-12,.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.grid-cols-none{grid-template-columns:none}.grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.grid-rows-none{grid-template-rows:none}[class*=":cell"],[class^=cell]{display:flex;flex-direction:column;justify-content:stretch}.cell-auto,.cell-span-auto{grid-column:auto}.cell-full,.cell-span-full{grid-column:1/-1}.cell-1,.cell-span-1{grid-column:span 1/span 1}.cell-2,.cell-span-2{grid-column:span 2/span 2}.cell-3,.cell-span-3{grid-column:span 3/span 3}.cell-4,.cell-span-4{grid-column:span 4/span 4}.cell-5,.cell-span-5{grid-column:span 5/span 5}.cell-6,.cell-span-6{grid-column:span 6/span 6}.cell-7,.cell-span-7{grid-column:span 7/span 7}.cell-8,.cell-span-8{grid-column:span 8/span 8}.cell-9,.cell-span-9{grid-column:span 9/span 9}.cell-10,.cell-span-10{grid-column:span 10/span 10}.cell-11,.cell-span-11{grid-column:span 11/span 11}.cell-12,.cell-span-12{grid-column:span 12/span 12}.cell-row-auto{grid-row:auto}.cell-row-full{grid-row:1/-1}.cell-row-1,.cell-row-span-1{grid-row:span 1/span 1}.cell-row-2,.cell-row-span-2{grid-row:span 2/span 2}.cell-row-3,.cell-row-span-3{grid-row:span 3/span 3}.cell-row-4,.cell-row-span-4{grid-row:span 4/span 4}.cell-row-5,.cell-row-span-5{grid-row:span 5/span 5}.cell-row-6,.cell-row-span-6{grid-row:span 6/span 6}.cell-col-start-1,.cell-start-1{grid-column-start:1}.cell-col-end-1,.cell-end-1{grid-column-end:1}.cell-col-start-2,.cell-start-2{grid-column-start:2}.cell-col-end-2,.cell-end-2{grid-column-end:2}.cell-col-start-3,.cell-start-3{grid-column-start:3}.cell-col-end-3,.cell-end-3{grid-column-end:3}.cell-col-start-4,.cell-start-4{grid-column-start:4}.cell-col-end-4,.cell-end-4{grid-column-end:4}.cell-col-start-5,.cell-start-5{grid-column-start:5}.cell-col-end-5,.cell-end-5{grid-column-end:5}.cell-col-start-6,.cell-start-6{grid-column-start:6}.cell-col-end-6,.cell-end-6{grid-column-end:6}.cell-col-start-7,.cell-start-7{grid-column-start:7}.cell-col-end-7,.cell-end-7{grid-column-end:7}.cell-col-start-8,.cell-start-8{grid-column-start:8}.cell-col-end-8,.cell-end-8{grid-column-end:8}.cell-col-start-9,.cell-start-9{grid-column-start:9}.cell-col-end-9,.cell-end-9{grid-column-end:9}.cell-col-start-10,.cell-start-10{grid-column-start:10}.cell-col-end-10,.cell-end-10{grid-column-end:10}.cell-col-start-11,.cell-start-11{grid-column-start:11}.cell-col-end-11,.cell-end-11{grid-column-end:11}.cell-col-start-12,.cell-start-12{grid-column-start:12}.cell-col-end-12,.cell-end-12{grid-column-end:12}.cell-col-start-13,.cell-start-13{grid-column-start:13}.cell-col-end-13,.cell-end-13{grid-column-end:13}.cell-row-start-1{grid-row-start:1}.cell-row-end-1{grid-row-end:1}.cell-row-start-2{grid-row-start:2}.cell-row-end-2{grid-row-end:2}.cell-row-start-3{grid-row-start:3}.cell-row-end-3{grid-row-end:3}.cell-row-start-4{grid-row-start:4}.cell-row-end-4{grid-row-end:4}.cell-row-start-5{grid-row-start:5}.cell-row-end-5{grid-row-end:5}.cell-row-start-6{grid-row-start:6}.cell-row-end-6{grid-row-end:6}.cell-row-start-7{grid-row-start:7}.cell-row-end-7{grid-row-end:7}.cell-order-first{order:-9999}.cell-order-last{order:9999}.cell-order-none{order:0}.cell-order-1{order:1}.cell-order-2{order:2}.cell-order-3{order:3}.cell-order-4{order:4}.cell-order-5{order:5}.cell-order-6{order:6}.cell-order-7{order:7}.cell-order-8{order:8}.cell-order-9{order:9}.cell-order-10{order:10}.cell-order-11{order:11}.cell-order-12{order:12}@media screen and (min-width:640px),print{.sm\:grid-2,.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-3,.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-4,.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-5,.sm\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.sm\:grid-6,.sm\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.sm\:grid-7,.sm\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.sm\:grid-8,.sm\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.sm\:grid-9,.sm\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.sm\:grid-10,.sm\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.sm\:grid-11,.sm\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.sm\:grid-12,.sm\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.sm\:grid-cols-none{grid-template-columns:none}.sm\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.sm\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.sm\:grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.sm\:grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.sm\:grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.sm\:grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.sm\:grid-rows-none{grid-template-rows:none}.sm\:cell-auto,.sm\:cell-span-auto{grid-column:auto}.sm\:cell-full,.sm\:cell-span-full{grid-column:1/-1}.sm\:cell-1,.sm\:cell-span-1{grid-column:span 1/span 1}.sm\:cell-2,.sm\:cell-span-2{grid-column:span 2/span 2}.sm\:cell-3,.sm\:cell-span-3{grid-column:span 3/span 3}.sm\:cell-4,.sm\:cell-span-4{grid-column:span 4/span 4}.sm\:cell-5,.sm\:cell-span-5{grid-column:span 5/span 5}.sm\:cell-6,.sm\:cell-span-6{grid-column:span 6/span 6}.sm\:cell-7,.sm\:cell-span-7{grid-column:span 7/span 7}.sm\:cell-8,.sm\:cell-span-8{grid-column:span 8/span 8}.sm\:cell-9,.sm\:cell-span-9{grid-column:span 9/span 9}.sm\:cell-10,.sm\:cell-span-10{grid-column:span 10/span 10}.sm\:cell-11,.sm\:cell-span-11{grid-column:span 11/span 11}.sm\:cell-12,.sm\:cell-span-12{grid-column:span 12/span 12}.sm\:cell-row-auto{grid-row:auto}.sm\:cell-row-full{grid-row:1/-1}.sm\:cell-row-1,.sm\:cell-row-span-1{grid-row:span 1/span 1}.sm\:cell-row-2,.sm\:cell-row-span-2{grid-row:span 2/span 2}.sm\:cell-row-3,.sm\:cell-row-span-3{grid-row:span 3/span 3}.sm\:cell-row-4,.sm\:cell-row-span-4{grid-row:span 4/span 4}.sm\:cell-row-5,.sm\:cell-row-span-5{grid-row:span 5/span 5}.sm\:cell-row-6,.sm\:cell-row-span-6{grid-row:span 6/span 6}.sm\:cell-col-start-1,.sm\:cell-start-1{grid-column-start:1}.sm\:cell-col-end-1,.sm\:cell-end-1{grid-column-end:1}.sm\:cell-col-start-2,.sm\:cell-start-2{grid-column-start:2}.sm\:cell-col-end-2,.sm\:cell-end-2{grid-column-end:2}.sm\:cell-col-start-3,.sm\:cell-start-3{grid-column-start:3}.sm\:cell-col-end-3,.sm\:cell-end-3{grid-column-end:3}.sm\:cell-col-start-4,.sm\:cell-start-4{grid-column-start:4}.sm\:cell-col-end-4,.sm\:cell-end-4{grid-column-end:4}.sm\:cell-col-start-5,.sm\:cell-start-5{grid-column-start:5}.sm\:cell-col-end-5,.sm\:cell-end-5{grid-column-end:5}.sm\:cell-col-start-6,.sm\:cell-start-6{grid-column-start:6}.sm\:cell-col-end-6,.sm\:cell-end-6{grid-column-end:6}.sm\:cell-col-start-7,.sm\:cell-start-7{grid-column-start:7}.sm\:cell-col-end-7,.sm\:cell-end-7{grid-column-end:7}.sm\:cell-col-start-8,.sm\:cell-start-8{grid-column-start:8}.sm\:cell-col-end-8,.sm\:cell-end-8{grid-column-end:8}.sm\:cell-col-start-9,.sm\:cell-start-9{grid-column-start:9}.sm\:cell-col-end-9,.sm\:cell-end-9{grid-column-end:9}.sm\:cell-col-start-10,.sm\:cell-start-10{grid-column-start:10}.sm\:cell-col-end-10,.sm\:cell-end-10{grid-column-end:10}.sm\:cell-col-start-11,.sm\:cell-start-11{grid-column-start:11}.sm\:cell-col-end-11,.sm\:cell-end-11{grid-column-end:11}.sm\:cell-col-start-12,.sm\:cell-start-12{grid-column-start:12}.sm\:cell-col-end-12,.sm\:cell-end-12{grid-column-end:12}.sm\:cell-col-start-13,.sm\:cell-start-13{grid-column-start:13}.sm\:cell-col-end-13,.sm\:cell-end-13{grid-column-end:13}.sm\:cell-row-start-1{grid-row-start:1}.sm\:cell-row-end-1{grid-row-end:1}.sm\:cell-row-start-2{grid-row-start:2}.sm\:cell-row-end-2{grid-row-end:2}.sm\:cell-row-start-3{grid-row-start:3}.sm\:cell-row-end-3{grid-row-end:3}.sm\:cell-row-start-4{grid-row-start:4}.sm\:cell-row-end-4{grid-row-end:4}.sm\:cell-row-start-5{grid-row-start:5}.sm\:cell-row-end-5{grid-row-end:5}.sm\:cell-row-start-6{grid-row-start:6}.sm\:cell-row-end-6{grid-row-end:6}.sm\:cell-row-start-7{grid-row-start:7}.sm\:cell-row-end-7{grid-row-end:7}.sm\:cell-order-first{order:-9999}.sm\:cell-order-last{order:9999}.sm\:cell-order-none{order:0}.sm\:cell-order-1{order:1}.sm\:cell-order-2{order:2}.sm\:cell-order-3{order:3}.sm\:cell-order-4{order:4}.sm\:cell-order-5{order:5}.sm\:cell-order-6{order:6}.sm\:cell-order-7{order:7}.sm\:cell-order-8{order:8}.sm\:cell-order-9{order:9}.sm\:cell-order-10{order:10}.sm\:cell-order-11{order:11}.sm\:cell-order-12{order:12}}@media screen and (min-width:768px),print{.md\:grid-2,.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-3,.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-4,.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-5,.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:grid-6,.md\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.md\:grid-7,.md\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.md\:grid-8,.md\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.md\:grid-9,.md\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.md\:grid-10,.md\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.md\:grid-11,.md\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.md\:grid-12,.md\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.md\:grid-cols-none{grid-template-columns:none}.md\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.md\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.md\:grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.md\:grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.md\:grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.md\:grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.md\:grid-rows-none{grid-template-rows:none}.md\:cell-auto,.md\:cell-span-auto{grid-column:auto}.md\:cell-full,.md\:cell-span-full{grid-column:1/-1}.md\:cell-1,.md\:cell-span-1{grid-column:span 1/span 1}.md\:cell-2,.md\:cell-span-2{grid-column:span 2/span 2}.md\:cell-3,.md\:cell-span-3{grid-column:span 3/span 3}.md\:cell-4,.md\:cell-span-4{grid-column:span 4/span 4}.md\:cell-5,.md\:cell-span-5{grid-column:span 5/span 5}.md\:cell-6,.md\:cell-span-6{grid-column:span 6/span 6}.md\:cell-7,.md\:cell-span-7{grid-column:span 7/span 7}.md\:cell-8,.md\:cell-span-8{grid-column:span 8/span 8}.md\:cell-9,.md\:cell-span-9{grid-column:span 9/span 9}.md\:cell-10,.md\:cell-span-10{grid-column:span 10/span 10}.md\:cell-11,.md\:cell-span-11{grid-column:span 11/span 11}.md\:cell-12,.md\:cell-span-12{grid-column:span 12/span 12}.md\:cell-row-auto{grid-row:auto}.md\:cell-row-full{grid-row:1/-1}.md\:cell-row-1,.md\:cell-row-span-1{grid-row:span 1/span 1}.md\:cell-row-2,.md\:cell-row-span-2{grid-row:span 2/span 2}.md\:cell-row-3,.md\:cell-row-span-3{grid-row:span 3/span 3}.md\:cell-row-4,.md\:cell-row-span-4{grid-row:span 4/span 4}.md\:cell-row-5,.md\:cell-row-span-5{grid-row:span 5/span 5}.md\:cell-row-6,.md\:cell-row-span-6{grid-row:span 6/span 6}.md\:cell-col-start-1,.md\:cell-start-1{grid-column-start:1}.md\:cell-col-end-1,.md\:cell-end-1{grid-column-end:1}.md\:cell-col-start-2,.md\:cell-start-2{grid-column-start:2}.md\:cell-col-end-2,.md\:cell-end-2{grid-column-end:2}.md\:cell-col-start-3,.md\:cell-start-3{grid-column-start:3}.md\:cell-col-end-3,.md\:cell-end-3{grid-column-end:3}.md\:cell-col-start-4,.md\:cell-start-4{grid-column-start:4}.md\:cell-col-end-4,.md\:cell-end-4{grid-column-end:4}.md\:cell-col-start-5,.md\:cell-start-5{grid-column-start:5}.md\:cell-col-end-5,.md\:cell-end-5{grid-column-end:5}.md\:cell-col-start-6,.md\:cell-start-6{grid-column-start:6}.md\:cell-col-end-6,.md\:cell-end-6{grid-column-end:6}.md\:cell-col-start-7,.md\:cell-start-7{grid-column-start:7}.md\:cell-col-end-7,.md\:cell-end-7{grid-column-end:7}.md\:cell-col-start-8,.md\:cell-start-8{grid-column-start:8}.md\:cell-col-end-8,.md\:cell-end-8{grid-column-end:8}.md\:cell-col-start-9,.md\:cell-start-9{grid-column-start:9}.md\:cell-col-end-9,.md\:cell-end-9{grid-column-end:9}.md\:cell-col-start-10,.md\:cell-start-10{grid-column-start:10}.md\:cell-col-end-10,.md\:cell-end-10{grid-column-end:10}.md\:cell-col-start-11,.md\:cell-start-11{grid-column-start:11}.md\:cell-col-end-11,.md\:cell-end-11{grid-column-end:11}.md\:cell-col-start-12,.md\:cell-start-12{grid-column-start:12}.md\:cell-col-end-12,.md\:cell-end-12{grid-column-end:12}.md\:cell-col-start-13,.md\:cell-start-13{grid-column-start:13}.md\:cell-col-end-13,.md\:cell-end-13{grid-column-end:13}.md\:cell-row-start-1{grid-row-start:1}.md\:cell-row-end-1{grid-row-end:1}.md\:cell-row-start-2{grid-row-start:2}.md\:cell-row-end-2{grid-row-end:2}.md\:cell-row-start-3{grid-row-start:3}.md\:cell-row-end-3{grid-row-end:3}.md\:cell-row-start-4{grid-row-start:4}.md\:cell-row-end-4{grid-row-end:4}.md\:cell-row-start-5{grid-row-start:5}.md\:cell-row-end-5{grid-row-end:5}.md\:cell-row-start-6{grid-row-start:6}.md\:cell-row-end-6{grid-row-end:6}.md\:cell-row-start-7{grid-row-start:7}.md\:cell-row-end-7{grid-row-end:7}.md\:cell-order-first{order:-9999}.md\:cell-order-last{order:9999}.md\:cell-order-none{order:0}.md\:cell-order-1{order:1}.md\:cell-order-2{order:2}.md\:cell-order-3{order:3}.md\:cell-order-4{order:4}.md\:cell-order-5{order:5}.md\:cell-order-6{order:6}.md\:cell-order-7{order:7}.md\:cell-order-8{order:8}.md\:cell-order-9{order:9}.md\:cell-order-10{order:10}.md\:cell-order-11{order:11}.md\:cell-order-12{order:12}}@media screen and (min-width:1024px),print{.lg\:grid-2,.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-3,.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-4,.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-5,.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-6,.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:grid-7,.lg\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.lg\:grid-8,.lg\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.lg\:grid-9,.lg\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.lg\:grid-10,.lg\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.lg\:grid-11,.lg\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.lg\:grid-12,.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-none{grid-template-columns:none}.lg\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.lg\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.lg\:grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.lg\:grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.lg\:grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.lg\:grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.lg\:grid-rows-none{grid-template-rows:none}.lg\:cell-auto,.lg\:cell-span-auto{grid-column:auto}.lg\:cell-full,.lg\:cell-span-full{grid-column:1/-1}.lg\:cell-1,.lg\:cell-span-1{grid-column:span 1/span 1}.lg\:cell-2,.lg\:cell-span-2{grid-column:span 2/span 2}.lg\:cell-3,.lg\:cell-span-3{grid-column:span 3/span 3}.lg\:cell-4,.lg\:cell-span-4{grid-column:span 4/span 4}.lg\:cell-5,.lg\:cell-span-5{grid-column:span 5/span 5}.lg\:cell-6,.lg\:cell-span-6{grid-column:span 6/span 6}.lg\:cell-7,.lg\:cell-span-7{grid-column:span 7/span 7}.lg\:cell-8,.lg\:cell-span-8{grid-column:span 8/span 8}.lg\:cell-9,.lg\:cell-span-9{grid-column:span 9/span 9}.lg\:cell-10,.lg\:cell-span-10{grid-column:span 10/span 10}.lg\:cell-11,.lg\:cell-span-11{grid-column:span 11/span 11}.lg\:cell-12,.lg\:cell-span-12{grid-column:span 12/span 12}.lg\:cell-row-auto{grid-row:auto}.lg\:cell-row-full{grid-row:1/-1}.lg\:cell-row-1,.lg\:cell-row-span-1{grid-row:span 1/span 1}.lg\:cell-row-2,.lg\:cell-row-span-2{grid-row:span 2/span 2}.lg\:cell-row-3,.lg\:cell-row-span-3{grid-row:span 3/span 3}.lg\:cell-row-4,.lg\:cell-row-span-4{grid-row:span 4/span 4}.lg\:cell-row-5,.lg\:cell-row-span-5{grid-row:span 5/span 5}.lg\:cell-row-6,.lg\:cell-row-span-6{grid-row:span 6/span 6}.lg\:cell-col-start-1,.lg\:cell-start-1{grid-column-start:1}.lg\:cell-col-end-1,.lg\:cell-end-1{grid-column-end:1}.lg\:cell-col-start-2,.lg\:cell-start-2{grid-column-start:2}.lg\:cell-col-end-2,.lg\:cell-end-2{grid-column-end:2}.lg\:cell-col-start-3,.lg\:cell-start-3{grid-column-start:3}.lg\:cell-col-end-3,.lg\:cell-end-3{grid-column-end:3}.lg\:cell-col-start-4,.lg\:cell-start-4{grid-column-start:4}.lg\:cell-col-end-4,.lg\:cell-end-4{grid-column-end:4}.lg\:cell-col-start-5,.lg\:cell-start-5{grid-column-start:5}.lg\:cell-col-end-5,.lg\:cell-end-5{grid-column-end:5}.lg\:cell-col-start-6,.lg\:cell-start-6{grid-column-start:6}.lg\:cell-col-end-6,.lg\:cell-end-6{grid-column-end:6}.lg\:cell-col-start-7,.lg\:cell-start-7{grid-column-start:7}.lg\:cell-col-end-7,.lg\:cell-end-7{grid-column-end:7}.lg\:cell-col-start-8,.lg\:cell-start-8{grid-column-start:8}.lg\:cell-col-end-8,.lg\:cell-end-8{grid-column-end:8}.lg\:cell-col-start-9,.lg\:cell-start-9{grid-column-start:9}.lg\:cell-col-end-9,.lg\:cell-end-9{grid-column-end:9}.lg\:cell-col-start-10,.lg\:cell-start-10{grid-column-start:10}.lg\:cell-col-end-10,.lg\:cell-end-10{grid-column-end:10}.lg\:cell-col-start-11,.lg\:cell-start-11{grid-column-start:11}.lg\:cell-col-end-11,.lg\:cell-end-11{grid-column-end:11}.lg\:cell-col-start-12,.lg\:cell-start-12{grid-column-start:12}.lg\:cell-col-end-12,.lg\:cell-end-12{grid-column-end:12}.lg\:cell-col-start-13,.lg\:cell-start-13{grid-column-start:13}.lg\:cell-col-end-13,.lg\:cell-end-13{grid-column-end:13}.lg\:cell-row-start-1{grid-row-start:1}.lg\:cell-row-end-1{grid-row-end:1}.lg\:cell-row-start-2{grid-row-start:2}.lg\:cell-row-end-2{grid-row-end:2}.lg\:cell-row-start-3{grid-row-start:3}.lg\:cell-row-end-3{grid-row-end:3}.lg\:cell-row-start-4{grid-row-start:4}.lg\:cell-row-end-4{grid-row-end:4}.lg\:cell-row-start-5{grid-row-start:5}.lg\:cell-row-end-5{grid-row-end:5}.lg\:cell-row-start-6{grid-row-start:6}.lg\:cell-row-end-6{grid-row-end:6}.lg\:cell-row-start-7{grid-row-start:7}.lg\:cell-row-end-7{grid-row-end:7}.lg\:cell-order-first{order:-9999}.lg\:cell-order-last{order:9999}.lg\:cell-order-none{order:0}.lg\:cell-order-1{order:1}.lg\:cell-order-2{order:2}.lg\:cell-order-3{order:3}.lg\:cell-order-4{order:4}.lg\:cell-order-5{order:5}.lg\:cell-order-6{order:6}.lg\:cell-order-7{order:7}.lg\:cell-order-8{order:8}.lg\:cell-order-9{order:9}.lg\:cell-order-10{order:10}.lg\:cell-order-11{order:11}.lg\:cell-order-12{order:12}}.gap-px{gap:1px}.gap-x-px{column-gap:1px}.gap-y-px{row-gap:1px}.gap-0,.gap-0 [class^=grid]{gap:0}.gap-x-0,.gap-x-0 [class^=grid]{column-gap:0}.gap-y-0,.gap-y-0 [class^=grid]{row-gap:0}.gap-1,.gap-1 [class^=grid]{gap:.25rem}.gap-x-1,.gap-x-1 [class^=grid]{column-gap:.25rem}.gap-y-1,.gap-y-1 [class^=grid]{row-gap:.25rem}.gap-2,.gap-2 [class^=grid]{gap:.5rem}.gap-x-2,.gap-x-2 [class^=grid]{column-gap:.5rem}.gap-y-2,.gap-y-2 [class^=grid]{row-gap:.5rem}.gap-3,.gap-3 [class^=grid]{gap:.75rem}.gap-x-3,.gap-x-3 [class^=grid]{column-gap:.75rem}.gap-y-3,.gap-y-3 [class^=grid]{row-gap:.75rem}.gap-4,.gap-4 [class^=grid]{gap:1rem}.gap-x-4,.gap-x-4 [class^=grid]{column-gap:1rem}.gap-y-4,.gap-y-4 [class^=grid]{row-gap:1rem}.gap-5,.gap-5 [class^=grid]{gap:1.25rem}.gap-x-5,.gap-x-5 [class^=grid]{column-gap:1.25rem}.gap-y-5,.gap-y-5 [class^=grid]{row-gap:1.25rem}.gap-6,.gap-6 [class^=grid]{gap:1.5rem}.gap-x-6,.gap-x-6 [class^=grid]{column-gap:1.5rem}.gap-y-6,.gap-y-6 [class^=grid]{row-gap:1.5rem}.gap-7,.gap-7 [class^=grid]{gap:1.75rem}.gap-x-7,.gap-x-7 [class^=grid]{column-gap:1.75rem}.gap-y-7,.gap-y-7 [class^=grid]{row-gap:1.75rem}.gap-8,.gap-8 [class^=grid]{gap:2rem}.gap-x-8,.gap-x-8 [class^=grid]{column-gap:2rem}.gap-y-8,.gap-y-8 [class^=grid]{row-gap:2rem}.gap-9,.gap-9 [class^=grid]{gap:2.25rem}.gap-x-9,.gap-x-9 [class^=grid]{column-gap:2.25rem}.gap-y-9,.gap-y-9 [class^=grid]{row-gap:2.25rem}.gap-10,.gap-10 [class^=grid]{gap:2.5rem}.gap-x-10,.gap-x-10 [class^=grid]{column-gap:2.5rem}.gap-y-10,.gap-y-10 [class^=grid]{row-gap:2.5rem} diff --git a/content/page-templates/css-grid-framework/6-order/css.inc b/content/page-templates/css-grid-framework/6-order/css.inc index f121605eb..4b5e768ff 100644 --- a/content/page-templates/css-grid-framework/6-order/css.inc +++ b/content/page-templates/css-grid-framework/6-order/css.inc @@ -1,9 +1,9 @@ /** * License: MIT License * Generated on 25 May 2021 - * Author: Fpassaniti for Opendatasoft + * Author: Fpassaniti for Huwise * Version: 0.1 - * Description: CSS Grid framework for Opendatasoft pages (and more). Go to http://codelibrary.opendatasoft.com/ for more information (doc & examples). + * Description: CSS Grid framework for Huwise pages (and more). Go to http://codelibrary.huwise.com/ for more information (doc & examples). */ [class^=grid]{display:grid;grid-gap:1rem}.grid-auto,.grid-auto-flow,.grid-cols-auto-flow{grid-auto-flow:column}.grid-rows-auto-flow{grid-auto-flow:row}.grid-cols-fit,.grid-fit{grid-auto-columns:max-content}.grid-rows-fit{grid-auto-rows:max-content}.grid-2,.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3,.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4,.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-5,.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-6,.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-7,.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.grid-8,.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.grid-9,.grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.grid-10,.grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.grid-11,.grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.grid-12,.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.grid-cols-none{grid-template-columns:none}.grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.grid-rows-none{grid-template-rows:none}[class*=":cell"],[class^=cell]{display:flex;flex-direction:column;justify-content:stretch}.cell-auto,.cell-span-auto{grid-column:auto}.cell-full,.cell-span-full{grid-column:1/-1}.cell-1,.cell-span-1{grid-column:span 1/span 1}.cell-2,.cell-span-2{grid-column:span 2/span 2}.cell-3,.cell-span-3{grid-column:span 3/span 3}.cell-4,.cell-span-4{grid-column:span 4/span 4}.cell-5,.cell-span-5{grid-column:span 5/span 5}.cell-6,.cell-span-6{grid-column:span 6/span 6}.cell-7,.cell-span-7{grid-column:span 7/span 7}.cell-8,.cell-span-8{grid-column:span 8/span 8}.cell-9,.cell-span-9{grid-column:span 9/span 9}.cell-10,.cell-span-10{grid-column:span 10/span 10}.cell-11,.cell-span-11{grid-column:span 11/span 11}.cell-12,.cell-span-12{grid-column:span 12/span 12}.cell-row-auto{grid-row:auto}.cell-row-full{grid-row:1/-1}.cell-row-1,.cell-row-span-1{grid-row:span 1/span 1}.cell-row-2,.cell-row-span-2{grid-row:span 2/span 2}.cell-row-3,.cell-row-span-3{grid-row:span 3/span 3}.cell-row-4,.cell-row-span-4{grid-row:span 4/span 4}.cell-row-5,.cell-row-span-5{grid-row:span 5/span 5}.cell-row-6,.cell-row-span-6{grid-row:span 6/span 6}.cell-col-start-1,.cell-start-1{grid-column-start:1}.cell-col-end-1,.cell-end-1{grid-column-end:1}.cell-col-start-2,.cell-start-2{grid-column-start:2}.cell-col-end-2,.cell-end-2{grid-column-end:2}.cell-col-start-3,.cell-start-3{grid-column-start:3}.cell-col-end-3,.cell-end-3{grid-column-end:3}.cell-col-start-4,.cell-start-4{grid-column-start:4}.cell-col-end-4,.cell-end-4{grid-column-end:4}.cell-col-start-5,.cell-start-5{grid-column-start:5}.cell-col-end-5,.cell-end-5{grid-column-end:5}.cell-col-start-6,.cell-start-6{grid-column-start:6}.cell-col-end-6,.cell-end-6{grid-column-end:6}.cell-col-start-7,.cell-start-7{grid-column-start:7}.cell-col-end-7,.cell-end-7{grid-column-end:7}.cell-col-start-8,.cell-start-8{grid-column-start:8}.cell-col-end-8,.cell-end-8{grid-column-end:8}.cell-col-start-9,.cell-start-9{grid-column-start:9}.cell-col-end-9,.cell-end-9{grid-column-end:9}.cell-col-start-10,.cell-start-10{grid-column-start:10}.cell-col-end-10,.cell-end-10{grid-column-end:10}.cell-col-start-11,.cell-start-11{grid-column-start:11}.cell-col-end-11,.cell-end-11{grid-column-end:11}.cell-col-start-12,.cell-start-12{grid-column-start:12}.cell-col-end-12,.cell-end-12{grid-column-end:12}.cell-col-start-13,.cell-start-13{grid-column-start:13}.cell-col-end-13,.cell-end-13{grid-column-end:13}.cell-row-start-1{grid-row-start:1}.cell-row-end-1{grid-row-end:1}.cell-row-start-2{grid-row-start:2}.cell-row-end-2{grid-row-end:2}.cell-row-start-3{grid-row-start:3}.cell-row-end-3{grid-row-end:3}.cell-row-start-4{grid-row-start:4}.cell-row-end-4{grid-row-end:4}.cell-row-start-5{grid-row-start:5}.cell-row-end-5{grid-row-end:5}.cell-row-start-6{grid-row-start:6}.cell-row-end-6{grid-row-end:6}.cell-row-start-7{grid-row-start:7}.cell-row-end-7{grid-row-end:7}.cell-order-first{order:-9999}.cell-order-last{order:9999}.cell-order-none{order:0}.cell-order-1{order:1}.cell-order-2{order:2}.cell-order-3{order:3}.cell-order-4{order:4}.cell-order-5{order:5}.cell-order-6{order:6}.cell-order-7{order:7}.cell-order-8{order:8}.cell-order-9{order:9}.cell-order-10{order:10}.cell-order-11{order:11}.cell-order-12{order:12}@media screen and (min-width:640px),print{.sm\:grid-2,.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-3,.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-4,.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-5,.sm\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.sm\:grid-6,.sm\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.sm\:grid-7,.sm\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.sm\:grid-8,.sm\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.sm\:grid-9,.sm\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.sm\:grid-10,.sm\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.sm\:grid-11,.sm\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.sm\:grid-12,.sm\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.sm\:grid-cols-none{grid-template-columns:none}.sm\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.sm\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.sm\:grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.sm\:grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.sm\:grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.sm\:grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.sm\:grid-rows-none{grid-template-rows:none}.sm\:cell-auto,.sm\:cell-span-auto{grid-column:auto}.sm\:cell-full,.sm\:cell-span-full{grid-column:1/-1}.sm\:cell-1,.sm\:cell-span-1{grid-column:span 1/span 1}.sm\:cell-2,.sm\:cell-span-2{grid-column:span 2/span 2}.sm\:cell-3,.sm\:cell-span-3{grid-column:span 3/span 3}.sm\:cell-4,.sm\:cell-span-4{grid-column:span 4/span 4}.sm\:cell-5,.sm\:cell-span-5{grid-column:span 5/span 5}.sm\:cell-6,.sm\:cell-span-6{grid-column:span 6/span 6}.sm\:cell-7,.sm\:cell-span-7{grid-column:span 7/span 7}.sm\:cell-8,.sm\:cell-span-8{grid-column:span 8/span 8}.sm\:cell-9,.sm\:cell-span-9{grid-column:span 9/span 9}.sm\:cell-10,.sm\:cell-span-10{grid-column:span 10/span 10}.sm\:cell-11,.sm\:cell-span-11{grid-column:span 11/span 11}.sm\:cell-12,.sm\:cell-span-12{grid-column:span 12/span 12}.sm\:cell-row-auto{grid-row:auto}.sm\:cell-row-full{grid-row:1/-1}.sm\:cell-row-1,.sm\:cell-row-span-1{grid-row:span 1/span 1}.sm\:cell-row-2,.sm\:cell-row-span-2{grid-row:span 2/span 2}.sm\:cell-row-3,.sm\:cell-row-span-3{grid-row:span 3/span 3}.sm\:cell-row-4,.sm\:cell-row-span-4{grid-row:span 4/span 4}.sm\:cell-row-5,.sm\:cell-row-span-5{grid-row:span 5/span 5}.sm\:cell-row-6,.sm\:cell-row-span-6{grid-row:span 6/span 6}.sm\:cell-col-start-1,.sm\:cell-start-1{grid-column-start:1}.sm\:cell-col-end-1,.sm\:cell-end-1{grid-column-end:1}.sm\:cell-col-start-2,.sm\:cell-start-2{grid-column-start:2}.sm\:cell-col-end-2,.sm\:cell-end-2{grid-column-end:2}.sm\:cell-col-start-3,.sm\:cell-start-3{grid-column-start:3}.sm\:cell-col-end-3,.sm\:cell-end-3{grid-column-end:3}.sm\:cell-col-start-4,.sm\:cell-start-4{grid-column-start:4}.sm\:cell-col-end-4,.sm\:cell-end-4{grid-column-end:4}.sm\:cell-col-start-5,.sm\:cell-start-5{grid-column-start:5}.sm\:cell-col-end-5,.sm\:cell-end-5{grid-column-end:5}.sm\:cell-col-start-6,.sm\:cell-start-6{grid-column-start:6}.sm\:cell-col-end-6,.sm\:cell-end-6{grid-column-end:6}.sm\:cell-col-start-7,.sm\:cell-start-7{grid-column-start:7}.sm\:cell-col-end-7,.sm\:cell-end-7{grid-column-end:7}.sm\:cell-col-start-8,.sm\:cell-start-8{grid-column-start:8}.sm\:cell-col-end-8,.sm\:cell-end-8{grid-column-end:8}.sm\:cell-col-start-9,.sm\:cell-start-9{grid-column-start:9}.sm\:cell-col-end-9,.sm\:cell-end-9{grid-column-end:9}.sm\:cell-col-start-10,.sm\:cell-start-10{grid-column-start:10}.sm\:cell-col-end-10,.sm\:cell-end-10{grid-column-end:10}.sm\:cell-col-start-11,.sm\:cell-start-11{grid-column-start:11}.sm\:cell-col-end-11,.sm\:cell-end-11{grid-column-end:11}.sm\:cell-col-start-12,.sm\:cell-start-12{grid-column-start:12}.sm\:cell-col-end-12,.sm\:cell-end-12{grid-column-end:12}.sm\:cell-col-start-13,.sm\:cell-start-13{grid-column-start:13}.sm\:cell-col-end-13,.sm\:cell-end-13{grid-column-end:13}.sm\:cell-row-start-1{grid-row-start:1}.sm\:cell-row-end-1{grid-row-end:1}.sm\:cell-row-start-2{grid-row-start:2}.sm\:cell-row-end-2{grid-row-end:2}.sm\:cell-row-start-3{grid-row-start:3}.sm\:cell-row-end-3{grid-row-end:3}.sm\:cell-row-start-4{grid-row-start:4}.sm\:cell-row-end-4{grid-row-end:4}.sm\:cell-row-start-5{grid-row-start:5}.sm\:cell-row-end-5{grid-row-end:5}.sm\:cell-row-start-6{grid-row-start:6}.sm\:cell-row-end-6{grid-row-end:6}.sm\:cell-row-start-7{grid-row-start:7}.sm\:cell-row-end-7{grid-row-end:7}.sm\:cell-order-first{order:-9999}.sm\:cell-order-last{order:9999}.sm\:cell-order-none{order:0}.sm\:cell-order-1{order:1}.sm\:cell-order-2{order:2}.sm\:cell-order-3{order:3}.sm\:cell-order-4{order:4}.sm\:cell-order-5{order:5}.sm\:cell-order-6{order:6}.sm\:cell-order-7{order:7}.sm\:cell-order-8{order:8}.sm\:cell-order-9{order:9}.sm\:cell-order-10{order:10}.sm\:cell-order-11{order:11}.sm\:cell-order-12{order:12}}@media screen and (min-width:768px),print{.md\:grid-2,.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-3,.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-4,.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-5,.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:grid-6,.md\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.md\:grid-7,.md\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.md\:grid-8,.md\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.md\:grid-9,.md\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.md\:grid-10,.md\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.md\:grid-11,.md\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.md\:grid-12,.md\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.md\:grid-cols-none{grid-template-columns:none}.md\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.md\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.md\:grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.md\:grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.md\:grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.md\:grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.md\:grid-rows-none{grid-template-rows:none}.md\:cell-auto,.md\:cell-span-auto{grid-column:auto}.md\:cell-full,.md\:cell-span-full{grid-column:1/-1}.md\:cell-1,.md\:cell-span-1{grid-column:span 1/span 1}.md\:cell-2,.md\:cell-span-2{grid-column:span 2/span 2}.md\:cell-3,.md\:cell-span-3{grid-column:span 3/span 3}.md\:cell-4,.md\:cell-span-4{grid-column:span 4/span 4}.md\:cell-5,.md\:cell-span-5{grid-column:span 5/span 5}.md\:cell-6,.md\:cell-span-6{grid-column:span 6/span 6}.md\:cell-7,.md\:cell-span-7{grid-column:span 7/span 7}.md\:cell-8,.md\:cell-span-8{grid-column:span 8/span 8}.md\:cell-9,.md\:cell-span-9{grid-column:span 9/span 9}.md\:cell-10,.md\:cell-span-10{grid-column:span 10/span 10}.md\:cell-11,.md\:cell-span-11{grid-column:span 11/span 11}.md\:cell-12,.md\:cell-span-12{grid-column:span 12/span 12}.md\:cell-row-auto{grid-row:auto}.md\:cell-row-full{grid-row:1/-1}.md\:cell-row-1,.md\:cell-row-span-1{grid-row:span 1/span 1}.md\:cell-row-2,.md\:cell-row-span-2{grid-row:span 2/span 2}.md\:cell-row-3,.md\:cell-row-span-3{grid-row:span 3/span 3}.md\:cell-row-4,.md\:cell-row-span-4{grid-row:span 4/span 4}.md\:cell-row-5,.md\:cell-row-span-5{grid-row:span 5/span 5}.md\:cell-row-6,.md\:cell-row-span-6{grid-row:span 6/span 6}.md\:cell-col-start-1,.md\:cell-start-1{grid-column-start:1}.md\:cell-col-end-1,.md\:cell-end-1{grid-column-end:1}.md\:cell-col-start-2,.md\:cell-start-2{grid-column-start:2}.md\:cell-col-end-2,.md\:cell-end-2{grid-column-end:2}.md\:cell-col-start-3,.md\:cell-start-3{grid-column-start:3}.md\:cell-col-end-3,.md\:cell-end-3{grid-column-end:3}.md\:cell-col-start-4,.md\:cell-start-4{grid-column-start:4}.md\:cell-col-end-4,.md\:cell-end-4{grid-column-end:4}.md\:cell-col-start-5,.md\:cell-start-5{grid-column-start:5}.md\:cell-col-end-5,.md\:cell-end-5{grid-column-end:5}.md\:cell-col-start-6,.md\:cell-start-6{grid-column-start:6}.md\:cell-col-end-6,.md\:cell-end-6{grid-column-end:6}.md\:cell-col-start-7,.md\:cell-start-7{grid-column-start:7}.md\:cell-col-end-7,.md\:cell-end-7{grid-column-end:7}.md\:cell-col-start-8,.md\:cell-start-8{grid-column-start:8}.md\:cell-col-end-8,.md\:cell-end-8{grid-column-end:8}.md\:cell-col-start-9,.md\:cell-start-9{grid-column-start:9}.md\:cell-col-end-9,.md\:cell-end-9{grid-column-end:9}.md\:cell-col-start-10,.md\:cell-start-10{grid-column-start:10}.md\:cell-col-end-10,.md\:cell-end-10{grid-column-end:10}.md\:cell-col-start-11,.md\:cell-start-11{grid-column-start:11}.md\:cell-col-end-11,.md\:cell-end-11{grid-column-end:11}.md\:cell-col-start-12,.md\:cell-start-12{grid-column-start:12}.md\:cell-col-end-12,.md\:cell-end-12{grid-column-end:12}.md\:cell-col-start-13,.md\:cell-start-13{grid-column-start:13}.md\:cell-col-end-13,.md\:cell-end-13{grid-column-end:13}.md\:cell-row-start-1{grid-row-start:1}.md\:cell-row-end-1{grid-row-end:1}.md\:cell-row-start-2{grid-row-start:2}.md\:cell-row-end-2{grid-row-end:2}.md\:cell-row-start-3{grid-row-start:3}.md\:cell-row-end-3{grid-row-end:3}.md\:cell-row-start-4{grid-row-start:4}.md\:cell-row-end-4{grid-row-end:4}.md\:cell-row-start-5{grid-row-start:5}.md\:cell-row-end-5{grid-row-end:5}.md\:cell-row-start-6{grid-row-start:6}.md\:cell-row-end-6{grid-row-end:6}.md\:cell-row-start-7{grid-row-start:7}.md\:cell-row-end-7{grid-row-end:7}.md\:cell-order-first{order:-9999}.md\:cell-order-last{order:9999}.md\:cell-order-none{order:0}.md\:cell-order-1{order:1}.md\:cell-order-2{order:2}.md\:cell-order-3{order:3}.md\:cell-order-4{order:4}.md\:cell-order-5{order:5}.md\:cell-order-6{order:6}.md\:cell-order-7{order:7}.md\:cell-order-8{order:8}.md\:cell-order-9{order:9}.md\:cell-order-10{order:10}.md\:cell-order-11{order:11}.md\:cell-order-12{order:12}}@media screen and (min-width:1024px),print{.lg\:grid-2,.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-3,.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-4,.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-5,.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-6,.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:grid-7,.lg\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.lg\:grid-8,.lg\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.lg\:grid-9,.lg\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.lg\:grid-10,.lg\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.lg\:grid-11,.lg\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.lg\:grid-12,.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-none{grid-template-columns:none}.lg\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.lg\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.lg\:grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.lg\:grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.lg\:grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.lg\:grid-rows-6{grid-template-rows:repeat(6,minmax(0,1fr))}.lg\:grid-rows-none{grid-template-rows:none}.lg\:cell-auto,.lg\:cell-span-auto{grid-column:auto}.lg\:cell-full,.lg\:cell-span-full{grid-column:1/-1}.lg\:cell-1,.lg\:cell-span-1{grid-column:span 1/span 1}.lg\:cell-2,.lg\:cell-span-2{grid-column:span 2/span 2}.lg\:cell-3,.lg\:cell-span-3{grid-column:span 3/span 3}.lg\:cell-4,.lg\:cell-span-4{grid-column:span 4/span 4}.lg\:cell-5,.lg\:cell-span-5{grid-column:span 5/span 5}.lg\:cell-6,.lg\:cell-span-6{grid-column:span 6/span 6}.lg\:cell-7,.lg\:cell-span-7{grid-column:span 7/span 7}.lg\:cell-8,.lg\:cell-span-8{grid-column:span 8/span 8}.lg\:cell-9,.lg\:cell-span-9{grid-column:span 9/span 9}.lg\:cell-10,.lg\:cell-span-10{grid-column:span 10/span 10}.lg\:cell-11,.lg\:cell-span-11{grid-column:span 11/span 11}.lg\:cell-12,.lg\:cell-span-12{grid-column:span 12/span 12}.lg\:cell-row-auto{grid-row:auto}.lg\:cell-row-full{grid-row:1/-1}.lg\:cell-row-1,.lg\:cell-row-span-1{grid-row:span 1/span 1}.lg\:cell-row-2,.lg\:cell-row-span-2{grid-row:span 2/span 2}.lg\:cell-row-3,.lg\:cell-row-span-3{grid-row:span 3/span 3}.lg\:cell-row-4,.lg\:cell-row-span-4{grid-row:span 4/span 4}.lg\:cell-row-5,.lg\:cell-row-span-5{grid-row:span 5/span 5}.lg\:cell-row-6,.lg\:cell-row-span-6{grid-row:span 6/span 6}.lg\:cell-col-start-1,.lg\:cell-start-1{grid-column-start:1}.lg\:cell-col-end-1,.lg\:cell-end-1{grid-column-end:1}.lg\:cell-col-start-2,.lg\:cell-start-2{grid-column-start:2}.lg\:cell-col-end-2,.lg\:cell-end-2{grid-column-end:2}.lg\:cell-col-start-3,.lg\:cell-start-3{grid-column-start:3}.lg\:cell-col-end-3,.lg\:cell-end-3{grid-column-end:3}.lg\:cell-col-start-4,.lg\:cell-start-4{grid-column-start:4}.lg\:cell-col-end-4,.lg\:cell-end-4{grid-column-end:4}.lg\:cell-col-start-5,.lg\:cell-start-5{grid-column-start:5}.lg\:cell-col-end-5,.lg\:cell-end-5{grid-column-end:5}.lg\:cell-col-start-6,.lg\:cell-start-6{grid-column-start:6}.lg\:cell-col-end-6,.lg\:cell-end-6{grid-column-end:6}.lg\:cell-col-start-7,.lg\:cell-start-7{grid-column-start:7}.lg\:cell-col-end-7,.lg\:cell-end-7{grid-column-end:7}.lg\:cell-col-start-8,.lg\:cell-start-8{grid-column-start:8}.lg\:cell-col-end-8,.lg\:cell-end-8{grid-column-end:8}.lg\:cell-col-start-9,.lg\:cell-start-9{grid-column-start:9}.lg\:cell-col-end-9,.lg\:cell-end-9{grid-column-end:9}.lg\:cell-col-start-10,.lg\:cell-start-10{grid-column-start:10}.lg\:cell-col-end-10,.lg\:cell-end-10{grid-column-end:10}.lg\:cell-col-start-11,.lg\:cell-start-11{grid-column-start:11}.lg\:cell-col-end-11,.lg\:cell-end-11{grid-column-end:11}.lg\:cell-col-start-12,.lg\:cell-start-12{grid-column-start:12}.lg\:cell-col-end-12,.lg\:cell-end-12{grid-column-end:12}.lg\:cell-col-start-13,.lg\:cell-start-13{grid-column-start:13}.lg\:cell-col-end-13,.lg\:cell-end-13{grid-column-end:13}.lg\:cell-row-start-1{grid-row-start:1}.lg\:cell-row-end-1{grid-row-end:1}.lg\:cell-row-start-2{grid-row-start:2}.lg\:cell-row-end-2{grid-row-end:2}.lg\:cell-row-start-3{grid-row-start:3}.lg\:cell-row-end-3{grid-row-end:3}.lg\:cell-row-start-4{grid-row-start:4}.lg\:cell-row-end-4{grid-row-end:4}.lg\:cell-row-start-5{grid-row-start:5}.lg\:cell-row-end-5{grid-row-end:5}.lg\:cell-row-start-6{grid-row-start:6}.lg\:cell-row-end-6{grid-row-end:6}.lg\:cell-row-start-7{grid-row-start:7}.lg\:cell-row-end-7{grid-row-end:7}.lg\:cell-order-first{order:-9999}.lg\:cell-order-last{order:9999}.lg\:cell-order-none{order:0}.lg\:cell-order-1{order:1}.lg\:cell-order-2{order:2}.lg\:cell-order-3{order:3}.lg\:cell-order-4{order:4}.lg\:cell-order-5{order:5}.lg\:cell-order-6{order:6}.lg\:cell-order-7{order:7}.lg\:cell-order-8{order:8}.lg\:cell-order-9{order:9}.lg\:cell-order-10{order:10}.lg\:cell-order-11{order:11}.lg\:cell-order-12{order:12}}.gap-px{gap:1px}.gap-x-px{column-gap:1px}.gap-y-px{row-gap:1px}.gap-0,.gap-0 [class^=grid]{gap:0}.gap-x-0,.gap-x-0 [class^=grid]{column-gap:0}.gap-y-0,.gap-y-0 [class^=grid]{row-gap:0}.gap-1,.gap-1 [class^=grid]{gap:.25rem}.gap-x-1,.gap-x-1 [class^=grid]{column-gap:.25rem}.gap-y-1,.gap-y-1 [class^=grid]{row-gap:.25rem}.gap-2,.gap-2 [class^=grid]{gap:.5rem}.gap-x-2,.gap-x-2 [class^=grid]{column-gap:.5rem}.gap-y-2,.gap-y-2 [class^=grid]{row-gap:.5rem}.gap-3,.gap-3 [class^=grid]{gap:.75rem}.gap-x-3,.gap-x-3 [class^=grid]{column-gap:.75rem}.gap-y-3,.gap-y-3 [class^=grid]{row-gap:.75rem}.gap-4,.gap-4 [class^=grid]{gap:1rem}.gap-x-4,.gap-x-4 [class^=grid]{column-gap:1rem}.gap-y-4,.gap-y-4 [class^=grid]{row-gap:1rem}.gap-5,.gap-5 [class^=grid]{gap:1.25rem}.gap-x-5,.gap-x-5 [class^=grid]{column-gap:1.25rem}.gap-y-5,.gap-y-5 [class^=grid]{row-gap:1.25rem}.gap-6,.gap-6 [class^=grid]{gap:1.5rem}.gap-x-6,.gap-x-6 [class^=grid]{column-gap:1.5rem}.gap-y-6,.gap-y-6 [class^=grid]{row-gap:1.5rem}.gap-7,.gap-7 [class^=grid]{gap:1.75rem}.gap-x-7,.gap-x-7 [class^=grid]{column-gap:1.75rem}.gap-y-7,.gap-y-7 [class^=grid]{row-gap:1.75rem}.gap-8,.gap-8 [class^=grid]{gap:2rem}.gap-x-8,.gap-x-8 [class^=grid]{column-gap:2rem}.gap-y-8,.gap-y-8 [class^=grid]{row-gap:2rem}.gap-9,.gap-9 [class^=grid]{gap:2.25rem}.gap-x-9,.gap-x-9 [class^=grid]{column-gap:2.25rem}.gap-y-9,.gap-y-9 [class^=grid]{row-gap:2.25rem}.gap-10,.gap-10 [class^=grid]{gap:2.5rem}.gap-x-10,.gap-x-10 [class^=grid]{column-gap:2.5rem}.gap-y-10,.gap-y-10 [class^=grid]{row-gap:2.5rem} diff --git a/content/page-templates/css-grid-framework/6-order/html.inc b/content/page-templates/css-grid-framework/6-order/html.inc index 595fabf11..0eba6b518 100644 --- a/content/page-templates/css-grid-framework/6-order/html.inc +++ b/content/page-templates/css-grid-framework/6-order/html.inc @@ -10,13 +10,13 @@

MAIN Content

- +

MAIN Content

- +
@@ -34,13 +34,13 @@

MAIN Content

- +

MAIN Content

- +
diff --git a/content/page-templates/dashboard-filter/1/css.inc b/content/page-templates/dashboard-filter/1/css.inc new file mode 100644 index 000000000..08772b108 --- /dev/null +++ b/content/page-templates/dashboard-filter/1/css.inc @@ -0,0 +1,167 @@ +/* Variables & Shared classes +========================================================================== */ +:root { + --secondary-color: #142e7b; +} + +main { + margin: 0; +} + +/* HEADER */ +section { + padding-top: 2rem; +} + +.header { + background: var(--boxes-background); +} + +.heading { + display: flex; + flex-direction: column; + align-items: start; + margin: 2rem; +} +.heading h1.title { + font-size: 3em; +} +.heading h3.title { + font-size: 1.7em; +} +@media screen and (min-width: 640px) { + .heading { + margin: 2rem 12%; + } +} +.description  { + margin-bottom: 2em; +} + +/***** Share width inlined ods-select *****/ +.shared-width-ods-selects { + display: flex; + flex-wrap: wrap; + align-items: center; +} + +.shared-width-ods-selects > div > .odswidget-select { + margin: 3px 6px 3px 0px; + flex: 1; + /* + To assure a minimum width, set a min-width property here. + */ + min-width: 200px; +} + +/***** Clear filters button *****/ + +.clear-filters { + display: flex; + align-items: center; + justify-content: center; + margin-top: 5px; +} + +.clear-filters-button { + background: none; + border: none; + color: var(--text); +} + +.clear-filters-button:hover { + opacity: 0.65; +} + +/* VIZ */ + +.viz-card { + background-color: var(--boxes-background); + height: auto; + width: 100%; + border-radius: 4px; +} + +/* KPI Card +========================================================================== */ +.kpi-container { + display: flex; + justify-content: space-around; + gap: 20px; +} + +.kpi-card { + padding: 39px; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + text-align: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + text-align: center; +} +.kpi-icon { + color: var(--highlight); + color: var(--secondary-color); + font-size: 4rem; + margin-top: 0; + margin-bottom: 13px; + max-width: 100%; +} +.kpi-title { + font-weight: normal; + color: var(--highlight); + font-size: 3.2rem; + margin-top: 0; + margin-bottom: 13px; + max-width: 100%; +} +.kpi-description { + color: var(--text); + font-size: 1rem; + line-height: 1.5; + font-weight: normal; + margin-top: 0; + margin-bottom: 0; + max-width: 100%; +} + +/* Content Card + ========================================================================== */ +.content-card { + padding: 26px; + margin-bottom: 20px; +} +.content-card-title { + color: var(--titles); + font-size: 1.2rem; + line-height: 1.5; + font-weight: normal; + margin-top: 0; + margin-bottom: 13px; + max-width: 100%; +} +.content-card-description { + color: var(--text); + font-size: 1rem; + line-height: 1.5; + font-weight: normal; + margin-top: 0; + margin-bottom: 26px; + max-width: 100%; +} + +/* Charts + ========================================================================== */ + +rect.highcharts-background { + fill: transparent !important; +} diff --git a/content/page-templates/dashboard-filter/1/html.inc b/content/page-templates/dashboard-filter/1/html.inc new file mode 100644 index 000000000..33cc611e2 --- /dev/null +++ b/content/page-templates/dashboard-filter/1/html.inc @@ -0,0 +1,161 @@ + + +
+
+
+

Observation météorologique historiques en France (SYNOP) +

+

+ Focus sur les températures observées depuis 2010. +

+ Filtrer par : +
+
+ +
+
+ +
+
+
+ +
+
+
+
+ +
+
+
+ +
+ +

+ {{ analysis[0].temperature | number : 2 }}°C +

+

+ Température minimale observée +

+
+ +
+ +

+ {{ analysis[0].tempmoyenne | number : 2}} °C +

+

+ Température moyenne observée +

+
+ +
+ +

+ {{ analysis[0].maxtemp | number : 2}} °C +

+

+ Température maximale observée +

+
+
+
+
+ +
+
+
+
+
+

+ Température maximale sur 12 heures (°C) +

+ + + + + +
+
+
+
+

+ Communes les plus chaudes +

+ + + + + + +
+
+
+
+
+
+

+ Évolution des précipitations +

+ + + + + + +
+
+
+
+

+ Évolution des températures moyennes (°C) +

+ + + + + + +
+
+
+
+
+
\ No newline at end of file diff --git a/content/page-templates/dashboard-filter/1/index.md b/content/page-templates/dashboard-filter/1/index.md new file mode 100644 index 000000000..dd102b45e --- /dev/null +++ b/content/page-templates/dashboard-filter/1/index.md @@ -0,0 +1,6 @@ +--- +title: "Dashboard with filters" +date: 2023-05-23T12:00:00+02:00 +--- + +This example displays data about weather temperatures since 2010. It involves only one dataset and one context. diff --git a/content/page-templates/dashboard-filter/1/schema.md b/content/page-templates/dashboard-filter/1/schema.md new file mode 100644 index 000000000..4cd5bf7af --- /dev/null +++ b/content/page-templates/dashboard-filter/1/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `observation-synop` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/observation-synop/table/) + +**Fields in use:** + +|nom_reg|nom_dept|tc|tx12c|libgeo|date|rr24| +|---|---|---|---|---|---|---| +|Occitanie|Aveyron|2.6000000000000227||Millau|2010-01-05T09:00:00+00:00|| +|||32.30000000000001|||2010-01-05T09:00:00+00:00|| +|Normandie|Calvados|0.5||Carpiquet|2010-01-05T12:00:00+00:00|| +|Bretagne|Finistère|3.8000000000000114||Guipavas|2010-01-05T12:00:00+00:00|| + diff --git a/content/page-templates/dashboard-filter/2/css.inc b/content/page-templates/dashboard-filter/2/css.inc new file mode 100644 index 000000000..fe022a0ac --- /dev/null +++ b/content/page-templates/dashboard-filter/2/css.inc @@ -0,0 +1,154 @@ +/* Variables & Shared classes +========================================================================== */ +:root { + --secondary-color: #142e7b; +} + +main { + margin: 0; +} + +/* HEADER */ +section { + padding-top: 2rem; +} + +.header { + background: var(--boxes-background); +} + +.heading { + display: flex; + flex-direction: column; + align-items: start; + margin: 2rem; +} +.heading h1.title { + font-size: 3em; +} +.heading h3.title { + font-size: 1.7em; +} +@media screen and (min-width: 640px) { + .heading { + margin: 2rem 12%; + } +} +.description  { + margin-bottom: 2em; +} + +/***** Inlined SELECT *****/ +.ods-selects { + display: flex; + flex-wrap: wrap; + align-items: center; + gap: 20px; + padding: 10px 0px; +} + +.odswidget-select { + min-width: 200px; +} + +/***** Clear filters button *****/ + +.clear-filters { + display: flex; + align-items: center; + justify-content: center; + margin-top: 5px; +} + +.clear-filters-button { + background: none; + border: none; + color: var(--text); +} + +.clear-filters-button:hover { + opacity: 0.65; +} + +/* VIZ */ + +.viz-card { + background-color: var(--boxes-background); + height: auto; + width: 100%; + border-radius: 4px; +} + +/* KPI Card +========================================================================== */ +.kpi-container { + display: flex; + justify-content: space-around; + gap: 20px; +} + +.kpi-card { + padding: 39px; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + text-align: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + text-align: center; +} +.kpi-icon { + color: var(--highlight); + color: var(--secondary-color); + font-size: 4rem; + margin-top: 0; + margin-bottom: 13px; + max-width: 100%; +} +.kpi-title { + font-weight: normal; + color: var(--highlight); + font-size: 3.2rem; + margin-top: 0; + margin-bottom: 13px; + max-width: 100%; +} +.kpi-description { + color: var(--text); + font-size: 1rem; + line-height: 1.5; + font-weight: normal; + margin-top: 0; + margin-bottom: 0; + max-width: 100%; +} + +/* Content Card + ========================================================================== */ +.content-card { + padding: 26px; + margin-bottom: 20px; +} +.content-card-title { + color: var(--titles); + font-size: 1.2rem; + line-height: 1.5; + font-weight: normal; + margin-top: 0; + margin-bottom: 26px; + max-width: 100%; +} + +/* Charts + ========================================================================== */ +rect.highcharts-background { + fill: transparent !important; +} diff --git a/content/page-templates/dashboard-filter/2/html.inc b/content/page-templates/dashboard-filter/2/html.inc new file mode 100644 index 000000000..29c4ab0c5 --- /dev/null +++ b/content/page-templates/dashboard-filter/2/html.inc @@ -0,0 +1,196 @@ + + + +
+ {{ values.regions = regions; ""}} +
+
+ {{ values.departements = departements; "" }} +
+ + +
+
+
+

Offre de santé en France +

+

+ Données des établissements du domaine sanitaire et social et de l'annuaire Santé +

+ Filtrer par : +
+ + + + + {{ + medecins.parameters['refine.insee_reg'] = + healthref.parameters['refine.reg_code'] = + ctxdepartements.parameters['refine.reg_code'] = + (selected.regions | toObject:'code' | keys); + ""}} + + + + {{ +medecins.parameters['refine.insee_dep'] = +healthref.parameters['refine.dep_code'] = +ctxregions.parameters['refine.dep_code'] = +(selected.departements | toObject:'code' | keys); +""}} +
+
+ +
+
+
+
+ + +
+
+
+ +
+ +

+ {{ analysis[0].count | number : 0 }} +

+

+ Établissements du domaine sanitaire et social +

+
+ +
+ +

+ {{ analysis[0].count | number : 0 }} +

+

+ Professionnels de santé +

+
+
+
+
+ + +
+
+
+
+
+

+ Localisation des établissements et professionnels de santé +

+ + + + + + + + +
+
+
+
+
+
+

+ Montant général constaté +

+ + + + + + +
+
+
+
+

+ Top 10 des catégories d'établissement +

+ + + + + + +
+
+
+
+
+
\ No newline at end of file diff --git a/content/page-templates/dashboard-filter/2/index.md b/content/page-templates/dashboard-filter/2/index.md new file mode 100644 index 000000000..46f0a70c8 --- /dev/null +++ b/content/page-templates/dashboard-filter/2/index.md @@ -0,0 +1,6 @@ +--- +title: "Dashboard with filters on multiple contexts" +date: 2023-05-23T12:00:00+02:00 +--- + +This example displays data about Health offer in France. It involves several contexts, the filters work on all those contexts. diff --git a/content/page-templates/dashboard-filter/2/schema.md b/content/page-templates/dashboard-filter/2/schema.md new file mode 100644 index 000000000..193416efd --- /dev/null +++ b/content/page-templates/dashboard-filter/2/schema.md @@ -0,0 +1,19 @@ +**Fields in use in `healthref-france-finess` [(See it on public domain)](https://public.huwise.com/explore/dataset/healthref-france-finess/table/):** + +|reg_code|dep_code|libcategetab| +|---|---|---| +|11|75|Laboratoire de Biologie Médicale| +|11|75|Centre de Santé| +|11|75|Centre de Santé| +|11|75|Service d'Éducation Spéciale et de Soins à Domicile| + + +**Fields in use in `medecins` [(See it on public domain)](https://public.huwise.com/explore/dataset/medecins/table/):** + +|insee_dep|insee_reg|nom|libelle_profession|column_19| +|---|---|---|---|---| +|02|32|GUY BOTBOL|Chirurgien-dentiste|| +|02|32|GUY BOTBOL|Chirurgien-dentiste|100.0| +|04|93|INGRID COLLINET BARDON|Chirurgien-dentiste|380.0| +|04|93|INGRID COLLINET BARDON|Chirurgien-dentiste|| + diff --git a/content/page-templates/dashboard-filter/index.md b/content/page-templates/dashboard-filter/index.md new file mode 100644 index 000000000..4e7dbd03f --- /dev/null +++ b/content/page-templates/dashboard-filter/index.md @@ -0,0 +1,11 @@ +--- +title: "Dashboard with filters" +description: "A dashboard template to display KPIs and charts, with filters" +date: 2023-05-23T12:00:00+02:00 +tags: ["display"] +resources: +- src: '*/' + name: folder-:counter +--- + +This dashboard displays KPIs, charts, map, and includes filters to customize your analysis. \ No newline at end of file diff --git a/content/page-templates/dashboard-layouts/index.md b/content/page-templates/dashboard-layouts/index.md index d93003dfe..a0cbc2c28 100644 --- a/content/page-templates/dashboard-layouts/index.md +++ b/content/page-templates/dashboard-layouts/index.md @@ -15,7 +15,7 @@ These resources are split into 2 main parts To see the final example made with these layouts, go to [dashboard resource](/page-templates/dashboard). -**ODS Layout** is well known from Opendatasoft users, and these resources over-ride it by setting `row` as `display: flex` +**ODS Layout** is well known from Huwise users, and these resources over-ride it by setting `row` as `display: flex` elements to take advantage of Flexbox capabilities. You can see the [ODS Layout over-ride resource here](/page-templates/ods-layout-over-ride). **CSS Grid framework** refer to some custom CSS classes that over-rides CSS Grid layout. It's mainly suitable for **expert users only** that are looking for more advanced layouts such as grids and multiple rows designs. diff --git a/content/page-templates/dashboard/6/html.inc b/content/page-templates/dashboard/6/html.inc index dbd5a7c1d..009e21dea 100644 --- a/content/page-templates/dashboard/6/html.inc +++ b/content/page-templates/dashboard/6/html.inc @@ -3,7 +3,7 @@ stats-dataset="resume-statistique-communes-departements-et-regions-france-2012-2013-2014" stats-domain="public">
+ ng-init="stats['source'] = 'https://' + stats.dataset.metas.domain + '.huwise.com/explore/dataset/' + stats.dataset.datasetid">

Observatoire statistiques de la population Française diff --git a/content/page-templates/dashboard/6/schema.md b/content/page-templates/dashboard/6/schema.md new file mode 100644 index 000000000..cd0bad7b4 --- /dev/null +++ b/content/page-templates/dashboard/6/schema.md @@ -0,0 +1,17 @@ +**Dataset in use:** `resume-statistique-communes-departements-et-regions-france-2012-2013-2014` [(See it on public domain)](https://public.huwise.com/explore/dataset/resume-statistique-communes-departements-et-regions-france-2012-2013-2014/table/) + +**Fields in use:** + +|population_en_2012 (numeric)|menages_en_2012 (numeric)|population_en_2007 (numeric)|naissances_entre_2007_et_2012 (numeric)|actifs_15_64_ans_en_2012 (numeric)|chomeurs_15_64_ans_en_2012 (numeric)| +|---|---|---|---|---|---| +|765.0|316.307793923|755.0|44.0|347.635402906|38.4015852048| +|224.0|100.129032258|235.0|14.0|113.548387097|10.3225806452| +|357.0|151.827586207|358.0|25.0|178.5|14.3620689655| +|116.0|53.0|113.0|4.0|56.0|2.0| + +|logements_en_2012 (numeric)|residences_principales_en_2012 (numeric)|res_secondaires_et_logts_occasionnels_en_2012 (numeric)|nombre_de_menages_fiscaux_en_2012 (numeric)|part_des_menages_fiscaux_imposes_en_2012 (numeric)|mediane_du_revenu_disponible_par_uc_en_2012 (numeric)| +|---|---|---|---|---|---| +|390.451397057|316.307793923|35.5483028721|314.0|0|16985.0| +|148.447872838|100.129032258|35.4995563443|98.0|0|17943.0| +|231.841475096|151.827586207|44.885840108400004|148.0|0|17258.7083333| +|78.8947368421|53.0|14.5010526316|52.0|0|21945.0| diff --git a/content/page-templates/dashboard/grid-6/html.inc b/content/page-templates/dashboard/grid-6/html.inc index a15636187..92a70dede 100644 --- a/content/page-templates/dashboard/grid-6/html.inc +++ b/content/page-templates/dashboard/grid-6/html.inc @@ -37,7 +37,7 @@
{{ stats.dataset.metas.data_processed | date }} Source @@ -68,7 +68,7 @@
{{ stats.dataset.metas.data_processed | date }} Source @@ -105,7 +105,7 @@
{{ stats.dataset.metas.data_processed | date }} Source @@ -136,7 +136,7 @@
{{ stats.dataset.metas.data_processed | date }} Source @@ -168,7 +168,7 @@
{{ stats.dataset.metas.data_processed | date }} Source @@ -199,7 +199,7 @@
{{ stats.dataset.metas.data_processed | date }} Source @@ -237,7 +237,7 @@
{{ stats.dataset.metas.data_processed | date }} Source @@ -268,7 +268,7 @@
{{ stats.dataset.metas.data_processed | date }} Source @@ -299,7 +299,7 @@
{{ stats.dataset.metas.data_processed | date }} Source @@ -336,7 +336,7 @@
{{ stats.dataset.metas.data_processed | date }} Source @@ -367,7 +367,7 @@
{{ stats.dataset.metas.data_processed | date }} Source @@ -398,7 +398,7 @@
{{ stats.dataset.metas.data_processed | date }} Source diff --git a/content/page-templates/dashboard/grid-6/schema.md b/content/page-templates/dashboard/grid-6/schema.md new file mode 100644 index 000000000..cd0bad7b4 --- /dev/null +++ b/content/page-templates/dashboard/grid-6/schema.md @@ -0,0 +1,17 @@ +**Dataset in use:** `resume-statistique-communes-departements-et-regions-france-2012-2013-2014` [(See it on public domain)](https://public.huwise.com/explore/dataset/resume-statistique-communes-departements-et-regions-france-2012-2013-2014/table/) + +**Fields in use:** + +|population_en_2012 (numeric)|menages_en_2012 (numeric)|population_en_2007 (numeric)|naissances_entre_2007_et_2012 (numeric)|actifs_15_64_ans_en_2012 (numeric)|chomeurs_15_64_ans_en_2012 (numeric)| +|---|---|---|---|---|---| +|765.0|316.307793923|755.0|44.0|347.635402906|38.4015852048| +|224.0|100.129032258|235.0|14.0|113.548387097|10.3225806452| +|357.0|151.827586207|358.0|25.0|178.5|14.3620689655| +|116.0|53.0|113.0|4.0|56.0|2.0| + +|logements_en_2012 (numeric)|residences_principales_en_2012 (numeric)|res_secondaires_et_logts_occasionnels_en_2012 (numeric)|nombre_de_menages_fiscaux_en_2012 (numeric)|part_des_menages_fiscaux_imposes_en_2012 (numeric)|mediane_du_revenu_disponible_par_uc_en_2012 (numeric)| +|---|---|---|---|---|---| +|390.451397057|316.307793923|35.5483028721|314.0|0|16985.0| +|148.447872838|100.129032258|35.4995563443|98.0|0|17943.0| +|231.841475096|151.827586207|44.885840108400004|148.0|0|17258.7083333| +|78.8947368421|53.0|14.5010526316|52.0|0|21945.0| diff --git a/content/page-templates/datastory/0/css.inc b/content/page-templates/datastory/0/css.inc index 2b91e2b49..6b8e14317 100644 --- a/content/page-templates/datastory/0/css.inc +++ b/content/page-templates/datastory/0/css.inc @@ -61,17 +61,17 @@ section { height: 400px; } -g.highcharts-label.highcharts-data-label { +.one-out-of-5-values g.highcharts-label.highcharts-data-label { display: none; } -g.highcharts-label.highcharts-data-label:first-child, g.highcharts-label.highcharts-data-label:nth-child(5n) { +.one-out-of-5-values g.highcharts-label.highcharts-data-label:first-child, g.highcharts-label.highcharts-data-label:nth-child(5n) { display: inherit; } /** * License: MIT License * Generated on 26 May 2021 - * Author: Labs from Opendatasoft + * Author: Labs from Huwise * Version: 0.1 * Description: ods-chart CSS Library */ diff --git a/content/page-templates/datastory/0/html.inc b/content/page-templates/datastory/0/html.inc index d2668805f..f95c26bee 100644 --- a/content/page-templates/datastory/0/html.inc +++ b/content/page-templates/datastory/0/html.inc @@ -20,10 +20,10 @@ evenementspublicsopenagenda-domain="userclub" evenementspublicsopenagenda-dataset="evenements-publics-openagenda" evenementspublicsopenagenda-parameters="{'disjunctive.tags':true,'disjunctive.placename':true,'disjunctive.city':true}"> - - - + evenementspublicsopenagenda-parameters="{'disjunctive.tags':true,'disjunctive.placename':true,'disjunctive.city':true,'q':'firstdate_begin:[2008 TO 2023]'}"> - - - - + evenementspublicsopenagenda-parameters="{'disjunctive.tags':true,'disjunctive.placename':true,'disjunctive.city':true,'q':'firstdate_begin:[2008 TO 2023]'}"> - - - + evenementspublicsopenagenda-parameters="{'disjunctive.tags':true,'disjunctive.placename':true,'disjunctive.city':true,'q':'firstdate_begin:[2008 TO 2023]'}"> - - - + evenementspublicsopenagenda-parameters="{'disjunctive.tags':true,'disjunctive.placename':true,'disjunctive.city':true,'q':'firstdate_begin:[2008 TO 2023]'}"> - * { + margin: 0 0 10px; + width: 100%; +} + +.odswidget-select .odswidget-select-dropdown.open .odswidget-select-dropdown-menu { + width: 100% +} + +.clear-filters { + display: flex; + align-items: center; + justify-content: center; +} + +.clear-filters-button:hover { + opacity: 0.65; +} + +.odswidget-select, +.odswidget-select .odswidget-select-dropdown { + width: 100%; +} + +@media screen and (min-width: 500px) { + .filter-list>* { + margin: 0 10px 10px 0; + width: inherit; + } + .odswidget-select .odswidget-select-dropdown.open .odswidget-select-dropdown-menu { + width: max-content; + min-width: 240px; + } +} + + +/*********** Filter date ************/ + +.filter-date { + display: flex; + flex-direction: column; + align-items: center; + margin: 13px 26px 32px 26px; +} + +.odswidget-date-range-slider { + width: 100%; +} + +.filter-date-button { + margin-left: 0; + margin-top: 13px; + white-space: nowrap; + text-decoration: underline; +} + +.filter-date-button:not(.filter-date-button-disabled):hover { + opacity: 0.65; +} + +.filter-date-button-disabled { + opacity: 0.5; + pointer-event: none; + text-decoration: none; +} + +@media screen and (min-width: 500px) { + .filter-date { + flex-direction: row; + } + .filter-date-button { + margin-left: 50px; + margin-top: 0; + } +} + + +/* date range slider style override */ + +.odswidget-date-range-slider .irs--flat .irs-from, +.odswidget-date-range-slider .irs--flat .irs-single, +.odswidget-date-range-slider .irs--flat .irs-to { + color: var(--text); + border: 1px solid #cbd2db; + border-radius: 2rem; + background: #FFFFFF; +} + +.odswidget-date-range-slider .irs--flat .irs-from:before, +.odswidget-date-range-slider .irs--flat .irs-single:before, +.odswidget-date-range-slider .irs--flat .irs-to:before { + border-top-color: var(--text); +} + +.odswidget-date-range-slider .irs--flat .irs-bar { + background-color: var(--highlight); +} + +.odswidget-date-range-slider .irs--flat .irs-handle>i:first-child { + background-color: var(--highlight); +} + +.odswidget-date-range-slider .irs--flat .irs-handle.state_hover>i:first-child, +.odswidget-date-range-slider .irs--flat .irs-handle:hover>i:first-child { + background-color: var(--text); +} + + +/* Content Card +========================================================================== */ + +.content-card { + background-color: var(--boxes-background); + border-radius: 4px; + height: 100%; + box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.13); +} + +.content-card-button { + color: var(--highlight); + border: 1px solid var(--highlight); + background: transparent; + display: inline-block; + text-align: center; + font-size: .867rem; + border-radius: 4px; + padding: .5rem 1.15rem; + text-decoration: none; + transition: all .2s; +} + +.content-card-button:hover { + background-color: var(--highlight); + color: #FFFFFF; + text-decoration: none; +} + + +/* KPI Card +========================================================================== */ + +@media screen and (min-width: 992px) { + .kpis-container { + display: flex; + justify-content: center; + } +} + +.kpi-card { + background-color: var(--boxes-background); + height: 100%; + padding: 30px; + border-radius: 4px; + box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.13); + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + text-align: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + text-align: center; +} + + +.kpi-title { + font-weight: normal; + color: var(--highlight); + font-size: 3.2rem; + margin-top: 0; + margin-bottom: 7px; + max-width: 100%; +} + +.kpi-unit { + font-size: 0.8em; + color: var(--secondary-color); +} + + +/* Access-card +========================================================================== */ + +.col-md-4 { + padding-bottom: 20px +} + + +ul { + padding-left: 13px; +} + +.access-card { + border-radius: 10px; + background-color: #fff; + height: 100%; + background-color: #f6f8fb; + box-shadow: 0px 6px 13px rgba(0, 0, 0, 0.13); + transition: all 0.3s; + display: block; + color: var(--text); + margin-bottom: 10px; + display: flex; + flex-direction: column; + justify-content: space-between; + overflow: hidden; + +} + +.access-card:hover { + box-shadow: 0px 6px 13px rgba(0, 0, 0, 0.5); + text-decoration: none; + overflow: hidden; +} + +.access-card-img { + background-repeat: no-repeat; + background-size: cover; + background-position: center; + height: 250px; + position: relative; + border-radius: 10px 10px 0 0; +} + +.access-card-content { + padding: 26px 26px 10px 26px; +} + +.access-card-pretitle { + text-transform: uppercase; + color: #FFF; + background-color: var(--links) ; + border-radius: 3px; + font-weight: 400; + margin: 0px; + font-size: 12px; + position: absolute; + bottom: 15px; + left: 26px; + padding: 5px; +} + +.access-card-title { + font-weight: 400; + margin: 10px 0px; + font-size: 22px; + border-bottom: solid var(--highlight) 2px; + padding-bottom: 10px; +} + +.access-card-subtitle { + font-size: 16px; + font-weight: 400; + margin: 0px 0px 10px 0px; +} + +.access-card-content p { + margin: 5px 0px; +} + +.access-card-button { + display: flex; + justify-content: center; + margin: 0px 26px 26px; + padding-top: 0px; +} + +.access-card-button:hover { + opacity: 0.7; +} + +.access-card-button-content { + background-color: var(--highlight); + text-align: center; + color: #FFF; + border-radius: 24px; + padding: 10px 20px 10px 20px; + width: fit-content; +} diff --git a/content/page-templates/dataviz-gallery/1/html.inc b/content/page-templates/dataviz-gallery/1/html.inc new file mode 100644 index 000000000..9bc76077c --- /dev/null +++ b/content/page-templates/dataviz-gallery/1/html.inc @@ -0,0 +1,148 @@ +
+ +

Dataviz Gallery

+

+ Sur cette page vous pouvez trouver les dernières visualisations crées sur notre portail. +

+
+ +
+ + + +
+ + +
+
+ +
+
+
+ Supprimer le filtre + +
+
+
+ + + +
+ + +
+ +
+

+ {{ (agg[0].x || 0) | number : (kpi.precision || 0) }} + {{ kpi.unit }} +

+

+ data visualisations sélectionnées +

+
+ +
+ + + +
+
+ +
+ +
+
+ +
+

{{item.fields.theme}}

+
+
+
+

{{ item.fields.title }}

+ +

Jeux de données utilisés :

+ + +
+
+ +
+
+
+
+ +
+
\ No newline at end of file diff --git a/content/page-templates/dataviz-gallery/1/index.md b/content/page-templates/dataviz-gallery/1/index.md new file mode 100644 index 000000000..9e097470e --- /dev/null +++ b/content/page-templates/dataviz-gallery/1/index.md @@ -0,0 +1,7 @@ +--- +title: "French version" +date: 2023-03-17T12:00:00+02:00 +--- + +Please refer to [this tutorial](https://userclub.huwise.com/p/dataviz-gallery-tutorial-fr/) to see how to implement this template on your portal. + diff --git a/content/page-templates/dataviz-gallery/1/schema.md b/content/page-templates/dataviz-gallery/1/schema.md new file mode 100644 index 000000000..f75721454 --- /dev/null +++ b/content/page-templates/dataviz-gallery/1/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `datavizgallery` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/datavizgallery/table/) + +**Fields in use:** + +|theme|date|photo|title|iddataset|datavizlink| +|---|---|---|---|---|---| +|Administration|2022-02-22|issy.jpeg|Jumelages et partenariats internationaux d'Issy-les-Moulineaux|jumelages-partenariats-internationaux-issy|https://data.issy.com/explore/dataset/jumelages-partenariats-internationaux-issy/jumelages/?sort=annee| +|Budget|2022-01-03|cannes.jpeg|Budget primitif 2021|"budget-primitif-2021|resultats-et-excedents|evolution-fiscalite"|https://data.cannes.fr/pages/budget-2021/la-gestion-budgetaire-cannes| +|Délibérations|2022-01-01|soissons.jpeg|Délibérations du Conseil Municipal de Soissons|deliberations-du-conseil-municipal-de-soissons|https://data.ville-soissons.fr/pages/deliberations_conseils_municipaux/| +|Services|2023-03-01|bordeaux.jpeg|Les équipements de Bordeaux Métropole|equipement-public-bordeaux|https://opendata.bordeaux-metropole.fr/pages/equipements/| + diff --git a/content/page-templates/dataviz-gallery/2/css.inc b/content/page-templates/dataviz-gallery/2/css.inc new file mode 100644 index 000000000..e489127a5 --- /dev/null +++ b/content/page-templates/dataviz-gallery/2/css.inc @@ -0,0 +1,406 @@ +/* General Layout +========================================================================== */ + +:root { + --secondary-color: black; +} + +main { + margin: 6rem 0 3em 0; +} + + + +@media screen and (min-width: 992px) { + .row-equal-height { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + margin-bottom: 20px; + } + /* Fix for early content wrapping in Safari*/ + .row-equal-height:before, + .row-equal-height:after { + content: normal; + } +} + +.page-title { + font-size: 3rem; + font-weight: bold; + margin-top: 0; + margin-bottom: 1rem; +} + +.page-subtitle { + font-size: 1.2rem; + line-height: 2; + margin-top: 0; + margin-bottom: 3rem; +} + +.margin-bottom-20 { + margin-bottom: 20px; +} + + +/* Search Module +========================================================================== */ + +.search-module-container { + padding: 26px; + margin-bottom: 25px; +} + +.search-module { + display: flex; + align-items: stretch; + border-bottom: 1px solid #dee5ef; + margin-bottom: 13px; + transition: all .2s; +} + +.search-module:hover, +.search-module:focus-within { + border-bottom-color: var(--links); +} + +.search-module-icon { + color: #898d92; + margin-right: 8px; + align-self: center; +} + +.search-module-input { + background-color: transparent; + width: 100%; + outline: none; + border: none; + padding: 12px 0; + transition: all .2s; + color: var(--text); +} + +.search-module-input::placeholder { + transition: all .2s; +} + +.search-module-clear { + color: #898d92; + font-size: 1rem; + background: transparent; + border: none; + margin: 0; + outline: none; + padding: 0 0 0 12px; + transition: all .2s; +} + +.search-module-clear:hover { + opacity: .65; +} + +.search-module:hover .search-module-icon, +.search-module:focus-within .search-module-icon, +.search-module:hover .search-module-input::placeholder, +.search-module:focus-within .search-module-input::placeholder { + color: var(--links) +} + + +/* Filters +========================================================================== */ + +.filter-list { + display: flex; + flex-wrap: wrap; + position: relative; +} + +.filter-list>* { + margin: 0 0 10px; + width: 100%; +} + +.odswidget-select .odswidget-select-dropdown.open .odswidget-select-dropdown-menu { + width: 100% +} + +.clear-filters { + display: flex; + align-items: center; + justify-content: center; +} + +.clear-filters-button:hover { + opacity: 0.65; +} + +.odswidget-select, +.odswidget-select .odswidget-select-dropdown { + width: 100%; +} + +@media screen and (min-width: 500px) { + .filter-list>* { + margin: 0 10px 10px 0; + width: inherit; + } + .odswidget-select .odswidget-select-dropdown.open .odswidget-select-dropdown-menu { + width: max-content; + min-width: 240px; + } +} + + +/*********** Filter date ************/ + +.filter-date { + display: flex; + flex-direction: column; + align-items: center; + margin: 13px 26px 32px 26px; +} + +.odswidget-date-range-slider { + width: 100%; +} + +.filter-date-button { + margin-left: 0; + margin-top: 13px; + white-space: nowrap; + text-decoration: underline; +} + +.filter-date-button:not(.filter-date-button-disabled):hover { + opacity: 0.65; +} + +.filter-date-button-disabled { + opacity: 0.5; + pointer-event: none; + text-decoration: none; +} + +@media screen and (min-width: 500px) { + .filter-date { + flex-direction: row; + } + .filter-date-button { + margin-left: 50px; + margin-top: 0; + } +} + + +/* date range slider style override */ + +.odswidget-date-range-slider .irs--flat .irs-from, +.odswidget-date-range-slider .irs--flat .irs-single, +.odswidget-date-range-slider .irs--flat .irs-to { + color: var(--text); + border: 1px solid #cbd2db; + border-radius: 2rem; + background: #FFFFFF; +} + +.odswidget-date-range-slider .irs--flat .irs-from:before, +.odswidget-date-range-slider .irs--flat .irs-single:before, +.odswidget-date-range-slider .irs--flat .irs-to:before { + border-top-color: var(--text); +} + +.odswidget-date-range-slider .irs--flat .irs-bar { + background-color: var(--highlight); +} + +.odswidget-date-range-slider .irs--flat .irs-handle>i:first-child { + background-color: var(--highlight); +} + +.odswidget-date-range-slider .irs--flat .irs-handle.state_hover>i:first-child, +.odswidget-date-range-slider .irs--flat .irs-handle:hover>i:first-child { + background-color: var(--text); +} + + +/* Content Card +========================================================================== */ + +.content-card { + background-color: var(--boxes-background); + border-radius: 4px; + height: 100%; + box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.13); +} + +.content-card-button { + color: var(--highlight); + border: 1px solid var(--highlight); + background: transparent; + display: inline-block; + text-align: center; + font-size: .867rem; + border-radius: 4px; + padding: .5rem 1.15rem; + text-decoration: none; + transition: all .2s; +} + +.content-card-button:hover { + background-color: var(--highlight); + color: #FFFFFF; + text-decoration: none; +} + + +/* KPI Card +========================================================================== */ + +@media screen and (min-width: 992px) { + .kpis-container { + display: flex; + justify-content: center; + } +} + +.kpi-card { + background-color: var(--boxes-background); + height: 100%; + padding: 30px; + border-radius: 4px; + box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.13); + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + text-align: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + text-align: center; +} + + +.kpi-title { + font-weight: normal; + color: var(--highlight); + font-size: 3.2rem; + margin-top: 0; + margin-bottom: 7px; + max-width: 100%; +} + +.kpi-unit { + font-size: 0.8em; + color: var(--secondary-color); +} + +/* Access-card +========================================================================== */ + +.col-md-4 { + padding-bottom: 20px +} + + +ul { + padding-left: 13px; +} + +.access-card { + border-radius: 10px; + background-color: #fff; + height: 100%; + background-color: #f6f8fb; + box-shadow: 0px 6px 13px rgba(0, 0, 0, 0.13); + transition: all 0.3s; + display: block; + color: var(--text); + margin-bottom: 10px; + display: flex; + flex-direction: column; + justify-content: space-between; + overflow: hidden; + +} + +.access-card:hover { + box-shadow: 0px 6px 13px rgba(0, 0, 0, 0.5); + text-decoration: none; + overflow: hidden; +} + +.access-card-img { + background-repeat: no-repeat; + background-size: cover; + background-position: center; + height: 250px; + position: relative; + border-radius: 10px 10px 0 0; +} + +.access-card-content { + padding: 26px 26px 10px 26px; +} + +.access-card-pretitle { + text-transform: uppercase; + color: #FFF; + background-color: var(--links) ; + border-radius: 3px; + font-weight: 400; + margin: 0px; + font-size: 12px; + position: absolute; + bottom: 15px; + left: 26px; + padding: 5px; +} + +.access-card-title { + font-weight: 400; + margin: 10px 0px; + font-size: 22px; + border-bottom: solid var(--highlight) 2px; + padding-bottom: 10px; +} + +.access-card-subtitle { + font-size: 16px; + font-weight: 400; + margin: 0px 0px 10px 0px; +} + +.access-card-content p { + margin: 5px 0px; +} + +.access-card-button { + display: flex; + justify-content: center; + margin: 0px 26px 26px; + padding-top: 0px; +} + +.access-card-button:hover { + opacity: 0.7; +} + +.access-card-button-content { + background-color: var(--highlight); + text-align: center; + color: #FFF; + border-radius: 24px; + padding: 10px 20px 10px 20px; + width: fit-content; +} diff --git a/content/page-templates/dataviz-gallery/2/html.inc b/content/page-templates/dataviz-gallery/2/html.inc new file mode 100644 index 000000000..dbd6f18f8 --- /dev/null +++ b/content/page-templates/dataviz-gallery/2/html.inc @@ -0,0 +1,149 @@ +
+ + +

Dataviz Gallery

+

+ On this page you will find the latest visualizations created on our portal. +

+
+ +
+ + + +
+ + +
+
+ +
+
+
+ Delete the filter + +
+
+
+ + + +
+ + +
+ +
+

+ {{ (agg[0].x || 0) | number : (kpi.precision || 0) }} + {{ kpi.unit }} +

+

+ Selected data visualisations +

+
+ +
+ + + +
+
+ +
+ +
+
+ +
+

{{item.fields.theme}}

+
+
+
+

{{ item.fields.title }}

+ +

Datasets in use :

+ + +
+
+ +
+
+
+
+ +
+
\ No newline at end of file diff --git a/content/page-templates/dataviz-gallery/2/index.md b/content/page-templates/dataviz-gallery/2/index.md new file mode 100644 index 000000000..9f2569ed7 --- /dev/null +++ b/content/page-templates/dataviz-gallery/2/index.md @@ -0,0 +1,6 @@ +--- +title: "English version" +date: 2023-03-17T12:00:00+02:00 +--- + +Please refer to [this tutorial](https://userclub.huwise.com/p/dataviz-gallery-tutorial-en/) to see how to implement this template on your portal. \ No newline at end of file diff --git a/content/page-templates/dataviz-gallery/2/schema.md b/content/page-templates/dataviz-gallery/2/schema.md new file mode 100644 index 000000000..91e6f1e74 --- /dev/null +++ b/content/page-templates/dataviz-gallery/2/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `dataviz-gallery-template-en` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/dataviz-gallery-template-en/table/) + +**Fields in use:** + +|theme|date|photo|title|iddataset|datavizlink| +|---|---|---|---|---|---| +|Household|2022-12-05|leicester.png|Leicester Household Survey 2021 results|leicester-household-survey-2021-results|https://leicester.huwise.com/explore/dataset/survey-of-leicester-all-themes-by-participant-demographics/custom/?disjunctive.question&disjunctive.demographic_category&disjunctive.demographic_characteristic&disjunctive.response| +|Waste management|2022-10-12|umea.png|Waste Collection City of Umeå|waste-collection-kolada-umea|https://opendata.umea.se/explore/dataset/insamling-av-avfall/custom/?disjunctive.kpi&sort=period#en| +|Mobility|2022-12-22|rheinkreiss.png|Bike counting stations evaluation|rhein-kreis-neuss-radzaehlstationen-auswertung|https://opendata.rhein-kreis-neuss.de/explore/dataset/eco-counter-data/dashboard/?disjunctive.counter_name| + diff --git a/content/page-templates/dataviz-gallery/index.md b/content/page-templates/dataviz-gallery/index.md new file mode 100644 index 000000000..afcbcf1d3 --- /dev/null +++ b/content/page-templates/dataviz-gallery/index.md @@ -0,0 +1,19 @@ +--- +title: "Dataviz gallery page" +description: "A page template to display data visualizations on your portal." +date: 2023-03-17T12:00:00+02:00 +tags: ["display"] +resources: +- src: '*/' + name: folder-:counter +--- + +This template is a mixture of the [Listing page template](/page-templates/listing-page/) and the [Access Cards component](/components/access-card/). It was created to offer a simple way of showcasing your data visualizations, custom views, maps and Studio pages on your portal. + +It offers more customization possibilities to advanced users who would like to add or remove items from this template, like additional filters, new card content or adding a date range slider. + +This ressource integrates the following widgets: + - `ods-select` to create the filters on text fields. [Resource available here](/widget-tricks/ods-select/) + - `ods-adv-analysis` to create KPI. [Resource available here](https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsAdvAnalysis) + - `ods-date-range-slider` to create a date selector. It is deactivated by default. [Resource available here](/widget-tricks/ods-date-range-slider/) + - `ods-results` to list the content of the records from the dataset. [Resource available here](/widget-tricks/ods-results/) \ No newline at end of file diff --git a/content/page-templates/fullscreen-map/1/html.inc b/content/page-templates/fullscreen-map/1/html.inc index 50d422f19..60b529852 100644 --- a/content/page-templates/fullscreen-map/1/html.inc +++ b/content/page-templates/fullscreen-map/1/html.inc @@ -36,7 +36,8 @@ {{ctx.nhits | number}} Air measurements

- +

Filters

@@ -81,7 +82,10 @@ - + @@ -91,8 +95,10 @@ - + @@ -101,7 +107,9 @@ - + @@ -110,7 +118,10 @@ - + @@ -130,7 +141,7 @@ ng-model="search['query']" ng-model-options="{ updateOn: 'keyup', debounce: { 'default': 500, 'blur': 0 }}" - ng-change="ctx.parameters['q'] = search['query'];" /> + ng-change="ctx.parameters['q'] = search['query'];"/>
PM10 Heatmap" ng-click="activemaplayer = 'PM10'; ctx.parameters['refine.measurements_parameter'] = 'PM10';"> - +
- +
+ color="#45423E" picto="ods-connected_temp" show-marker="false" display="auto" shape-opacity="0.5" + point-opacity="1" border-color="#FFFFFF" border-opacity="1" border-size="1" + border-pattern="solid" + caption="false" caption-picto-color="#E5E5E5" title="Air Quality measurements" size="5" + size-min="2" size-max="6" size-function="linear">
  • {{ record.fields.location }}
  • {{ record.fields.measurements_lastupdated | date:'medium'}}
  • -
  • {{ record.fields.measurements_parameter }}: {{ record.fields.measurements_value }} {{ record.fields.measurements_unit }}
  • +
  • {{ record.fields.measurements_parameter }}: {{ record.fields.measurements_value }} {{ record.fields.measurements_unit }} +
  • (source: {{ record.fields.measurements_sourcename }})
+ color-gradient="{'1':'#FFFFFF','0.3':'#FF0000','0.6':'#FFFF00'}" picto="ods-connected_temp" + show-marker="false" display="heatmap" radius="1" function="AVG" expression="measurements_value" + shape-opacity="0.5" point-opacity="1" border-color="#FFFFFF" border-opacity="1" border-size="1" + border-pattern="solid" + caption="false" caption-picto-color="#E5E5E5" title="PM10 Heatmap" + size-function="log"> + color-gradient="{'1':'#00FAFA','0.2':'#000000','0.4':'#183567','0.6':'#2E649E','0.8':'#17ADCB'}" + picto="ods-connected_temp" show-marker="false" display="heatmap" radius="1" function="AVG" + expression="measurements_value" shape-opacity="0.5" point-opacity="1" border-color="#FFFFFF" + border-opacity="1" border-size="1" border-pattern="solid" + caption="false" caption-picto-color="#E5E5E5" title="O3 Heatmap" + size-function="log"> diff --git a/content/page-templates/fullscreen-map/1/schema.md b/content/page-templates/fullscreen-map/1/schema.md new file mode 100644 index 000000000..7a318074f --- /dev/null +++ b/content/page-templates/fullscreen-map/1/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `openaq` [(See it on public domain)](https://public.huwise.com/explore/dataset/openaq/table/) + +**Fields in use:** + +|location|measurements_sourcename|measurements_parameter (numeric)|measurements_lastupdated (datetime)|measurements_value (numeric)|measurements_sourcename| +|---|---|---|---|---|---| +|Wien Belgradplatz|EEA Austria|NO2|2016-12-12T09:00:00+00:00|19.0|EEA Austria| +|Graz Don Bosco|EEA Austria|SO2|2016-12-12T09:00:00+00:00|5.0|EEA Austria| +|Targinie|Australia - Queensland|PM10|2021-12-13T10:00:00+00:00|16.2|Australia - Queensland| +|Rocklea|Australia - Queensland|PM10|2021-12-13T10:00:00+00:00|10.9|Australia - Queensland| + diff --git a/content/page-templates/home-1/1/css.inc b/content/page-templates/home-1/1/css.inc index fcda497b6..224d04130 100644 --- a/content/page-templates/home-1/1/css.inc +++ b/content/page-templates/home-1/1/css.inc @@ -358,34 +358,34 @@ * - Change the class name to something related to your project. */ .image-card-mobility { - background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.opendatasoft.com/assets/theme_image/mobility-bg.jpg'); - background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/mobility-bg.jpg'); - background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/mobility-bg.jpg'); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.huwise.com/assets/theme_image/mobility-bg.jpg'); + background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/mobility-bg.jpg'); + background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/mobility-bg.jpg'); } .image-card-garden { - background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.opendatasoft.com/assets/theme_image/garden-bg.jpg'); - background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/garden-bg.jpg'); - background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/garden-bg.jpg'); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.huwise.com/assets/theme_image/garden-bg.jpg'); + background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/garden-bg.jpg'); + background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/garden-bg.jpg'); } .image-card-gastronomy { - background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.opendatasoft.com/assets/theme_image/gastronomy-bg.jpg'); - background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/gastronomy-bg.jpg'); - background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/gastronomy-bg.jpg'); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.huwise.com/assets/theme_image/gastronomy-bg.jpg'); + background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/gastronomy-bg.jpg'); + background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/gastronomy-bg.jpg'); } .image-card-sport { - background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.opendatasoft.com/assets/theme_image/sport-bg.jpg'); - background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/sport-bg.jpg'); - background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/sport-bg.jpg'); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.huwise.com/assets/theme_image/sport-bg.jpg'); + background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/sport-bg.jpg'); + background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/sport-bg.jpg'); } .image-card-culture { - background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.opendatasoft.com/assets/theme_image/culture-bg.jpg'); - background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/culture-bg.jpg'); - background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/culture-bg.jpg'); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.huwise.com/assets/theme_image/culture-bg.jpg'); + background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/culture-bg.jpg'); + background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/culture-bg.jpg'); } .image-card-education { - background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.opendatasoft.com/assets/theme_image/education-bg.jpg'); - background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/education-bg.jpg'); - background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/education-bg.jpg'); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.huwise.com/assets/theme_image/education-bg.jpg'); + background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/education-bg.jpg'); + background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/education-bg.jpg'); } /* ========================================================================== Homepage Styles @@ -438,7 +438,7 @@ main { background-size: cover; /* You can replace the background-image by uploading an image to the portal assets and replacing the text in simple quotes below or use the URL of an image on the web */ - background-image: url('https://discovery.opendatasoft.com/assets/theme_image/header-bg.jpg'); + background-image: url('https://discovery.huwise.com/assets/theme_image/header-bg.jpg'); /* Position of the background-image on x y axis. Change these values to modify where the image is centered. */ diff --git a/content/page-templates/home-1/1/html.inc b/content/page-templates/home-1/1/html.inc index f7d9f0fab..29ab7bb2a 100644 --- a/content/page-templates/home-1/1/html.inc +++ b/content/page-templates/home-1/1/html.inc @@ -262,7 +262,7 @@
diff --git a/content/page-templates/home-1/index.md b/content/page-templates/home-1/index.md index bcaff5c86..592c031ab 100644 --- a/content/page-templates/home-1/index.md +++ b/content/page-templates/home-1/index.md @@ -1,6 +1,6 @@ --- title: "Home page 1" -description: "A home page for your Opendatasoft portal, alternative 1" +description: "A home page for your Huwise portal, alternative 1" tags: ["display", "navigation"] resources: - src: '*/' diff --git a/content/page-templates/home-2/1/css.inc b/content/page-templates/home-2/1/css.inc index 218eb6703..a2bd3aee3 100644 --- a/content/page-templates/home-2/1/css.inc +++ b/content/page-templates/home-2/1/css.inc @@ -358,34 +358,34 @@ * - Change the class name to something related to your project. */ .image-card-mobility { - background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.opendatasoft.com/assets/theme_image/mobility-bg.jpg'); - background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/mobility-bg.jpg'); - background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/mobility-bg.jpg'); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.huwise.com/assets/theme_image/mobility-bg.jpg'); + background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/mobility-bg.jpg'); + background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/mobility-bg.jpg'); } .image-card-garden { - background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.opendatasoft.com/assets/theme_image/garden-bg.jpg'); - background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/garden-bg.jpg'); - background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/garden-bg.jpg'); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.huwise.com/assets/theme_image/garden-bg.jpg'); + background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/garden-bg.jpg'); + background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/garden-bg.jpg'); } .image-card-gastronomy { - background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.opendatasoft.com/assets/theme_image/gastronomy-bg.jpg'); - background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/gastronomy-bg.jpg'); - background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/gastronomy-bg.jpg'); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.huwise.com/assets/theme_image/gastronomy-bg.jpg'); + background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/gastronomy-bg.jpg'); + background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/gastronomy-bg.jpg'); } .image-card-sport { - background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.opendatasoft.com/assets/theme_image/sport-bg.jpg'); - background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/sport-bg.jpg'); - background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/sport-bg.jpg'); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.huwise.com/assets/theme_image/sport-bg.jpg'); + background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/sport-bg.jpg'); + background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/sport-bg.jpg'); } .image-card-culture { - background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.opendatasoft.com/assets/theme_image/culture-bg.jpg'); - background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/culture-bg.jpg'); - background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/culture-bg.jpg'); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.huwise.com/assets/theme_image/culture-bg.jpg'); + background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/culture-bg.jpg'); + background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/culture-bg.jpg'); } .image-card-education { - background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.opendatasoft.com/assets/theme_image/education-bg.jpg'); - background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/education-bg.jpg'); - background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/education-bg.jpg'); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.huwise.com/assets/theme_image/education-bg.jpg'); + background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/education-bg.jpg'); + background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/education-bg.jpg'); } /* ========================================================================== Homepage Styles diff --git a/content/page-templates/home-2/index.md b/content/page-templates/home-2/index.md index 9800dbe7f..870b63c04 100644 --- a/content/page-templates/home-2/index.md +++ b/content/page-templates/home-2/index.md @@ -1,6 +1,6 @@ --- title: "Home page 2" -description: "An home page for your Opendatasoft portal, alternative 2" +description: "An home page for your Huwise portal, alternative 2" tags: ["display", "navigation"] resources: - src: '*/' diff --git a/content/page-templates/home-3/1/css.inc b/content/page-templates/home-3/1/css.inc index dc2c67e6a..9d71020f8 100644 --- a/content/page-templates/home-3/1/css.inc +++ b/content/page-templates/home-3/1/css.inc @@ -359,34 +359,34 @@ * - Change the class name to something related to your project. */ .image-card-mobility { - background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.opendatasoft.com/assets/theme_image/mobility-bg.jpg'); - background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/mobility-bg.jpg'); - background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/mobility-bg.jpg'); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.huwise.com/assets/theme_image/mobility-bg.jpg'); + background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/mobility-bg.jpg'); + background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/mobility-bg.jpg'); } .image-card-garden { - background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.opendatasoft.com/assets/theme_image/garden-bg.jpg'); - background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/garden-bg.jpg'); - background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/garden-bg.jpg'); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.huwise.com/assets/theme_image/garden-bg.jpg'); + background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/garden-bg.jpg'); + background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/garden-bg.jpg'); } .image-card-gastronomy { - background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.opendatasoft.com/assets/theme_image/gastronomy-bg.jpg'); - background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/gastronomy-bg.jpg'); - background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/gastronomy-bg.jpg'); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.huwise.com/assets/theme_image/gastronomy-bg.jpg'); + background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/gastronomy-bg.jpg'); + background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/gastronomy-bg.jpg'); } .image-card-sport { - background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.opendatasoft.com/assets/theme_image/sport-bg.jpg'); - background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/sport-bg.jpg'); - background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/sport-bg.jpg'); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.huwise.com/assets/theme_image/sport-bg.jpg'); + background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/sport-bg.jpg'); + background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/sport-bg.jpg'); } .image-card-culture { - background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.opendatasoft.com/assets/theme_image/culture-bg.jpg'); - background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/culture-bg.jpg'); - background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/culture-bg.jpg'); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.huwise.com/assets/theme_image/culture-bg.jpg'); + background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/culture-bg.jpg'); + background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/culture-bg.jpg'); } .image-card-education { - background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.opendatasoft.com/assets/theme_image/education-bg.jpg'); - background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/education-bg.jpg'); - background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.opendatasoft.com/assets/theme_image/education-bg.jpg'); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.5))), url('https://discovery.huwise.com/assets/theme_image/education-bg.jpg'); + background-image: -o-linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/education-bg.jpg'); + background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://discovery.huwise.com/assets/theme_image/education-bg.jpg'); } /* ========================================================================== Homepage Styles @@ -460,7 +460,7 @@ main { background-size: cover; /* You can replace the background-image by uploading an image to the portal assets and replacing the text in simple quotes below or use the URL of an image on the web */ - background-image: url('https://discovery.opendatasoft.com/assets/theme_image/header-bg.jpg'); + background-image: url('https://discovery.huwise.com/assets/theme_image/header-bg.jpg'); /* Position of the background-image on x y axis. Change these values to modify where the image is centered. */ diff --git a/content/page-templates/home-3/1/html.inc b/content/page-templates/home-3/1/html.inc index 76a531160..767e266d6 100644 --- a/content/page-templates/home-3/1/html.inc +++ b/content/page-templates/home-3/1/html.inc @@ -194,7 +194,7 @@ diff --git a/content/page-templates/home-3/index.md b/content/page-templates/home-3/index.md index 30a84559f..133b5a46f 100644 --- a/content/page-templates/home-3/index.md +++ b/content/page-templates/home-3/index.md @@ -1,6 +1,6 @@ --- title: "Home page 3" -description: "A home page for your Opendatasoft portal, alternative 3" +description: "A home page for your Huwise portal, alternative 3" tags: ["display", "navigation"] resources: - src: '*/' diff --git a/content/page-templates/home-4-access-cards/1/css.inc b/content/page-templates/home-4-access-cards/1/css.inc new file mode 100644 index 000000000..0d1f08a8b --- /dev/null +++ b/content/page-templates/home-4-access-cards/1/css.inc @@ -0,0 +1,688 @@ +/* ========================================================================== + Cards + ========================================================================== */ +/** + * Styling for the different types of cards: + * - Colored Card + * - Content card + * - Search box card + * - KPI card + * - Image card + */ +/* Variables & Shared classes + ========================================================================== */ +:root { + --secondary-color: #142E7B; +} + +.text-center { + text-align: center; +} + +.centered-card { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; +} + +/* Colored Card (Basic card) + ========================================================================== */ +.color-card { + background-color: var(--links); /* Background color for IE */ + background-color: var(--secondary-color); + color: #FFFFFF; + text-align: center; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + padding: 39px; + border-radius: 4px; + margin-bottom: 20px; + height: 100%; + text-decoration: none; + -webkit-transition: all .2s; + -o-transition: all .2s; + transition: all .2s; +} + +.color-card:hover, +.color-card:focus { + text-decoration: none; + -webkit-transform: scale(1.02); + -ms-transform: scale(1.02); + transform: scale(1.02); + -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, .1); + box-shadow: 0 0 10px 0 rgba(0, 0, 0, .1); +} + +.color-card-icon { + font-size: 2rem; + margin-bottom: 13px; +} + +.color-card-picto { + width: auto; + height: 56px; + margin-bottom: 13px; + max-width: 100%; +} + +.color-card-title { + color: inherit; + font-size: 1.2rem; + line-height: 1.5; + font-weight: normal; + margin-top: 0; + margin-bottom: 0; + max-width: 100%; +} + +.color-card-description { + font-size: 1rem; + line-height: 1.5; + font-weight: normal; + color: inherit; + margin-top: 13px; + margin-bottom: 26px; + max-width: 100%; +} + +.color-card-link { + color: inherit; + font-weight: bold; + margin-top: auto; + max-width: 100%; +} + +/* Content Card + ========================================================================== */ +.content-card { + background-color: var(--boxes-background); + padding: 26px; + border-radius: 4px; + margin-bottom: 20px; + height: 100%; +} + +.content-card-title { + color: var(--titles); + font-size: 1.2rem; + line-height: 1.5; + font-weight: normal; + margin-top: 0; + margin-bottom: 13px; + max-width: 100%; +} + +.content-card-description { + color: var(--text); + font-size: 1rem; + line-height: 1.5; + font-weight: normal; + margin-top: 0; + margin-bottom: 26px; + max-width: 100%; +} + +.content-card-icon { + color: var(--highlight); + font-size: 2rem; + margin-bottom: 13px; + max-width: 100%; +} + +.content-card-link { + color: var(--links); + font-weight: bold; + -webkit-transition: all .2s; + -o-transition: all .2s; + transition: all .2s; + opacity: 1; + max-width: 100%; +} + +.content-card-link:hover { + opacity: .7; + text-decoration: none; +} + +.content-card-button { + color: var(--highlight); /* Color for IE */ + color: var(--secondary-color); + border: 1px solid var(--highlight); /* Border color for IE because it doesn't support CSS variables. */ + border: 1px solid var(--secondary-color); + background: transparent; + display: inline-block; + text-align: center; + font-size: .867rem; + border-radius: 4px; + padding: .5rem 1.15rem; + text-decoration: none; + -webkit-transition: all .2s; + -o-transition: all .2s; + transition: all .2s; +} + +.content-card-button:hover { + background-color: var(--highlight); /* Color for IE */ + background-color: var(--secondary-color); + color: #FFFFFF; + text-decoration: none; +} + +/* Search Box Card + ========================================================================== */ +.search-card { + background-color: rgba(0, 0, 0, .1); + padding: 39px; + border-radius: 4px; + margin-bottom: 20px; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-align: stretch; + -ms-flex-align: stretch; + align-items: stretch; + text-align: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + text-align: center; +} + +.search-card-container { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + width: 100%; + max-width: 500px; + margin: 0 auto; +} + +.search-card-title { + color: var(--titles); + font-size: 1.2rem; + line-height: 1.5; + font-weight: normal; +} + +.search-card-searchbox { + margin-bottom: 0; + -webkit-box-flex: 1; + -ms-flex: 1 1 auto; + flex: 1 1 auto; +} + +.search-card-searchbox .odswidget-searchbox__box { + font-size: 1rem; + display: block; + width: 100%; + max-width: 500px; + padding: 8px 13px; + border-radius: 4px 0 0 4px; + border: none; + margin: 0 auto; +} + +.search-card-submit-button { + border: none; + background-color: var(--highlight); + color: #FFFFFF; + font-size: .866rem; + font-weight: bold; + text-align: center; + padding: 8px 12px; + border-radius: 0 4px 4px 0; + -webkit-transition: opacity .2s; + -o-transition: opacity .2s; + transition: opacity .2s; +} + +.search-card-submit-button:hover { + text-decoration: none; + opacity: .7; +} + +/* KPI Card + ========================================================================== */ +.kpi-card { + background-color: var(--boxes-background); + height: 100%; + padding: 39px; + border-radius: 4px; + margin-bottom: 20px; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + text-align: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + text-align: center; +} + +.kpi-icon { + color: var(--highlight); + color: var(--secondary-color); + font-size: 4rem; + margin-top: 0; + margin-bottom: 13px; + max-width: 100%; +} + +.kpi-title { + font-weight: normal; + color: var(--highlight); + font-size: 3.2rem; + margin-top: 0; + margin-bottom: 13px; + max-width: 100%; +} + +.kpi-description { + color: var(--text); + font-size: 1rem; + line-height: 1.5; + font-weight: normal; + margin-top: 0; + margin-bottom: 0; + max-width: 100%; +} + +/* Image Card + ========================================================================== */ +.image-card { + background-color: rgba(0, 0, 0, .1); + background-color: var(--secondary-color); + color: #FFFFFF; + padding: 39px; + border-radius: 4px; + margin-bottom: 20px; + min-height: 300px; + height: 100%; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-align: stretch; + -ms-flex-align: stretch; + align-items: stretch; + text-align: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + background-position: center center; + background-repeat: no-repeat; + background-size: cover; + -webkit-transition: all .2s; + -o-transition: all .2s; + transition: all .2s; + text-decoration: none; +} + +.image-card:hover, +.image-card:focus { + text-decoration: none; + -webkit-transform: scale(1.02); + -ms-transform: scale(1.02); + transform: scale(1.02); + -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, .1); + box-shadow: 0 0 10px 0 rgba(0, 0, 0, .1); +} + +.image-title { + color: inherit; + font-size: 1.733rem; + line-height: 2.26; + font-weight: bold; + margin-top: 0; + margin-bottom: 13px; +} + +.image-description { + color: inherit; + font-size: 1rem; + line-height: 1.5; + font-weight: bold; + margin: 0; +} + +/* ========================================================================== +Access Card Container + ========================================================================== */ +.access-cards-container { + margin-bottom: 20px; + display: grid; + grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); + gap: 40px; +} + +/* ========================================================================== +Access Cards + ========================================================================== */ + +.access-card-bg { + background-repeat: no-repeat; + background-size: cover; + border-radius: 4px; + box-shadow: 0px 6px 13px rgba(0, 0, 0, 0.13); + transition: all 0.3s; + color: var(--text); + display: flex; + height: 100%; + justify-content: center; + margin-bottom: 20px; +} + +.access-card-bg:hover { + box-shadow: 0px 8px 15px rgba(0, 0, 0, 0.5); + text-decoration: none; +} + +.access-card { + border-radius: 10px; + background-color: #fff; + margin: 200px 26px 26px; + padding: 26px; + width: 100%; + + display: flex; + flex-direction: column; + justify-content: space-between; +} + +.access-card-pretitle { + text-transform: uppercase; + color: var(--secondary-color); + opacity: 0.7; + font-weight: 400; + margin: 0px; + font-size: 12px; +} + +.access-card-title { + font-weight: 400; + margin: 10px 0px; + font-size: 22px; +} + +.access-card-subtitle { + font-size: 16px; + font-weight: 400; + margin: 0px 0px 10px 0px; +} + +.access-card-description { + background-color: var(--boxes-background); + padding: 10px; +} + +.access-card-description h4 { + font-weight: 700; + margin: 5px 0px 0px 0px; +} + +.access-card-description p { + margin: 5px 0px; +} + +.access-card-button { + color: var(--secondary-color); + font-size: 16px; + font-weight: 700; + display: flex; + justify-content: right; + align-items: center; + width: 100%; + padding: 26px 0px 0px 26px; +} + +.access-card-button i { + padding-left: 5px; + transition: all 0.3s; +} + +.access-card:hover .access-card-button i { + transform: translateX(5px); +} + + +/* ========================================================================== + Homepage Styles + ========================================================================== */ +/* +The CSS rules below will only be applied to the HTML used in the HTML tab +and will not be applied to other pages of your platform. +The 'home-' prefix is used for classes that belong to this page only. This makes it easier +to understand which classes are used here and which ones are in the Platform Theme Stylesheet. +*/ +/* Shared Styles +========================================================================== */ +/* +These styles are used by different elements in the home page +*/ +main { + /* Overrides an existing CSS rule so the banner image can be "edge-to-edge" */ + margin: 0; +} + +@media screen and (min-width: 992px) { + .row-equal-height { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + margin-bottom: 20px; + } + + /* Fix for early content wrapping in Safari*/ + .row-equal-height:before, + .row-equal-height:after { + content: normal; + } +} + +.home-subtitle { + color: var(--titles); + font-size: 1.2rem; + line-height: 1.5; + font-weight: normal; + margin-bottom: 20px; +} + +/* Header Image +========================================================================== */ +.home-header { + margin-bottom: 20px; + /* Change this value to make the background image taller or smaller */ + height: 350px; + /* Background color before image loads */ + background-color: var(--highlight); + background-size: cover; + /* You can replace the background-image by uploading an image to the portal assets + and replacing the text in simple quotes below or use the URL of an image on the web */ + background-image: url('https://discovery.huwise.com/assets/theme_image/header-bg.jpg'); + /* Position of the background-image on x y axis. Change these values to + modify where the image is centered. + */ + background-position: center center; +} + +/* Home welcome card +========================================================================== */ +.welcome-card { + background-color: var(--highlight); + color: #FFFFFF; + margin-top: -90px; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-align: start; + -ms-flex-align: start; + align-items: flex-start; + -webkit-box-pack: start; + -ms-flex-pack: start; + justify-content: flex-start; + padding: 39px; + border-radius: 4px; + margin-bottom: 20px; + height: 100%; +} + +.welcome-card-title { + color: inherit; + font-size: 2.36rem; + line-height: 1.5; + font-weight: bold; + margin-top: 0; + margin-bottom: 13px; + max-width: 100%; +} + +.welcome-card-description { + font-size: 1rem; + line-height: 1.5; + font-weight: normal; + color: inherit; + margin-top: 13px; + margin-bottom: 26px; + max-width: 100%; +} + +@media screen and (min-width: 992px) { + .welcome-card-description { + margin-bottom: 0; + } +} + +.welcome-card-link { + color: inherit; + font-weight: bold; + margin-top: auto; + -webkit-transition: all .2s; + -o-transition: all .2s; + transition: all .2s; + opacity: 1; + max-width: 100% +} + +.welcome-card-link .fa { + position: relative; + left: 0; + -webkit-transition: all .2s; + -o-transition: all .2s; + transition: all .2s; +} + +.welcome-card-link:hover { + opacity: .7; + text-decoration: none; +} + +.welcome-card-link:hover .fa { + left: 3px; +} + +@media screen and (min-width: 992px) { + .welcome-card { + height: 130%; + position: relative; + top: -30%; + margin-top: 0; + margin-bottom: 0; + } +} + +/* Most Popular / Last Updated datasets section +========================================================================== */ +.odswidget-most-popular-datasets__datasets, +.odswidget-last-datasets-feed__datasets { + margin-top: 0; + margin-bottom: 20px; +} + +.odswidget-most-popular-datasets__dataset, +.odswidget-last-datasets-feed__dataset { + padding: 13px; + background-color: #FFFFFF; + border-radius: 4px; + margin-bottom: 13px; +} + +.odswidget-most-popular-datasets__theme-picto, +.odswidget-last-datasets-feed__theme-picto { + margin-top: 0; +} + +.odswidget-most-popular-datasets__dataset-details, +.odswidget-last-datasets-feed__dataset-details { + margin-left: 46px; +} + +.odswidget-most-popular-datasets__dataset-details-title, +.odswidget-last-datasets-feed__dataset-details-title { + font-size: 1rem; +} + +.odswidget-most-popular-datasets__dataset-details-title a, +.odswidget-last-datasets-feed__dataset-details-title a { + color: var(--titles); +} + +.odswidget-most-popular-datasets__dataset-details-count, +.odswidget-last-datasets-feed__dataset-details-modified { + opacity: .8; + border-bottom: none; + cursor: default; +} + +.odswidget-most-popular-datasets__dataset-details-count .fa, +.odswidget-last-datasets-feed__dataset-details-modified .fa { + display: none; +} + +.twitter-timeline-container { + margin-bottom: 20px; +} diff --git a/content/page-templates/home-4-access-cards/1/html.inc b/content/page-templates/home-4-access-cards/1/html.inc new file mode 100644 index 000000000..6eca7b858 --- /dev/null +++ b/content/page-templates/home-4-access-cards/1/html.inc @@ -0,0 +1,174 @@ + + + +
+ +
+
+
+
+

+ Welcome to +
+ Portal Name +

+

+ Lorem ipsum dolor amet kombucha try-hard biodiesel XOXO scenester + subway tile. Etsy selvage shaman master cleanse activated charcoal. + Celiac hella wayfarers glossier palo santo pork belly. Vape twee + stumptown normcore. Occupy fingerstache listicle etsy. +

+ + Explore catalog + + +
+
+
+ +
+ +

5,983

+

+ Dignissim suspendisse in est ante in nibh nisl tincidunt eget +

+
+
+
+ +
+ +

18.3k

+

+ Quam vulputate dignissim suspendisse in est ante in nibh. Faucibus + nisl tincidunt eget nullam non nisi est sit amet +

+
+
+
+
+ +
+ +
+

What data are you looking for?

+
+ + + +
+
+
+
+ +
+
+
+
+ +

Most popular data

+ +
+
+ +

Last updated data

+ +
+
+ +

On twitter

+ +
+
+
+
\ No newline at end of file diff --git a/content/page-templates/home-4-access-cards/1/index.md b/content/page-templates/home-4-access-cards/1/index.md new file mode 100644 index 000000000..be3f17ee3 --- /dev/null +++ b/content/page-templates/home-4-access-cards/1/index.md @@ -0,0 +1,3 @@ +--- +title: "Preview" +--- diff --git a/content/page-templates/home-4-access-cards/index.md b/content/page-templates/home-4-access-cards/index.md new file mode 100644 index 000000000..8f985f057 --- /dev/null +++ b/content/page-templates/home-4-access-cards/index.md @@ -0,0 +1,17 @@ +--- +title: "Home page 4 with access cards" +description: "A home page for your Huwise portal, with access cards" +tags: ["display", "navigation"] +resources: +- src: '*/' + name: folder-:counter +--- + +This home page integrates the first version of the [component Access cards](https://codelibrary.huwise.com/components/access-card/) to highlight redirections to other pages. +The access cards are inserted in a grid container, so that all the cards have the same height. + +**Tips** +- You can use another version of the access cards by replacing the HTML between the comments `` and `` and the CSS between `/*==== Access Cards ====*/` and `/*==== Homepage Styles ====*/` +- You can change the background image of the access cards in the HTML file +- You can change the arrow icon of the access card with another icon from [the Fontawesome Library](https://fontawesome.com/v4.7.0/icons/) + diff --git a/content/page-templates/listing-page/1/css.inc b/content/page-templates/listing-page/1/css.inc new file mode 100644 index 000000000..8c2e92ae9 --- /dev/null +++ b/content/page-templates/listing-page/1/css.inc @@ -0,0 +1,405 @@ +/* General Layout +========================================================================== */ + +:root { + --secondary-color: black; +} + +main { + margin: 6rem 0 3em 0; +} + +@media screen and (min-width: 992px) { + .row-equal-height { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + margin-bottom: 20px; + } + /* Fix for early content wrapping in Safari*/ + .row-equal-height:before, + .row-equal-height:after { + content: normal; + } +} + +.page-title { + font-size: 3rem; + font-weight: bold; + margin-top: 0; + margin-bottom: 1rem; +} + +.page-subtitle { + font-size: 1.2rem; + line-height: 2; + margin-top: 0; + margin-bottom: 3rem; +} + +.margin-bottom-20 { + margin-bottom: 20px; +} + + +/* Search Module +========================================================================== */ + +.search-module-container { + padding: 26px; + margin-bottom: 20px; +} + +.search-module { + display: flex; + align-items: stretch; + border-bottom: 1px solid #dee5ef; + margin-bottom: 13px; + transition: all .2s; +} + +.search-module:hover, +.search-module:focus-within { + border-bottom-color: var(--links); +} + +.search-module-icon { + color: #898d92; + margin-right: 8px; + align-self: center; +} + +.search-module-input { + background-color: transparent; + width: 100%; + outline: none; + border: none; + padding: 12px 0; + transition: all .2s; + color: var(--text); +} + +.search-module-input::placeholder { + transition: all .2s; +} + +.search-module-clear { + color: #898d92; + font-size: 1rem; + background: transparent; + border: none; + margin: 0; + outline: none; + padding: 0 0 0 12px; + transition: all .2s; +} + +.search-module-clear:hover { + opacity: .65; +} + +.search-module:hover .search-module-icon, +.search-module:focus-within .search-module-icon, +.search-module:hover .search-module-input::placeholder, +.search-module:focus-within .search-module-input::placeholder { + color: var(--links) +} + + +/* Filters +========================================================================== */ + +.filter-list { + display: flex; + flex-wrap: wrap; + position: relative; +} + +.filter-list>* { + margin: 0 0 10px; + width: 100%; +} + +.odswidget-select .odswidget-select-dropdown.open .odswidget-select-dropdown-menu { + width: 100% +} + +.clear-filters { + display: flex; + align-items: center; + justify-content: center; +} + +.clear-filters-button:hover { + opacity: 0.65; +} + +.odswidget-select, +.odswidget-select .odswidget-select-dropdown { + width: 100%; +} + +@media screen and (min-width: 500px) { + .filter-list>* { + margin: 0 10px 10px 0; + width: inherit; + } + .odswidget-select .odswidget-select-dropdown.open .odswidget-select-dropdown-menu { + width: max-content; + min-width: 240px; + } +} + + +/*********** Filter date ************/ + +.filter-date { + display: flex; + flex-direction: column; + align-items: center; + margin: 13px 26px 32px 26px; +} + +.odswidget-date-range-slider { + width: 100%; +} + +.filter-date-button { + margin-left: 0; + margin-top: 13px; + white-space: nowrap; + text-decoration: underline; +} + +.filter-date-button:not(.filter-date-button-disabled):hover { + opacity: 0.65; +} + +.filter-date-button-disabled { + opacity: 0.5; + pointer-event: none; + text-decoration: none; +} + +@media screen and (min-width: 500px) { + .filter-date { + flex-direction: row; + } + .filter-date-button { + margin-left: 50px; + margin-top: 0; + } +} + + +/* date range slider style override */ + +.odswidget-date-range-slider .irs--flat .irs-from, +.odswidget-date-range-slider .irs--flat .irs-single, +.odswidget-date-range-slider .irs--flat .irs-to { + color: var(--text); + border: 1px solid #cbd2db; + border-radius: 2rem; + background: #FFFFFF; +} + +.odswidget-date-range-slider .irs--flat .irs-from:before, +.odswidget-date-range-slider .irs--flat .irs-single:before, +.odswidget-date-range-slider .irs--flat .irs-to:before { + border-top-color: var(--text); +} + +.odswidget-date-range-slider .irs--flat .irs-bar { + background-color: var(--highlight); +} + +.odswidget-date-range-slider .irs--flat .irs-handle>i:first-child { + background-color: var(--highlight); +} + +.odswidget-date-range-slider .irs--flat .irs-handle.state_hover>i:first-child, +.odswidget-date-range-slider .irs--flat .irs-handle:hover>i:first-child { + background-color: var(--text); +} + + +/* Content Card +========================================================================== */ + +.content-card { + background-color: var(--boxes-background); + border-radius: 4px; + height: 100%; + box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.13); +} + +.content-card-img { + display: block; + height: 110px; + background-position: center; + background-size: cover; + background-repeat: no-repeat; +} + +.content-card-body { + padding: 26px; + flex: 1 1 auto; +} + +.content-card-title { + color: var(--titles); + font-size: 1.2rem; + line-height: 1.5; + font-weight: normal; + margin-top: 0; + margin-bottom: 13px; + max-width: 100%; +} + +.content-card-description { + color: var(--text); + font-size: 1rem; + line-height: 1.5; + font-weight: normal; + margin-top: 0; + margin-bottom: 26px; + max-width: 100%; +} + +.content-card-fields dt { + font-size: 0.8rem; + opacity: 0.8; +} + +.content-card-fields dd { + margin-left: 0; +} + +.content-card-icon { + color: var(--highlight); + font-size: 2rem; + margin-bottom: 13px; + max-width: 100%; +} + +.content-card-link { + color: var(--links); + font-weight: bold; + transition: all .2s; + opacity: 1; + max-width: 100%; +} + +.content-card-link:hover { + opacity: .7; + text-decoration: none; +} + +.content-card-button { + color: var(--highlight); + border: 1px solid var(--highlight); + background: transparent; + display: inline-block; + text-align: center; + font-size: .867rem; + border-radius: 4px; + padding: .5rem 1.15rem; + text-decoration: none; + transition: all .2s; +} + +.content-card-button:hover { + background-color: var(--highlight); + color: #FFFFFF; + text-decoration: none; +} + + +/* KPI Card +========================================================================== */ + +@media screen and (min-width: 992px) { + .kpis-container { + display: flex; + justify-content: center; + } +} + +.kpi-card { + background-color: var(--boxes-background); + height: 100%; + padding: 39px; + border-radius: 4px; + box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.13); + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + text-align: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + text-align: center; +} + +.kpi-icon { + color: var(--highlight); + color: var(--secondary-color); + font-size: 4rem; + margin-top: 0; + margin-bottom: 13px; + max-width: 100%; +} + +.kpi-title { + font-weight: normal; + color: var(--highlight); + font-size: 3.2rem; + margin-top: 0; + margin-bottom: 13px; + max-width: 100%; +} + +.kpi-unit { + font-size: 0.8em; + color: var(--secondary-color); +} + +.kpi-description { + color: var(--text); + font-size: 1rem; + line-height: 1.5; + font-weight: normal; + margin-top: 0; + margin-bottom: 0; + max-width: 100%; +} + + +/** Specific override for custom views **/ + +@media screen and (min-width: 1408px) { + .ods-dataset-visualization .ods-tabs__pane .container:not(.is-max-desktop):not(.is-max-widescreen) { + max-width: 100%; + } +} + +@media screen and (min-width: 1216px) { + .ods-dataset-visualization .ods-tabs__pane .container:not(.is-max-desktop) { + max-width: 100%; + } +} + +@media screen and (min-width: 1024px) { + .ods-dataset-visualization .ods-tabs__pane .container { + max-width: 100%; + } +} \ No newline at end of file diff --git a/content/page-templates/listing-page/1/html.inc b/content/page-templates/listing-page/1/html.inc new file mode 100644 index 000000000..ce9f90ab3 --- /dev/null +++ b/content/page-templates/listing-page/1/html.inc @@ -0,0 +1,155 @@ +
+ +

Rappel conso

+

+ Le jeu de données du site rappel-conso comprend la liste des fiches de rappels publiées sur le site + rappel-conso. +

+
+ +
+ + + +
+ + +
+
+ +
+
+ +
+
+ +
+ +
+
+ Supprimer tous les filtres + +
+
+
+ + +
+ + + + {{ bounds['min'] = dateminmax.results[0].x.year + '-' + (10 > + dateminmax.results[0].x.month?'0':'') + dateminmax.results[0].x.month + '-' + + (10 > dateminmax.results[0].x.day?'0':'') + dateminmax.results[0].x.day; + bounds['max'] = dateminmax.results[dateminmax.results.length-1].x.year + '-' + + (10 > dateminmax.results[dateminmax.results.length-1].x.month?'0':'') + + dateminmax.results[dateminmax.results.length-1].x.month + '-' + (10 > + dateminmax.results[dateminmax.results.length-1].x.day?'0':'') + + dateminmax.results[dateminmax.results.length-1].x.day; ''}} + + + + + +
+ Toute la période +
+
+
+ + +
+
+ +
+ +

{{ (total || 0) | number : 0 }}

+

Nombre de rappels

+
+
+
+ + +
+
+
+
+
+
+
+

+ {{ item.fields.noms_des_modeles_ou_references }} +

+
+
+
Motif du rappel
+
{{item.fields.motif_du_rappel}}
+
Risques
+
{{item.fields.risques_encourus_par_le_consommateur}}
+
Marque
+
{{item.fields.nom_de_la_marque_du_produit}}
+
Catégorie
+
{{item.fields.categorie_de_produit}}
+
Distributeur
+
{{item.fields.distributeurs}}
+
Nature juridique du rappel
+
{{item.fields.nature_juridique_du_rappel}}
+
Date de publication de la fiche
+
+ {{item.fields.date_de_publication_de_la_fiche | moment : 'DD/MM/YYYY'}} +
+
+
+ +
+
+
+
+
+ Voir les données +
+
\ No newline at end of file diff --git a/content/page-templates/listing-page/1/index.md b/content/page-templates/listing-page/1/index.md new file mode 100644 index 000000000..32bbe8724 --- /dev/null +++ b/content/page-templates/listing-page/1/index.md @@ -0,0 +1,12 @@ +--- +title: "Listing page" +date: 2022-01-05T12:00:00+02:00 +--- + +This template is an alternative to the automated [Listing Generator](https://codelibrary.huwise.com/generators/listing-generator/). It offers more customization possibilities to advanced users who would like to add or remove items to this template, or reuse some blocks on another page. + +> This ressource integrates the following widgets: +> - `ods-select` to create the filters on text fields. [Resource available here](https://codelibrary.huwise.com/widget-tricks/ods-select/) +> - `ods-date-range-slider` to create the date selector. [Resource available here](https://codelibrary.huwise.com/widget-tricks/ods-date-range-slider/) +> - `ods-aggregation` to create KPI. [Resource available here](https://codelibrary.huwise.com/widget-tricks/ods-aggregation/) +> - `ods-results` to list the content of the records from the dataset. [Resource available here](https://codelibrary.huwise.com/widget-tricks/ods-results/) \ No newline at end of file diff --git a/content/page-templates/listing-page/1/schema.md b/content/page-templates/listing-page/1/schema.md new file mode 100644 index 000000000..9d0ff95e0 --- /dev/null +++ b/content/page-templates/listing-page/1/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `rappel-conso` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/rappel-conso/table/) + +**Fields in use:** + +|nature_juridique_du_rappel|categorie_de_produit|distributeurs|date_de_publication_de_la_fiche|noms_des_modeles_ou_references|motif_du_rappel|risques_encourus_par_le_consommateur|nom_de_la_marque_du_produit|lien_vers_l_affichette_pdf| +|---|---|---|---|---|---|---|---|---| +|Volontaire|Alimentation|Magasins BIO et détaillants, pharmacies et sites internet|2021-04-01|MORINGA MADIA BIO|Présence possible d'oxyde d'éthylène.|Autres contaminants chimiques|MADIA BIO|http://rappel.conso.gouv.fr/affichettePDF/123/Interne| +|Volontaire|Bébés-Enfants (hors alimentaire)|Voir liste magasins.|2021-04-01|Jeu de bowling, référence 167924|Rappel préventif : Risque de détachement de la partie supérieure des quilles pouvant occasionner un étouffement.|Arrêt respiratoire|BeToys|http://rappel.conso.gouv.fr/affichettePDF/130/Interne| +|Imposé par l’administration|Alimentation|Silva alimentation|2021-04-01|Thé minceur Emagrecimento Dom duarte|Plantes dangereuses pour la santé|Additifs et arômes dépassement des seuils de sécurité Présence de substance interdite|Dom Duarte|http://rappel.conso.gouv.fr/affichettePDF/193/Interne| +|Imposé par l’administration|Alimentation|Leclerc Geispolsheim, Leclerc express Illkirch et Leclerc express Holtzheim|2021-04-01|Pains et fougasses maison (cf liste)|Risque de présence éventuelle de corps étrangers|Inertes (verre, métal, plastique, papier, textile…)|Sans marque|http://rappel.conso.gouv.fr/affichettePDF/247/Interne| + diff --git a/content/page-templates/listing-page/2/css.inc b/content/page-templates/listing-page/2/css.inc new file mode 100644 index 000000000..aec1a934e --- /dev/null +++ b/content/page-templates/listing-page/2/css.inc @@ -0,0 +1,366 @@ +/* General Layout +========================================================================== */ + +main.main--page { + margin: 0; +} + +/* Body text */ +p { + text-align: justify; + margin-top: 0; + margin-bottom: 1.5rem; +} + +ul { + list-style: none; + padding-left: 0; +} + +@media screen and (min-width: 992px) { + .row-equal-height { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + margin-bottom: 20px; + } + /* Fix for early content wrapping in Safari*/ + .row-equal-height:before, + .row-equal-height:after { + content: normal; + } +} + +.margin-bottom-20 { + margin-bottom: 20px; +} + +.page-section { + margin-top: 2rem; + margin-bottom: 6rem; +} + +.section-title { + font-size: 2.2rem; + font-weight: 400; + color: #FFF; + background-color: var(--highlight); + text-align: center; + padding: 10px; + margin-top: 1.5rem; + margin-bottom: 1.5rem; +} + +/* Header +========================================================================== */ + +.page-header { + background-color: var(--highlight); + min-height: 180px; /* Change the height of the image here by increasing or decreasing the pixels. */ + /* Properties of the title located within the image banner */ + display: flex; + justify-content: center; + align-items: flex-end; + margin-bottom: 40px; + background-size: cover; + background-repeat: no-repeat; + background-position: center center; + background-image: url(''); +} + +.page-title { + color: var(--highlight); + text-align: center; + background-color: var(--page-background); + position: relative; + vertical-align: bottom; + margin: 0; + font-weight: 400; + font-size: 2.5rem; + padding: 15px 20px 10px 20px; + border-radius: 7px 7px 0px 0px; +} + +.page-subtitle { + font-weight: 400; + margin-top: 0; + margin-bottom: 20px; + font-size: 1.14rem; +} + + +/* Search Module +========================================================================== */ + +.search-module { + display: flex; + align-items: stretch; + border-bottom: 1px solid #dee5ef; + margin-bottom: 13px; + transition: all .2s; +} + +.search-module:hover, +.search-module:focus-within { + border-bottom-color: var(--links); +} + +.search-module-icon { + color: #898d92; + margin-right: 8px; + align-self: center; +} + +.search-module-input { + background-color: transparent; + width: 100%; + outline: none; + border: none; + padding: 12px 0; + transition: all .2s; + color: var(--text); +} + +.search-module-input::placeholder { + transition: all .2s; +} + +.search-module-clear { + color: #898d92; + font-size: 1rem; + background: transparent; + border: none; + margin: 0; + outline: none; + padding: 0 0 0 12px; + transition: all .2s; +} + +.search-module-clear:hover { + opacity: .65; +} + +.search-module:hover .search-module-icon, +.search-module:focus-within .search-module-icon, +.search-module:hover .search-module-input::placeholder, +.search-module:focus-within .search-module-input::placeholder { + color: var(--links) +} + + +/* Filters +========================================================================== */ + +.filter-list { + display: flex; + flex-wrap: wrap; + position: relative; +} +.filter-list > * { + margin: 0 0 10px; + width: 100%; +} +.odswidget-select .odswidget-select-dropdown.open .odswidget-select-dropdown-menu { + width: 100% +} +.clear-filters { + display: flex; + align-items: center; + justify-content: center; +} +.clear-filters-button:hover { + opacity: 0.65; +} +.odswidget-select, +.odswidget-select .odswidget-select-dropdown { + width: 100%; +} +@media screen and (min-width: 500px) { + .filter-list > * { + margin: 0 10px 10px 0; + width: inherit; + } + .odswidget-select .odswidget-select-dropdown.open .odswidget-select-dropdown-menu { + width: max-content; + min-width: 240px; + } +} + + +/* Content Card +========================================================================== */ + +.content-card { + background-color: var(--boxes-background); + border-radius: 4px; + height: 100%; + padding: 26px; + box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.13); + margin-bottom: 10px; +} + +.content-card-description { + color: var(--text); + font-size: 1rem; + line-height: 1.5; + font-weight: normal; + margin-top: 0; + margin-bottom: 26px; + max-width: 100%; +} + +.content-card-button { + color: var(--highlight); + border: 1px solid var(--highlight); + background: transparent; + display: inline-block; + text-align: center; + font-size: .867rem; + border-radius: 4px; + padding: .5rem 1.15rem; + text-decoration: none; + transition: all .2s; +} + +.content-card-button:hover { + background-color: var(--highlight); + color: #FFFFFF; + text-decoration: none; +} + + +/* KPI Card +========================================================================== */ + +@media screen and (min-width: 992px) { + .kpis-container { + display: flex; + justify-content: center; + } +} + +.kpi-card { + background-color: var(--boxes-background); + height: 100%; + padding: 39px; + border-radius: 4px; + box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.13); + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + text-align: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + text-align: center; +} + +.kpi-icon { + color: var(--highlight); + color: var(--secondary-color); + font-size: 4rem; + margin-top: 0; + margin-bottom: 13px; + max-width: 100%; +} + +.kpi-title { + font-weight: normal; + color: var(--highlight); + font-size: 3.2rem; + margin-top: 0; + margin-bottom: 13px; + max-width: 100%; +} + +.kpi-unit { + font-size: 0.8em; + color: var(--secondary-color); +} + +.kpi-description { + color: var(--text); + font-size: 1rem; + line-height: 1.5; + font-weight: normal; + margin-top: 0; + margin-bottom: 0; + max-width: 100%; +} + + +/* Results and Map +========================================================================== */ + +.odswidget-map__map { + min-height: 550px; +} + +@media screen and (min-width: 991px) { + .col-md-5 { + padding-right: 0; + } + + .col-md-7 { + padding-left: 0; + } +} + + +.result-list { + list-style: none; + padding-left: 0; + margin-top: 0; + height: 550px; + overflow-y: auto; +} + +.result { + margin-bottom: 10px; + padding: 0 1rem 1rem 0; + border-bottom: 1px solid #DEE5EF; +} + +.result-img { + display: block; + height: 118px; + background-position: center; + background-size: cover; + background-repeat: no-repeat; + margin-bottom: 5px; +} + +.result-title { + color: var(--titles); + font-size: 1rem; + font-weight: bold; + margin-top: 0; + margin-bottom: 5px; +} + +.result-info { + list-style: none; + padding-left: 0; + margin-top: 0; + margin-bottom: 10px; + overflow-wrap: break-word; +} + +.result-info dt { + font-size: .9rem; + opacity: .9; +} + +.result-info dd { + margin-left: 0; + margin-bottom: 5px; +} diff --git a/content/page-templates/listing-page/2/html.inc b/content/page-templates/listing-page/2/html.inc new file mode 100644 index 000000000..2918e1d8e --- /dev/null +++ b/content/page-templates/listing-page/2/html.inc @@ -0,0 +1,173 @@ +
+ + + + +

Extraction des images de Paris de la collection des Archives de la Planète, un ensemble d'images fixes et animées, réalisé au début du XXe siècle, consacré à la diversité des peuples et des cultures et conservé par le musée départemental Albert-Kahn.

+ + +
+
+ +
+ +

+ {{ agg | number : 0 }} + +

+

+ Nombre d'oeuvres référencées +

+
+
+
+ + +
+

+ Autochromes dans la capitale, par les opérateurs d'Albert Kahn +

+ +
+

+ Utilisez les filtres ci-dessus pour affiner votre recherche. +

+ + +
+ + + +
+ + +
+
+ +
+
+ +
+
+ +
+
+
+ Supprimer tous les filtres + +
+
+
+ +
+
+
    +
  • +
    +
    +
    +

    + {{ item.fields.legende_revisee }} +

    +
    +
    Sujets
    +
    {{item.fields.sujets}}
    +
    Procédé technique
    +
    {{item.fields.procede_technique}}
    +
    Date de prise de vue
    +
    {{item.fields.date_de_prise_de_vue}}
    +
    + + Télécharger la photo + +
    +
  • +
+
+ +
+ + + + + +
+
+
+ Accéder aux données source +
+
+
diff --git a/content/page-templates/listing-page/2/index.md b/content/page-templates/listing-page/2/index.md new file mode 100644 index 000000000..e25c02583 --- /dev/null +++ b/content/page-templates/listing-page/2/index.md @@ -0,0 +1,12 @@ +--- +title: "Map listing page" +date: 2022-01-05T12:00:00+02:00 +--- + +This template is an alternative to the automated [Map Listing Generator](https://codelibrary.huwise.com/generators/map-listing/). It offers more customization possibilities to advanced users who would like to add or remove items to this template, or reuse some blocks on another page. + +> This ressource integrates the following widgets: +> - `ods-select` to create the filters on text fields. [Resource available here](https://codelibrary.huwise.com/widget-tricks/ods-select/) +> - `ods-aggregation` to create KPI. [Resource available here](https://codelibrary.huwise.com/widget-tricks/ods-aggregation/) +> - `ods-results` to list the content of the records from the dataset. [Resource available here](https://codelibrary.huwise.com/widget-tricks/ods-results/) +> - `ods-results` to display the records on a map. [Widget documentation available here](https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsMap) \ No newline at end of file diff --git a/content/page-templates/listing-page/2/schema.md b/content/page-templates/listing-page/2/schema.md new file mode 100644 index 000000000..16c7daf97 --- /dev/null +++ b/content/page-templates/listing-page/2/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `archives-de-la-planete-paris` [(See it on opendata.hauts-de-seine.fr)](https://opendata.hauts-de-seine.fr/explore/dataset/archives-de-la-planete-paris/table/) + +**Fields in use:** + +|operateur |themes |lieu_retraite |sujets |procede_technique|date_de_prise_de_vue|photo |legende_revisee |geo_point | +|--------------------------|---------------|---------------------------------------------------|-----------------|-----------------|--------------------|----------------------------------------------------------|----------------------------------------------------------------------|------------------| +|Auguste Léon |Habitat / Architecture > Architecture religieuse,Religion > Christianisme,Art > Moyen Age,Habitat / Architecture > Vue intérieure|Arrondissement IV |Eglise, Vitraux |Autochrome |1911-1913 (?) |https://opendata.hauts-de-seine.fr/api/v2/catalog/datasets/archives-de-la-planete-paris/files/b43f9eefacb9cd0425b64b1dfc98182f|Vitraux du chœur de la chapelle haute de la Sainte-Chapelle |48.85535,2.345259 | +|opérateur non mentionné |Habitat / Architecture > Palais / Château|Arrondissement I/Louvre |Musée, Place |Autochrome |1911-1913 (?) |https://opendata.hauts-de-seine.fr/api/v2/catalog/datasets/archives-de-la-planete-paris/files/d9facf2c30be75bca06d0b827c7eba07|Aile Richelieu du Palais du Louvre depuis la place du Carrousel |48.861613,2.336221| +|opérateur non mentionné |Habitat / Architecture > Architecture civile publique,Sciences / Techniques > Astronomie|Arrondissement XIV | |Autochrome |1911-1913 (?) |https://opendata.hauts-de-seine.fr/api/v2/catalog/datasets/archives-de-la-planete-paris/files/f81844dadc15b884c63fe4350113101c|L'Observatoire vu de la rue Cassini |48.837325,2.336566| +|Fernand Cuvil |Activite économique > Industrie,Art > Moyen Age,Habitat / Architecture > Usine / atelier|Arrondissement XIII |Hôtel particulier|Autochrome |1911-1913 (?) |https://opendata.hauts-de-seine.fr/api/v2/catalog/datasets/archives-de-la-planete-paris/files/e46007bc138d98d7131395595f9bdfeb|L'hôtel de la reine Blanche au 17 rue des Gobelins |48.837518,2.351398| + diff --git a/content/page-templates/listing-page/index.md b/content/page-templates/listing-page/index.md new file mode 100644 index 000000000..af3cae377 --- /dev/null +++ b/content/page-templates/listing-page/index.md @@ -0,0 +1,9 @@ +--- +title: "Listing page" +date: 2022-01-05T12:00:00+02:00 +description: "A template version of the listing generator, for the users who want to add more customization to the automated version." +tags: ["display", "list"] +resources: +- src: '*/' + name: folder-:counter +--- diff --git a/content/page-templates/map-refine/2/html.inc b/content/page-templates/map-refine/2/html.inc index 3ae31186c..4367433f8 100644 --- a/content/page-templates/map-refine/2/html.inc +++ b/content/page-templates/map-refine/2/html.inc @@ -55,7 +55,7 @@
diff --git a/content/page-templates/map-refine/2/schema.md b/content/page-templates/map-refine/2/schema.md new file mode 100644 index 000000000..258b2a5c0 --- /dev/null +++ b/content/page-templates/map-refine/2/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `shanghai-world-university-ranking` [(See it on public domain)](https://public.huwise.com/explore/dataset/shanghai-world-university-ranking/table/) + +**Fields in use:** + +|country|world_rank_int (numeric)|university_name| +|---|---|---| +|United Kingdom|70|University of Bristol| +|United States|72|University of Florida| +|United States|91|Rice University| +|United States|99|Case Western Reserve University| + diff --git a/content/page-templates/monitoring-dashboard/1/html.inc b/content/page-templates/monitoring-dashboard/1/html.inc index 643244713..9834c5daa 100644 --- a/content/page-templates/monitoring-dashboard/1/html.inc +++ b/content/page-templates/monitoring-dashboard/1/html.inc @@ -57,7 +57,7 @@

Portal's activity.

-

Count of daily API calls from {{ startDate|date:longDate }} to {{ endDate|date:longDate }}. See full activity log. +

Count of daily API calls from {{ startDate|date:longDate }} to {{ endDate|date:longDate }}. See full activity log.

@@ -79,9 +79,24 @@ Number of exports

Daily number of full dataset download, in any format.

- - - + + + diff --git a/content/page-templates/monitoring-dashboard/1/schema.md b/content/page-templates/monitoring-dashboard/1/schema.md new file mode 100644 index 000000000..1b00a631b --- /dev/null +++ b/content/page-templates/monitoring-dashboard/1/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `monitoring-copy` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/monitoring-copy/table/) + +**Fields in use:** + +|dataset_id|timestamp (datetime)|size_res (numeric)|user_id|query_text|attributes|action|geo_coordinates| +|---|---|---|---|---|---|---|---| +|dataproviders-dataods|2021-11-06T21:39:37+00:00|4662|anonymous||page-home|search|50.0797,-125.5892| +|dataproviders-dataods|2021-12-07T15:13:02+00:00|4655|anonymous||page-home|search|12.9634,77.5855| +|dataproviders-dataods|2021-12-07T09:35:13+00:00|2796|anonymous||page-home|lookup|48.8582,2.3387| +|base-nationale-des-lieux-de-covoiturage-en-france|2021-12-06T17:23:24+00:00|0|anonymous||page-portail|geo|41.9199,8.7424| + diff --git a/content/page-templates/monitoring-dashboard/index.md b/content/page-templates/monitoring-dashboard/index.md index b21d83b76..1e4a9d4b9 100644 --- a/content/page-templates/monitoring-dashboard/index.md +++ b/content/page-templates/monitoring-dashboard/index.md @@ -6,7 +6,7 @@ resources: - src: '*/' name: folder-:counter --- -This dashboard presents the main informations from the monitoring dataset. See the full documentation about the [monitoring dataset](https://help.opendatasoft.com/platform/en/managing_domain/03_analyzing_domain_usage/analyzing_source_data.html). +This dashboard presents the main figures from the monitoring dataset. See the full documentation about the [monitoring dataset](https://help.huwise.com/platform/en/managing_domain/03_analyzing_domain_usage/analyzing_source_data.html). See themed versions of this dashboard [here]('/themed-dashboard'). -*__Note:__ Since monitoring data are private, we use a dummy dataset in these exemple.* +*__Note:__ Since monitoring data are private, we use a dummy dataset in this example.* diff --git a/content/page-templates/observatory/1/css.inc b/content/page-templates/observatory/1/css.inc index b2aa8513d..a32397fc9 100644 --- a/content/page-templates/observatory/1/css.inc +++ b/content/page-templates/observatory/1/css.inc @@ -384,4 +384,4 @@ a.odswidget-clear-all-filters i { * Description: ODS Layout over-ride to Flexbox system */ -.box,.row.full-height{height:100%}.row{display:flex;flex-wrap:wrap}.row>*{margin-bottom:20px}.order-0{order:0}@media screen and (min-width:750px){.order-sm-0{order:0}}@media screen and (min-width:970px){.order-md-0{order:0}}@media screen and (min-width:1170px){.order-lg-0{order:0}.order-lg-1{order:1}}.order-1{order:1}@media screen and (min-width:750px){.order-sm-1{order:1}}@media screen and (min-width:970px){.order-md-1{order:1}.order-md-2{order:2}}.order-2{order:2}@media screen and (min-width:750px){.order-sm-2{order:2}}@media screen and (min-width:1170px){.order-lg-2{order:2}.order-lg-3{order:3}}.order-3{order:3}@media screen and (min-width:750px){.order-sm-3{order:3}}@media screen and (min-width:970px){.order-md-3{order:3}.order-md-4{order:4}}.order-4{order:4}@media screen and (min-width:750px){.order-sm-4{order:4}}@media screen and (min-width:1170px){.order-lg-4{order:4}.order-lg-5{order:5}}.order-5{order:5}@media screen and (min-width:750px){.order-sm-5{order:5}}@media screen and (min-width:970px){.order-md-5{order:5}.order-md-6{order:6}}.order-6{order:6}@media screen and (min-width:750px){.order-sm-6{order:6}}@media screen and (min-width:1170px){.order-lg-6{order:6}.order-lg-7{order:7}}.order-7{order:7}@media screen and (min-width:750px){.order-sm-7{order:7}}@media screen and (min-width:970px){.order-md-7{order:7}.order-md-8{order:8}}.order-8{order:8}@media screen and (min-width:750px){.order-sm-8{order:8}}@media screen and (min-width:1170px){.order-lg-8{order:8}.order-lg-9{order:9}}.order-9{order:9}@media screen and (min-width:750px){.order-sm-9{order:9}}@media screen and (min-width:970px){.order-md-9{order:9}.order-md-10{order:10}}.order-10{order:10}@media screen and (min-width:750px){.order-sm-10{order:10}}@media screen and (min-width:1170px){.order-lg-10{order:10}.order-lg-11{order:11}}.order-11{order:11}@media screen and (min-width:750px){.order-sm-11{order:11}}@media screen and (min-width:970px){.order-md-11{order:11}.order-md-12{order:12}}.order-12{order:12}@media screen and (min-width:750px){.order-sm-12{order:12}}@media screen and (min-width:1170px){.order-lg-12{order:12}}@media screen and (max-width:1169px){:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-1,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-10,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-11,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-12,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-2,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-3,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-4,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-5,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-6,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-7,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-8,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-9{width:100%}}@media screen and (max-width:969px){:not([class*=col-sm]):not([class*=col-xs]).col-md-1,:not([class*=col-sm]):not([class*=col-xs]).col-md-10,:not([class*=col-sm]):not([class*=col-xs]).col-md-11,:not([class*=col-sm]):not([class*=col-xs]).col-md-12,:not([class*=col-sm]):not([class*=col-xs]).col-md-2,:not([class*=col-sm]):not([class*=col-xs]).col-md-3,:not([class*=col-sm]):not([class*=col-xs]).col-md-4,:not([class*=col-sm]):not([class*=col-xs]).col-md-5,:not([class*=col-sm]):not([class*=col-xs]).col-md-6,:not([class*=col-sm]):not([class*=col-xs]).col-md-7,:not([class*=col-sm]):not([class*=col-xs]).col-md-8,:not([class*=col-sm]):not([class*=col-xs]).col-md-9{width:100%}}@media screen and (max-width:749px){.row{flex-direction:column}:not([class*=col-xs]).col-sm-1,:not([class*=col-xs]).col-sm-10,:not([class*=col-xs]).col-sm-11,:not([class*=col-xs]).col-sm-12,:not([class*=col-xs]).col-sm-2,:not([class*=col-xs]).col-sm-3,:not([class*=col-xs]).col-sm-4,:not([class*=col-xs]).col-sm-5,:not([class*=col-xs]).col-sm-6,:not([class*=col-xs]).col-sm-7,:not([class*=col-xs]).col-sm-8,:not([class*=col-xs]).col-sm-9{width:100%}}.no-margin-bottom,.no-mb{margin-bottom:0!important}.no-margin-x,.no-mx{margin-left:0!important;margin-right:0!important} +.box,.row.full-height{height:100%}.row{display:flex;flex-wrap:wrap}.row>*{margin-bottom:20px;flex-grow:1}.order-0{order:0}@media screen and (min-width:750px){.order-sm-0{order:0}}@media screen and (min-width:970px){.order-md-0{order:0}}@media screen and (min-width:1170px){.order-lg-0{order:0}.order-lg-1{order:1}}.order-1{order:1}@media screen and (min-width:750px){.order-sm-1{order:1}}@media screen and (min-width:970px){.order-md-1{order:1}.order-md-2{order:2}}.order-2{order:2}@media screen and (min-width:750px){.order-sm-2{order:2}}@media screen and (min-width:1170px){.order-lg-2{order:2}.order-lg-3{order:3}}.order-3{order:3}@media screen and (min-width:750px){.order-sm-3{order:3}}@media screen and (min-width:970px){.order-md-3{order:3}.order-md-4{order:4}}.order-4{order:4}@media screen and (min-width:750px){.order-sm-4{order:4}}@media screen and (min-width:1170px){.order-lg-4{order:4}.order-lg-5{order:5}}.order-5{order:5}@media screen and (min-width:750px){.order-sm-5{order:5}}@media screen and (min-width:970px){.order-md-5{order:5}.order-md-6{order:6}}.order-6{order:6}@media screen and (min-width:750px){.order-sm-6{order:6}}@media screen and (min-width:1170px){.order-lg-6{order:6}.order-lg-7{order:7}}.order-7{order:7}@media screen and (min-width:750px){.order-sm-7{order:7}}@media screen and (min-width:970px){.order-md-7{order:7}.order-md-8{order:8}}.order-8{order:8}@media screen and (min-width:750px){.order-sm-8{order:8}}@media screen and (min-width:1170px){.order-lg-8{order:8}.order-lg-9{order:9}}.order-9{order:9}@media screen and (min-width:750px){.order-sm-9{order:9}}@media screen and (min-width:970px){.order-md-9{order:9}.order-md-10{order:10}}.order-10{order:10}@media screen and (min-width:750px){.order-sm-10{order:10}}@media screen and (min-width:1170px){.order-lg-10{order:10}.order-lg-11{order:11}}.order-11{order:11}@media screen and (min-width:750px){.order-sm-11{order:11}}@media screen and (min-width:970px){.order-md-11{order:11}.order-md-12{order:12}}.order-12{order:12}@media screen and (min-width:750px){.order-sm-12{order:12}}@media screen and (min-width:1170px){.order-lg-12{order:12}}@media screen and (max-width:1169px){:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-1,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-10,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-11,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-12,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-2,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-3,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-4,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-5,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-6,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-7,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-8,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-9{width:100%}}@media screen and (max-width:969px){:not([class*=col-sm]):not([class*=col-xs]).col-md-1,:not([class*=col-sm]):not([class*=col-xs]).col-md-10,:not([class*=col-sm]):not([class*=col-xs]).col-md-11,:not([class*=col-sm]):not([class*=col-xs]).col-md-12,:not([class*=col-sm]):not([class*=col-xs]).col-md-2,:not([class*=col-sm]):not([class*=col-xs]).col-md-3,:not([class*=col-sm]):not([class*=col-xs]).col-md-4,:not([class*=col-sm]):not([class*=col-xs]).col-md-5,:not([class*=col-sm]):not([class*=col-xs]).col-md-6,:not([class*=col-sm]):not([class*=col-xs]).col-md-7,:not([class*=col-sm]):not([class*=col-xs]).col-md-8,:not([class*=col-sm]):not([class*=col-xs]).col-md-9{width:100%}}@media screen and (max-width:749px){.row{flex-direction:column}:not([class*=col-xs]).col-sm-1,:not([class*=col-xs]).col-sm-10,:not([class*=col-xs]).col-sm-11,:not([class*=col-xs]).col-sm-12,:not([class*=col-xs]).col-sm-2,:not([class*=col-xs]).col-sm-3,:not([class*=col-xs]).col-sm-4,:not([class*=col-xs]).col-sm-5,:not([class*=col-xs]).col-sm-6,:not([class*=col-xs]).col-sm-7,:not([class*=col-xs]).col-sm-8,:not([class*=col-xs]).col-sm-9{width:100%}}.no-margin-bottom,.no-mb{margin-bottom:0!important}.no-margin-x,.no-mx{margin-left:0!important;margin-right:0!important} diff --git a/content/page-templates/observatory/1/html.inc b/content/page-templates/observatory/1/html.inc index 7e372d3fb..c3335c7be 100644 --- a/content/page-templates/observatory/1/html.inc +++ b/content/page-templates/observatory/1/html.inc @@ -142,7 +142,7 @@
{{ ctx1.dataset.metas.data_processed | date }} Source @@ -181,7 +181,7 @@
{{ ctx1.dataset.metas.data_processed | date }} Source @@ -220,7 +220,7 @@
{{ ctx1.dataset.metas.data_processed | date }} Source @@ -262,7 +262,7 @@
{{ ctx1.dataset.metas.data_processed | date }} Source @@ -299,7 +299,7 @@
{{ ctx1.dataset.metas.data_processed | date }} Source @@ -335,7 +335,7 @@
{{ ctx1.dataset.metas.data_processed | date }} Source @@ -365,7 +365,7 @@
{{ ctx1.dataset.metas.data_processed | date }} Source @@ -401,7 +401,7 @@
{{ ctx1.dataset.metas.data_processed | date }} Source diff --git a/content/page-templates/observatory/1/schema.md b/content/page-templates/observatory/1/schema.md new file mode 100644 index 000000000..423cabeba --- /dev/null +++ b/content/page-templates/observatory/1/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `buildingref-france-bpe-all-geolocated` [(See it on public domain)](https://public.huwise.com/explore/dataset/buildingref-france-bpe-all-geolocated/table/) + +**Fields in use:** + +|reg_name|dep_name|com_arm_area_code|epci_name|category|equipment_name| +|---|---|---|---|---|---| +|Bretagne|Finistère|FXX|CC du Pays Bigouden Sud|Enseignement|Lycée d'enseignement professionnel| +|Nouvelle-Aquitaine|Gironde|FXX|Bordeaux Métropole|Enseignement|Lycée d'enseignement professionnel| +|Bretagne|Ille-et-Vilaine|FXX|Métropole Rennes Métropole|Enseignement|Lycée d'enseignement professionnel| +|Auvergne-Rhône-Alpes|Isère|FXX|CA Porte de l'Isère (C.A.P.I)|Enseignement|Lycée d'enseignement professionnel| + diff --git a/content/page-templates/observatory/grid-1/html.inc b/content/page-templates/observatory/grid-1/html.inc index d285b64ba..84ba6f6cf 100644 --- a/content/page-templates/observatory/grid-1/html.inc +++ b/content/page-templates/observatory/grid-1/html.inc @@ -141,7 +141,7 @@
{{ ctx1.dataset.metas.data_processed | date }} Source @@ -177,7 +177,7 @@
{{ ctx1.dataset.metas.data_processed | date }} Source @@ -214,7 +214,7 @@
{{ ctx1.dataset.metas.data_processed | date }} Source @@ -249,7 +249,7 @@
{{ ctx1.dataset.metas.data_processed | date }} Source @@ -283,7 +283,7 @@
{{ ctx1.dataset.metas.data_processed | date }} Source @@ -315,7 +315,7 @@
{{ ctx1.dataset.metas.data_processed | date }} Source @@ -342,7 +342,7 @@
{{ ctx1.dataset.metas.data_processed | date }} Source @@ -374,7 +374,7 @@
{{ ctx1.dataset.metas.data_processed | date }} Source diff --git a/content/page-templates/observatory/grid-1/schema.md b/content/page-templates/observatory/grid-1/schema.md new file mode 100644 index 000000000..423cabeba --- /dev/null +++ b/content/page-templates/observatory/grid-1/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `buildingref-france-bpe-all-geolocated` [(See it on public domain)](https://public.huwise.com/explore/dataset/buildingref-france-bpe-all-geolocated/table/) + +**Fields in use:** + +|reg_name|dep_name|com_arm_area_code|epci_name|category|equipment_name| +|---|---|---|---|---|---| +|Bretagne|Finistère|FXX|CC du Pays Bigouden Sud|Enseignement|Lycée d'enseignement professionnel| +|Nouvelle-Aquitaine|Gironde|FXX|Bordeaux Métropole|Enseignement|Lycée d'enseignement professionnel| +|Bretagne|Ille-et-Vilaine|FXX|Métropole Rennes Métropole|Enseignement|Lycée d'enseignement professionnel| +|Auvergne-Rhône-Alpes|Isère|FXX|CA Porte de l'Isère (C.A.P.I)|Enseignement|Lycée d'enseignement professionnel| + diff --git a/content/page-templates/ods-layout-over-ride/benefits/css.inc b/content/page-templates/ods-layout-over-ride/benefits/css.inc index 804636d0a..e063fdf7e 100644 --- a/content/page-templates/ods-layout-over-ride/benefits/css.inc +++ b/content/page-templates/ods-layout-over-ride/benefits/css.inc @@ -6,7 +6,7 @@ * Description: ODS Layout over-ride to Flexbox system */ -.box,.row.full-height{height:100%}.row{display:flex;flex-wrap:wrap}.row>*{margin-bottom:20px}.order-0{order:0}@media screen and (min-width:750px){.order-sm-0{order:0}}@media screen and (min-width:970px){.order-md-0{order:0}}@media screen and (min-width:1170px){.order-lg-0{order:0}.order-lg-1{order:1}}.order-1{order:1}@media screen and (min-width:750px){.order-sm-1{order:1}}@media screen and (min-width:970px){.order-md-1{order:1}.order-md-2{order:2}}.order-2{order:2}@media screen and (min-width:750px){.order-sm-2{order:2}}@media screen and (min-width:1170px){.order-lg-2{order:2}.order-lg-3{order:3}}.order-3{order:3}@media screen and (min-width:750px){.order-sm-3{order:3}}@media screen and (min-width:970px){.order-md-3{order:3}.order-md-4{order:4}}.order-4{order:4}@media screen and (min-width:750px){.order-sm-4{order:4}}@media screen and (min-width:1170px){.order-lg-4{order:4}.order-lg-5{order:5}}.order-5{order:5}@media screen and (min-width:750px){.order-sm-5{order:5}}@media screen and (min-width:970px){.order-md-5{order:5}.order-md-6{order:6}}.order-6{order:6}@media screen and (min-width:750px){.order-sm-6{order:6}}@media screen and (min-width:1170px){.order-lg-6{order:6}.order-lg-7{order:7}}.order-7{order:7}@media screen and (min-width:750px){.order-sm-7{order:7}}@media screen and (min-width:970px){.order-md-7{order:7}.order-md-8{order:8}}.order-8{order:8}@media screen and (min-width:750px){.order-sm-8{order:8}}@media screen and (min-width:1170px){.order-lg-8{order:8}.order-lg-9{order:9}}.order-9{order:9}@media screen and (min-width:750px){.order-sm-9{order:9}}@media screen and (min-width:970px){.order-md-9{order:9}.order-md-10{order:10}}.order-10{order:10}@media screen and (min-width:750px){.order-sm-10{order:10}}@media screen and (min-width:1170px){.order-lg-10{order:10}.order-lg-11{order:11}}.order-11{order:11}@media screen and (min-width:750px){.order-sm-11{order:11}}@media screen and (min-width:970px){.order-md-11{order:11}.order-md-12{order:12}}.order-12{order:12}@media screen and (min-width:750px){.order-sm-12{order:12}}@media screen and (min-width:1170px){.order-lg-12{order:12}}@media screen and (max-width:1169px){:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-1,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-10,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-11,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-12,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-2,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-3,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-4,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-5,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-6,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-7,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-8,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-9{width:100%}}@media screen and (max-width:969px){:not([class*=col-sm]):not([class*=col-xs]).col-md-1,:not([class*=col-sm]):not([class*=col-xs]).col-md-10,:not([class*=col-sm]):not([class*=col-xs]).col-md-11,:not([class*=col-sm]):not([class*=col-xs]).col-md-12,:not([class*=col-sm]):not([class*=col-xs]).col-md-2,:not([class*=col-sm]):not([class*=col-xs]).col-md-3,:not([class*=col-sm]):not([class*=col-xs]).col-md-4,:not([class*=col-sm]):not([class*=col-xs]).col-md-5,:not([class*=col-sm]):not([class*=col-xs]).col-md-6,:not([class*=col-sm]):not([class*=col-xs]).col-md-7,:not([class*=col-sm]):not([class*=col-xs]).col-md-8,:not([class*=col-sm]):not([class*=col-xs]).col-md-9{width:100%}}@media screen and (max-width:749px){.row{flex-direction:column}:not([class*=col-xs]).col-sm-1,:not([class*=col-xs]).col-sm-10,:not([class*=col-xs]).col-sm-11,:not([class*=col-xs]).col-sm-12,:not([class*=col-xs]).col-sm-2,:not([class*=col-xs]).col-sm-3,:not([class*=col-xs]).col-sm-4,:not([class*=col-xs]).col-sm-5,:not([class*=col-xs]).col-sm-6,:not([class*=col-xs]).col-sm-7,:not([class*=col-xs]).col-sm-8,:not([class*=col-xs]).col-sm-9{width:100%}}.no-margin-bottom,.no-mb{margin-bottom:0!important}.no-margin-x,.no-mx{margin-left:0!important;margin-right:0!important} +.box,.row.full-height{height:100%}.row{display:flex;flex-wrap:wrap}.row>*{margin-bottom:20px;flex-grow:1}.order-0{order:0}@media screen and (min-width:750px){.order-sm-0{order:0}}@media screen and (min-width:970px){.order-md-0{order:0}}@media screen and (min-width:1170px){.order-lg-0{order:0}.order-lg-1{order:1}}.order-1{order:1}@media screen and (min-width:750px){.order-sm-1{order:1}}@media screen and (min-width:970px){.order-md-1{order:1}.order-md-2{order:2}}.order-2{order:2}@media screen and (min-width:750px){.order-sm-2{order:2}}@media screen and (min-width:1170px){.order-lg-2{order:2}.order-lg-3{order:3}}.order-3{order:3}@media screen and (min-width:750px){.order-sm-3{order:3}}@media screen and (min-width:970px){.order-md-3{order:3}.order-md-4{order:4}}.order-4{order:4}@media screen and (min-width:750px){.order-sm-4{order:4}}@media screen and (min-width:1170px){.order-lg-4{order:4}.order-lg-5{order:5}}.order-5{order:5}@media screen and (min-width:750px){.order-sm-5{order:5}}@media screen and (min-width:970px){.order-md-5{order:5}.order-md-6{order:6}}.order-6{order:6}@media screen and (min-width:750px){.order-sm-6{order:6}}@media screen and (min-width:1170px){.order-lg-6{order:6}.order-lg-7{order:7}}.order-7{order:7}@media screen and (min-width:750px){.order-sm-7{order:7}}@media screen and (min-width:970px){.order-md-7{order:7}.order-md-8{order:8}}.order-8{order:8}@media screen and (min-width:750px){.order-sm-8{order:8}}@media screen and (min-width:1170px){.order-lg-8{order:8}.order-lg-9{order:9}}.order-9{order:9}@media screen and (min-width:750px){.order-sm-9{order:9}}@media screen and (min-width:970px){.order-md-9{order:9}.order-md-10{order:10}}.order-10{order:10}@media screen and (min-width:750px){.order-sm-10{order:10}}@media screen and (min-width:1170px){.order-lg-10{order:10}.order-lg-11{order:11}}.order-11{order:11}@media screen and (min-width:750px){.order-sm-11{order:11}}@media screen and (min-width:970px){.order-md-11{order:11}.order-md-12{order:12}}.order-12{order:12}@media screen and (min-width:750px){.order-sm-12{order:12}}@media screen and (min-width:1170px){.order-lg-12{order:12}}@media screen and (max-width:1169px){:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-1,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-10,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-11,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-12,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-2,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-3,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-4,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-5,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-6,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-7,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-8,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-9{width:100%}}@media screen and (max-width:969px){:not([class*=col-sm]):not([class*=col-xs]).col-md-1,:not([class*=col-sm]):not([class*=col-xs]).col-md-10,:not([class*=col-sm]):not([class*=col-xs]).col-md-11,:not([class*=col-sm]):not([class*=col-xs]).col-md-12,:not([class*=col-sm]):not([class*=col-xs]).col-md-2,:not([class*=col-sm]):not([class*=col-xs]).col-md-3,:not([class*=col-sm]):not([class*=col-xs]).col-md-4,:not([class*=col-sm]):not([class*=col-xs]).col-md-5,:not([class*=col-sm]):not([class*=col-xs]).col-md-6,:not([class*=col-sm]):not([class*=col-xs]).col-md-7,:not([class*=col-sm]):not([class*=col-xs]).col-md-8,:not([class*=col-sm]):not([class*=col-xs]).col-md-9{width:100%}}@media screen and (max-width:749px){.row{flex-direction:column}:not([class*=col-xs]).col-sm-1,:not([class*=col-xs]).col-sm-10,:not([class*=col-xs]).col-sm-11,:not([class*=col-xs]).col-sm-12,:not([class*=col-xs]).col-sm-2,:not([class*=col-xs]).col-sm-3,:not([class*=col-xs]).col-sm-4,:not([class*=col-xs]).col-sm-5,:not([class*=col-xs]).col-sm-6,:not([class*=col-xs]).col-sm-7,:not([class*=col-xs]).col-sm-8,:not([class*=col-xs]).col-sm-9{width:100%}}.no-margin-bottom,.no-mb{margin-bottom:0!important}.no-margin-x,.no-mx{margin-left:0!important;margin-right:0!important} /** Optional design for boxes */ .box { diff --git a/content/page-templates/regional-covid/1/html.inc b/content/page-templates/regional-covid/1/html.inc index bb14fee1a..a1a151166 100644 --- a/content/page-templates/regional-covid/1/html.inc +++ b/content/page-templates/regional-covid/1/html.inc @@ -7,10 +7,17 @@ - - {{ nbRecords = byDate.results.length - 1; "" }} @@ -20,11 +27,16 @@ {{ lastDate = list[list.length-1].fields.fecha; "" }} {{ cases.parameters['refine.fecha'] = lastDate;""}} - + - + @@ -63,45 +75,62 @@
-
+
{{reg_code = res.codigos > 9999 ? (res.codigos | limitTo:2) : (res.codigos | limitTo:1); ""}} {{colors[reg_code] = "hsl(220,75%," + (75 - ((res.confirmados - results[0].minval) / (results[0].maxval - results[0].minval) * 50) | number : 0) + "%,1)"; "" }}
- + - - + +
-
+
{{reg_code = res.codigos > 9999 ? (res.codigos | limitTo:2) : (res.codigos | limitTo:1); ""}} {{colors[reg_code] = "hsl(220,75%," + (75 - ((res.nuevos - results[0].minval) / (results[0].maxval - results[0].minval) * 50) | number : 0) + "%,1)"; "" }}
- - + - +
@@ -125,8 +154,11 @@
- - + + {{ region.x }}
@@ -143,9 +175,13 @@

Evolution

- + - + @@ -154,7 +190,9 @@

Daily Increment

- + diff --git a/content/page-templates/regional-covid/1/schema.md b/content/page-templates/regional-covid/1/schema.md new file mode 100644 index 000000000..d1e221647 --- /dev/null +++ b/content/page-templates/regional-covid/1/schema.md @@ -0,0 +1,21 @@ +**Dataset in use:** `situacion-epidemiologica-coronavirus-en-castilla-y-leon` [(See it on jcyl domain)](https://jcyl.huwise.com/explore/dataset/situacion-epidemiologica-coronavirus-en-castilla-y-leon/table/) + +**Fields in use:** + +|fecha (date)|nuevos_positivos (numeric)|casos_confirmados (numeric)|altas|fallecimientos|provincia|codigo_ine| +|---|---|---|---|---|---|---| +|2021-12-13|66|18896|2040|398|Ávila|5019| +|2021-12-13|161|55934|5097|816|Burgos|9059| +|2021-12-13|62|26348|2596|509|Palencia|34120| +|2021-12-13|54|42320|4456|901|Salamanca|37274| + +**Dataset in use:** `limites-provinciales-de-castilla-y-leon-recintos` [(See it on jcyl domain)](https://jcyl.huwise.com/explore/dataset/limites-provinciales-de-castilla-y-leon-recintos/table/) + +**Fields in use:** + +|cod_ine_prov| +|---| +|5| +|40| +|37| +|9| \ No newline at end of file diff --git a/content/page-templates/timeline/1/html.inc b/content/page-templates/timeline/1/html.inc index 646b3b3de..8afa0ddec 100644 --- a/content/page-templates/timeline/1/html.inc +++ b/content/page-templates/timeline/1/html.inc @@ -10,7 +10,7 @@ result-class="timeline-item" no-results-message="No more event..."> - {{ url = 'https://issy-les-moulineaux.opendatasoft.com/explore/dataset/' + item.datasetid + '/files/' + item.fields.imagecsv.id + '/300/' ; "" }} + {{ url = 'https://issy-les-moulineaux.huwise.com/explore/dataset/' + item.datasetid + '/files/' + item.fields.imagecsv.id + '/300/' ; "" }}
@@ -38,7 +38,6 @@ record="item" width="300" height="300"> - {{ item.fields.numero }} {{ item.fields.adresse }}
{{ item.fields.ville }}
diff --git a/content/page-templates/timeline/1/schema.md b/content/page-templates/timeline/1/schema.md new file mode 100644 index 000000000..f574bdf92 --- /dev/null +++ b/content/page-templates/timeline/1/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `chrono_issy0` [(See it on issy-les-moulineaux domain)](https://issy-les-moulineaux.huwise.com/explore/dataset/chrono_issy0/table/) + +**Fields in use:** + +|evenement|imagecsv|jour|mois|annee|coordonnees_geo|web| +|---|---|---|---|---|---|---| +|La crue de 1910||30|Janvier|1910|48.826828,2.259122|http://www.souvenirfrancais-issy.com/article-issy-les-moulineaux-1910-la-crue-centennale-57340200.html| +|Le quartier Courbarien s'effondre||7|Juin|1961|48.816765,2.255564|| +|Inauguration du Palais des Congrès d'Issy|https://data.issy.com/api/v2/catalog/datasets/chrono_issy0/files/0c262495258df9d58ff55202f70e32e1|4|Décembre|1932|48.822977,2.269842|http://www.issy.com/ma-ville/equipements-culturels/palais-des-congres-d-issy/le-palais-des-congres-dissy-inscrit-au-titre-des-monuments-historiques| +|La ligne de métro est prolongée jusqu'à Mairie d'Issy|https://data.issy.com/api/v2/catalog/datasets/chrono_issy0/files/1c69016e7effb0bdb8a7853ee0360574|24|Mars|1934|48.824167,2.27308|http://www.historim.fr/2013/03/la-ligne-12-atteint-mairie-dissy-24.html| + diff --git a/content/portal-themes/color/basic/index.md b/content/portal-themes/color/basic/index.md index a79de0a38..ae15842ac 100644 --- a/content/portal-themes/color/basic/index.md +++ b/content/portal-themes/color/basic/index.md @@ -2,7 +2,7 @@ title: "Basic" description: "" tags: [] -iframe: "https://color-basic-theme-discovery.opendatasoft.com/" +iframe: "https://color-basic-theme-discovery.huwise.com/" links: "#0086D6" pagebackground: "#F6F8FB" headerlinks: "#FFFFFF" diff --git a/content/portal-themes/color/big-header-alternative/index.md b/content/portal-themes/color/big-header-alternative/index.md index 56319ece9..76c5eb20a 100644 --- a/content/portal-themes/color/big-header-alternative/index.md +++ b/content/portal-themes/color/big-header-alternative/index.md @@ -2,7 +2,7 @@ title: "Big header alternative" description: "" tags: [] -iframe: "https://color-big-header-alternative-theme-discovery.opendatasoft.com/" +iframe: "https://color-big-header-alternative-theme-discovery.huwise.com/" text: "#565656" links: "#0086D6" titles: "#000000" diff --git a/content/portal-themes/color/big-header/index.md b/content/portal-themes/color/big-header/index.md index 287eeb6f8..c99b2a29e 100644 --- a/content/portal-themes/color/big-header/index.md +++ b/content/portal-themes/color/big-header/index.md @@ -2,7 +2,7 @@ title: "Big header" description: "" tags: [] -iframe: "https://color-big-header-theme-discovery.opendatasoft.com/" +iframe: "https://color-big-header-theme-discovery.huwise.com/" links: "#0086D6" pagebackground: "#F6F8FB" headerlinks: "#FFFFFF" diff --git a/content/portal-themes/color/index.md b/content/portal-themes/color/index.md index c21538cf1..8988be608 100644 --- a/content/portal-themes/color/index.md +++ b/content/portal-themes/color/index.md @@ -1,6 +1,6 @@ --- title: "Colored theme" -description: "An Opendatasoft theme, when your business identity contains dominant colors" +description: "A Huwise theme, when your business identity contains dominant colors" tags: [] resources: - src: '*/' diff --git a/content/portal-themes/dark/basic/index.md b/content/portal-themes/dark/basic/index.md index 2ee6d1fa8..24c52e642 100644 --- a/content/portal-themes/dark/basic/index.md +++ b/content/portal-themes/dark/basic/index.md @@ -2,7 +2,7 @@ title: "Basic" description: "" tags: [] -iframe: "https://dark-basic-theme-discovery.opendatasoft.com/" +iframe: "https://dark-basic-theme-discovery.huwise.com/" text: "#565656" links: "#0086D6" titles: "#000000" diff --git a/content/portal-themes/dark/big-header-alternative/index.md b/content/portal-themes/dark/big-header-alternative/index.md index fe387918b..af84516db 100644 --- a/content/portal-themes/dark/big-header-alternative/index.md +++ b/content/portal-themes/dark/big-header-alternative/index.md @@ -2,7 +2,7 @@ title: "Big header alternative" description: "" tags: [] -iframe: "https://dark-big-header-alternative-theme-discovery.opendatasoft.com/" +iframe: "https://dark-big-header-alternative-theme-discovery.huwise.com/" text: "#565656" links: "#0086D6" titles: "#000000" diff --git a/content/portal-themes/dark/big-header/index.md b/content/portal-themes/dark/big-header/index.md index 8d35b5840..b42264f91 100644 --- a/content/portal-themes/dark/big-header/index.md +++ b/content/portal-themes/dark/big-header/index.md @@ -2,7 +2,7 @@ title: "Big header" description: "" tags: [] -iframe: "https://dark-big-header-theme-discovery.opendatasoft.com/" +iframe: "https://dark-big-header-theme-discovery.huwise.com/" text: "#565656" links: "#0086D6" titles: "#000000" diff --git a/content/portal-themes/dark/index.md b/content/portal-themes/dark/index.md index 739c1278b..b0706b624 100644 --- a/content/portal-themes/dark/index.md +++ b/content/portal-themes/dark/index.md @@ -1,6 +1,6 @@ --- title: "Dark theme" -description: "An Opendatasoft theme, with dark header to keep it sober" +description: "A Huwise theme, with dark header to keep it sober" tags: [] resources: - src: '*/' diff --git a/content/portal-themes/dropdown-menu/1.click-default-headers/index.md b/content/portal-themes/dropdown-menu/1.click-default-headers/index.md index 79ada9e75..0ed598cb1 100644 --- a/content/portal-themes/dropdown-menu/1.click-default-headers/index.md +++ b/content/portal-themes/dropdown-menu/1.click-default-headers/index.md @@ -3,7 +3,7 @@ title: "Based on click - for default headers" description: "Dropdown menu with click for default headers" date: 2021-06-23T20:57:00+02:00 tags: [] -iframe: "https://header-discovery.opendatasoft.com/explore/" +iframe: "https://header-discovery.huwise.com/explore/" text: "#565656" links: "#0086D6" titles: "#000000" @@ -26,7 +26,7 @@ resources: --- **How to use it** 1. Copy the content of the `HEADER` tab. -2. Paste it in `https://yourdomain.opendatasoft.com/backoffice/customization/theme/#header` instead of `##menu##`. +2. Paste it in `https://yourdomain.huwise.com/backoffice/customization/theme/#header` instead of `##menu##`. 3. Copy the content of the `STYLESHEET` tab. -4. Paste it in `https://yourdomain.opendatasoft.com/backoffice/customization/theme/#stylesheet`. +4. Paste it in `https://yourdomain.huwise.com/backoffice/customization/theme/#stylesheet`. 5. Replace the links and titles of the items menu in the `HEADER` tab. \ No newline at end of file diff --git a/content/portal-themes/dropdown-menu/2.click-ods-custom-headers/index.md b/content/portal-themes/dropdown-menu/2.click-ods-custom-headers/index.md index 1bec45c4e..591f3f1fd 100644 --- a/content/portal-themes/dropdown-menu/2.click-ods-custom-headers/index.md +++ b/content/portal-themes/dropdown-menu/2.click-ods-custom-headers/index.md @@ -2,7 +2,7 @@ title: "Based on click - for Code Library custom headers" description: "Dropdown menu for headers customized with templates from the Code Library" tags: [] -iframe: "https://header-with-theme-discovery.opendatasoft.com/explore/" +iframe: "https://header-with-theme-discovery.huwise.com/explore/" text: "#565656" links: "#0086D6" titles: "#000000" @@ -26,7 +26,7 @@ resources: **How to use it** 1. Copy the content of the `HEADER` tab. -2. Paste it in `https://yourdomain.opendatasoft.com/backoffice/customization/theme/#header` instead of `##menu##`. +2. Paste it in `https://yourdomain.huwise.com/backoffice/customization/theme/#header` instead of `##menu##`. 3. Copy the content of the `STYLESHEET` tab. -4. Paste it in `https://yourdomain.opendatasoft.com/backoffice/customization/theme/#stylesheet` **AFTER** the existing code. +4. Paste it in `https://yourdomain.huwise.com/backoffice/customization/theme/#stylesheet` **AFTER** the existing code. 5. Replace the links and titles of the items menu in the `HEADER` tab. \ No newline at end of file diff --git a/content/portal-themes/dropdown-menu/3.hover-default-headers/index.md b/content/portal-themes/dropdown-menu/3.hover-default-headers/index.md index 86bdbb277..d216945be 100644 --- a/content/portal-themes/dropdown-menu/3.hover-default-headers/index.md +++ b/content/portal-themes/dropdown-menu/3.hover-default-headers/index.md @@ -2,7 +2,7 @@ title: "Based on hover - for default headers" description: "Dropdown menu with hover for default headers" tags: [] -iframe: "https://header-hover-discovery.opendatasoft.com/explore/" +iframe: "https://header-hover-discovery.huwise.com/explore/" text: "#565656" links: "#0086D6" titles: "#000000" @@ -25,6 +25,6 @@ resources: --- **How to use it** 1. Copy the content of the `HEADER` tab. -2. Paste it in `https://yourdomain.opendatasoft.com/backoffice/customization/theme/#header` instead of `##menu##`. +2. Paste it in `https://yourdomain.huwise.com/backoffice/customization/theme/#header` instead of `##menu##`. 3. Copy the content of the `STYLESHEET` tab. -4. Paste it in `https://yourdomain.opendatasoft.com/backoffice/customization/theme/#stylesheet"`. \ No newline at end of file +4. Paste it in `https://yourdomain.huwise.com/backoffice/customization/theme/#stylesheet"`. \ No newline at end of file diff --git a/content/portal-themes/dropdown-menu/4.hover-custom-headers/index.md b/content/portal-themes/dropdown-menu/4.hover-custom-headers/index.md index c2e4ffde7..a2f7eb418 100644 --- a/content/portal-themes/dropdown-menu/4.hover-custom-headers/index.md +++ b/content/portal-themes/dropdown-menu/4.hover-custom-headers/index.md @@ -2,7 +2,7 @@ title: "Based on hover - for Code Library customer headers" description: "Dropdown menu with hover for headers customized with templates from the Code Library" tags: [] -iframe: "https://header-hover-with-theme-discovery.opendatasoft.com" +iframe: "https://header-hover-with-theme-discovery.huwise.com" text: "#565656" links: "#0086D6" titles: "#000000" @@ -25,7 +25,7 @@ resources: --- **How to use it** 1. Copy the content of the `HEADER` tab. -2. Paste it in `https://yourdomain.opendatasoft.com/backoffice/customization/theme/#header` instead of `##menu##`. +2. Paste it in `https://yourdomain.huwise.com/backoffice/customization/theme/#header` instead of `##menu##`. 3. Copy the content of the `STYLESHEET` tab. -4. Paste it in `https://yourdomain.opendatasoft.com/backoffice/customization/theme/#stylesheet` **AFTER** the existing code. +4. Paste it in `https://yourdomain.huwise.com/backoffice/customization/theme/#stylesheet` **AFTER** the existing code. 5. Replace the links and titles of the items menu in the `HEADER` tab. \ No newline at end of file diff --git a/content/portal-themes/dropdown-menu/index.md b/content/portal-themes/dropdown-menu/index.md index 9f8b1ceb8..f72db962c 100644 --- a/content/portal-themes/dropdown-menu/index.md +++ b/content/portal-themes/dropdown-menu/index.md @@ -10,6 +10,6 @@ resources: **Important note** -_By using these types of headers, you will note be able to link the menu items to the ones you enter in the back-office of your domain (`https://yourdomain.opendatasoft.com/backoffice/customization/navigation/`)_. _These customed headers will recreate the navigation bar and you will have to enter the title and the link for each of them, in the HTML code_. +_By using these types of headers, you will note be able to link the menu items to the ones you enter in the back-office of your domain (`https://yourdomain.huwise.com/backoffice/customization/navigation/`)_. _These customed headers will recreate the navigation bar and you will have to enter the title and the link for each of them, in the HTML code_. _Moreover, you will not be able to have a specific CSS class for the active items (no background/underline effect on an item title to highlight the active page)_. \ No newline at end of file diff --git a/content/portal-themes/light/basic/index.md b/content/portal-themes/light/basic/index.md index e0ba3075e..0dc36f2ec 100644 --- a/content/portal-themes/light/basic/index.md +++ b/content/portal-themes/light/basic/index.md @@ -2,7 +2,7 @@ title: "Basic" description: "" tags: [] -iframe: "https://light-basic-theme-discovery.opendatasoft.com/" +iframe: "https://light-basic-theme-discovery.huwise.com/" text: "#565656" links: "#0086D6" titles: "#000000" diff --git a/content/portal-themes/light/big-header/index.md b/content/portal-themes/light/big-header/index.md index bbfdca7df..3584a0d65 100644 --- a/content/portal-themes/light/big-header/index.md +++ b/content/portal-themes/light/big-header/index.md @@ -2,7 +2,7 @@ title: "Big header" description: "" tags: [] -iframe: "https://light-big-header-theme-discovery.opendatasoft.com/" +iframe: "https://light-big-header-theme-discovery.huwise.com/" text: "#565656" links: "#0086D6" titles: "#000000" diff --git a/content/portal-themes/light/index.md b/content/portal-themes/light/index.md index 76d139535..ac16f6b1e 100644 --- a/content/portal-themes/light/index.md +++ b/content/portal-themes/light/index.md @@ -1,6 +1,6 @@ --- title: "Light theme" -description: "An Opendatasoft theme, with white header to keep it classic and light" +description: "A Huwise theme, with white header to keep it classic and light" tags: [] resources: - src: '*/' diff --git a/content/widget-tricks/age-pyramid-custom/1/css.inc b/content/widget-tricks/age-pyramid-custom/1/css.inc new file mode 100644 index 000000000..973b70f1c --- /dev/null +++ b/content/widget-tricks/age-pyramid-custom/1/css.inc @@ -0,0 +1,183 @@ +:root { + --left-color: #142E7B; + --right-color: #ffcc00; +} +/***************/ +/* Age pyramid */ +/***************/ +.pyramid-line { + display: flex; + justify-content: space-between; + width: 100%; + margin: auto; +} + +.pyramid-middle { + font-weight: 500; + flex: 1; + min-width: 70px; + text-align: center; + white-space: nowrap; +} + +.pyramid-side { + flex: 3; + margin: 0px 10px; + text-align: center; + display: flex; + align-items: center; +} + +.pyramid-side-left { + color: var(--left-color); + flex-direction: row-reverse; +} + +.pyramid-side-right { + color: var(--right-color); + flex-direction: row; +} + +.pyramid-side-value { + width: 60px; +} + +div.fond_bar{ + background-color: #f3f3f382; + height: 15px; + border-radius: 1000px; +} + +div.bar{ + border-radius: 1000px; + height: 15px; +} + +.pyramid-side-left div.bar { + background-color : var(--left-color); + float: right; +} + +.pyramid-side-right div.bar { + background-color : var(--right-color); +} + +.pyramid-value { + font-size: 12px; + padding: 0px 5px; + flex: 1; +} + +.left { + text-align: start; +} + +.right { + text-align: end; +} + + + + + + +/* Optional : SWITCH BUTTON */ +.pyramid-switch { + display: flex; + align-items: baseline; + margin-top: 13px; +} +.pyramid-switch .switch { + margin-left: 6px; +} + +/* Button Group Switch + ========================================================================== */ + +.switch { + display: inline-block; + margin-bottom: 0.5rem; +} + +.switch-button { + /* background and border when in "off" state */ + background: var(--highlight); + border: 2px solid var(--highlight); + display: grid; + grid-template-columns: 1fr 1fr; + border-radius: 6px; + color: #FFFFFF; + position: relative; + cursor: pointer; + outline: 0; + user-select: none; +} + +.switch-input:not(:checked) + .switch-button .switch-button-left { + /* text color when in "off" state */ + color: var(--highlight); +} + +.switch-input { + display: none; +} + +.switch-button span { + font-size: 1rem; + padding: 0.2rem .7rem; + text-align: center; + z-index: 2; + color: #FFFFFF; + transition: color .2s; +} + +.switch-button::before { + content: ''; + position: absolute; + background-color: #FFFFFF; + box-shadow: 0 1px 3px rgba(0,0,0,.4); + border-radius: 4px; + top: 0; + left: 0; + height: 100%; + width: 50%; + z-index: 1; + transition: left .3s cubic-bezier(0.175, 0.885, 0.320, 1), + padding .2s ease, margin .2s ease; +} + +.switch-button:hover::before { + will-change: padding; +} + +.switch-button:active::before { + padding-right: .4rem; +} + +/* "On" state + ========================== */ +.switch-input:checked + .switch-button { + /* background and border when in "on" state */ + background-color: var(--links); + border-color: var(--links); +} + +.switch-input:checked + .switch-button .switch-button-right { + /* text color when in "on" state */ + color: var(--links); +} + +.switch-input:checked + .switch-button::before { + left: 50%; +} + +.switch-input:checked + .switch-button:active::before { + margin-left: -.4rem; +} + +/* Checkbox in disabled state + ========================== */ +.switch-input[type="checkbox"]:disabled + .switch-button { + opacity: 0.6; + cursor: not-allowed; +} diff --git a/content/widget-tricks/age-pyramid-custom/1/html.inc b/content/widget-tricks/age-pyramid-custom/1/html.inc new file mode 100644 index 000000000..4ef0de79f --- /dev/null +++ b/content/widget-tricks/age-pyramid-custom/1/html.inc @@ -0,0 +1,102 @@ + +
+
+

Age pyramid for the state of North Carolina, USA

+
+
+
+ {{ variables.max['pyramidnumber'] = results[0].maxcount ; "" }} +
+
+
+
+
+ +
+ +
+ {{totalbygender[0][genderfield]}} (total : {{ totalbygender[0].totalgender | number }}) +
+ +
Age
+ +
+ {{totalbygender[1][genderfield]}} (total : {{ totalbygender[1].totalgender | number }}) +
+
+
+ +
+
+
+
+ +
+ {{variables.index[i][totalbygender[0][genderfield]] | number}} +
+
+ +
{{ i }}
+ +
+
+
+
+ +
+ + {{variables.index[i][totalbygender[1][genderfield]] | number}} +
+
+
+
+
+
+ + +
+
+
+

Display values:

+ +
+
+
+
+
+
diff --git a/content/widget-tricks/age-pyramid-custom/1/index.md b/content/widget-tricks/age-pyramid-custom/1/index.md new file mode 100644 index 000000000..3b9e33221 --- /dev/null +++ b/content/widget-tricks/age-pyramid-custom/1/index.md @@ -0,0 +1,5 @@ +--- +title: "Example with the state of North Carolina, USA" +date: 2021-08-20T18:02:27+02:00 +height: 300 +--- diff --git a/content/widget-tricks/age-pyramid-custom/1/schema.md b/content/widget-tricks/age-pyramid-custom/1/schema.md new file mode 100644 index 000000000..dbdd5662b --- /dev/null +++ b/content/widget-tricks/age-pyramid-custom/1/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `north-carolina-population-overview-2010` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/north-carolina-population-overview-2010/table/) + +**Fields in use:** + +| age | sex | value (numeric) | +|---|---|---| +|18-24|Male|22 929| +|25-44|Female|12 000| +|45-64|Female|349| +|65-84|Male|13 033| \ No newline at end of file diff --git a/content/widget-tricks/age-pyramid-custom/index.md b/content/widget-tricks/age-pyramid-custom/index.md new file mode 100644 index 000000000..9c361c6d7 --- /dev/null +++ b/content/widget-tricks/age-pyramid-custom/index.md @@ -0,0 +1,22 @@ +--- +title: "Age Pyramid with custom HTML/CSS" +date: 2021-08-20T18:02:27+02:00 +tags: ["display", "chart", "ods-adv-analysis", "ods-aggregation", "ods-subaggregation"] +resources: +- src: '*/' + name: folder-:counter +--- + +Create an age pyramid to present the repartition of the population in your area, with custom HTML and CSS. + +3 parameters must be declared in the code: +- `agefield` : the id of the age field in your dataset +- `genderfield` : the id of the gender field in your dataset +- `valuefield` : the id of the value field in your dataset + +Then, you can customize the colors of the bars in the CSS file, with the 2 variables: +- `--left-color` +- `--right-color` + +> Note: the display values toggle is optional and can be removed. Then, simply set the `displayvalues` to true or false, +> to display values on each side or not. \ No newline at end of file diff --git a/content/widget-tricks/age-pyramid-vegalite/1/css.inc b/content/widget-tricks/age-pyramid-vegalite/1/css.inc new file mode 100644 index 000000000..1af1ef003 --- /dev/null +++ b/content/widget-tricks/age-pyramid-vegalite/1/css.inc @@ -0,0 +1,5 @@ +.odswidget-vega-lite-chart { + width: 100%; + height: 200px; + text-align: center; +} \ No newline at end of file diff --git a/content/widget-tricks/age-pyramid-vegalite/1/html.inc b/content/widget-tricks/age-pyramid-vegalite/1/html.inc new file mode 100644 index 000000000..f25cc49a3 --- /dev/null +++ b/content/widget-tricks/age-pyramid-vegalite/1/html.inc @@ -0,0 +1,97 @@ +
+ +
+ + +
+
+
diff --git a/content/widget-tricks/age-pyramid-vegalite/1/index.md b/content/widget-tricks/age-pyramid-vegalite/1/index.md new file mode 100644 index 000000000..e515f0660 --- /dev/null +++ b/content/widget-tricks/age-pyramid-vegalite/1/index.md @@ -0,0 +1,23 @@ +--- +title: "Example with the city of Issy-les-Moulineaux, France" +date: 2021-08-20T18:02:27+02:00 +height: 300 +--- + +You first have to setup your `ods-adv-analysis` by entering the right fields names for the `select` and `group-by` parameters. + +Then, the `ods-vega-lite-chart` is divided in 2 parts, one for each side (Male/Female usually). For each side, you have to fill in: +- the filter: the gender informations (field and title) +- the y axis: the age field +- the x axis: the population informations (field and title) + +You can also customize the color for both sides in the `color` property: +```json5 +'color': + ... + 'scale': { + 'range': ['#006699','#ff5050'], + ... + }, + ... +``` diff --git a/content/widget-tricks/age-pyramid-vegalite/1/schema.md b/content/widget-tricks/age-pyramid-vegalite/1/schema.md new file mode 100644 index 000000000..5661e6a9d --- /dev/null +++ b/content/widget-tricks/age-pyramid-vegalite/1/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `population-par-age-et-par-sexe-a-issy-les-moulineaux-en-2016` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/population-par-age-et-par-sexe-a-issy-les-moulineaux-en-2016/table/) + +**Fields in use:** + +| age | sexe | nombre (numeric) | +|---|---|---| +|15-29 ans|Femmes|2 929| +|30-44 ans|Hommes|1 000| +|45-59 ans|Femmes|349| +|60-74 ans|Femmes|3 033| \ No newline at end of file diff --git a/content/widget-tricks/age-pyramid-vegalite/index.md b/content/widget-tricks/age-pyramid-vegalite/index.md new file mode 100644 index 000000000..09a120e58 --- /dev/null +++ b/content/widget-tricks/age-pyramid-vegalite/index.md @@ -0,0 +1,22 @@ +--- +title: "Age Pyramid with Vega-Lite" +date: 2021-08-20T18:02:27+02:00 +tags: ["display", "chart", "ods-adv-analysis"] +draft: true +resources: +- src: '*/' + name: folder-:counter +--- + +Create an age pyramid to present the repartition of the population in your area, with Vega-Lite. + +**Vega-Lite** is a high-level grammar of interactive graphics. It provides a concise, declarative JSON syntax to create an expressive range of visualizations for data analysis and presentation. + +[ods-vega-lite-chart](https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsVegaLiteChart) widget, in combinaison with `ods-adv-analysis` to get the data, allows adding Vega-Lite charts into your pages. + +To learn more about Vega-Lite charts in ODS pages, read the [Vega-Lite presentation](https://codelibrary.huwise.com/widget-tricks/heatmaps-vegalite/#vega-lite-presentation). + +> We consider the usage of `ods-adv-analysis` as prerequisites of this resource. +> Do not hesitate to have a look at the documention: [ods-adv-analysis](https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsAdvAnalysis) + + diff --git a/content/widget-tricks/animation/1/html.inc b/content/widget-tricks/animation/1/html.inc index e8465651a..75006bc4e 100644 --- a/content/widget-tricks/animation/1/html.inc +++ b/content/widget-tricks/animation/1/html.inc @@ -8,20 +8,19 @@
-
+ tick = 0;"> - + -

{{ from | number:0 }}

+

{{ ((aggregation || 0) / nbticks) * tick | number:0 }}

tons of uranium produced since 2017

diff --git a/content/widget-tricks/animation/1/schema.md b/content/widget-tricks/animation/1/schema.md new file mode 100644 index 000000000..562cd65fd --- /dev/null +++ b/content/widget-tricks/animation/1/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `uranium-production` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/uranium-production/table/) + +**Fields in use:** + +| tonnes_of_uranium (numeric) | +|---| +|24575| +|3032| +|2475| +|3432| \ No newline at end of file diff --git a/content/widget-tricks/animation/2/html.inc b/content/widget-tricks/animation/2/html.inc index 5cd7c4a23..ea4d16a92 100644 --- a/content/widget-tricks/animation/2/html.inc +++ b/content/widget-tricks/animation/2/html.inc @@ -1,33 +1,34 @@ - -
-
-
- -
- {{ to = aggregation ; ''}} - - - -

{{ from | number : 0 }}

-

tons of uranium produced since 2017

-
-
+ +
+
+
+ +
+ + + +

+ {{ ((aggregation || 0) / nbticks) * (tick >= nbticks ? nbticks : tick) | number:0 }} +

+

tons of uranium produced since 2017

+
+
diff --git a/content/widget-tricks/animation/2/schema.md b/content/widget-tricks/animation/2/schema.md new file mode 100644 index 000000000..562cd65fd --- /dev/null +++ b/content/widget-tricks/animation/2/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `uranium-production` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/uranium-production/table/) + +**Fields in use:** + +| tonnes_of_uranium (numeric) | +|---| +|24575| +|3032| +|2475| +|3432| \ No newline at end of file diff --git a/content/widget-tricks/animation/3/css.inc b/content/widget-tricks/animation/3/css.inc index 88dab8440..051ca24f5 100644 --- a/content/widget-tricks/animation/3/css.inc +++ b/content/widget-tricks/animation/3/css.inc @@ -90,8 +90,8 @@ fill: none; stroke-width: 8px; stroke: var(--highlight); - -webkit-transition: stroke-dasharray 0.1s; - transition: stroke-dasharray 0.1s; + -webkit-transition: stroke-dasharray 2.5s; + transition: stroke-dasharray 2.5s; } .odswidget-gauge { diff --git a/content/widget-tricks/animation/3/html.inc b/content/widget-tricks/animation/3/html.inc index 5f7b38901..2a4bc1eb2 100644 --- a/content/widget-tricks/animation/3/html.inc +++ b/content/widget-tricks/animation/3/html.inc @@ -1,14 +1,14 @@ - + uraniumproductionkazakhstan-dataset="uranium-production" + uraniumproductionkazakhstan-domain="userclub" + uraniumproductionkazakhstan-parameters="{'refine.country':'Kazakhstan'}">
diff --git a/content/widget-tricks/animation/3/schema.md b/content/widget-tricks/animation/3/schema.md new file mode 100644 index 000000000..7bd6650f7 --- /dev/null +++ b/content/widget-tricks/animation/3/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `uranium-production` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/uranium-production/table/) + +**Fields in use:** + +| tonnes_of_uranium (numeric) | country | +|---|---| +|24575|Kazakhstan| +|3032|Niger| +|2475|Namibia| +|3432|Russia| \ No newline at end of file diff --git a/content/widget-tricks/animation/4/html.inc b/content/widget-tricks/animation/4/html.inc index e4fb02aa8..15ade2afd 100644 --- a/content/widget-tricks/animation/4/html.inc +++ b/content/widget-tricks/animation/4/html.inc @@ -1,41 +1,43 @@ - -
-
-
- -
- {{ to = sumkazakhstan ; ''}} {{ max = sum ; '' }} - - - -

- {{ from | number : 0 }} tons of Uranium produced in Kazakhstan (out of {{ max | - number }} in total) -

-
-
+ +
+
+
+ +
+ + + {{value = ((sumkazakhstan || 0) / nbticks) * (tick >= nbticks ? nbticks : tick) ; "" }} + +

+ {{value | number:0 }} tons of Uranium produced in Kazakhstan (out of {{ sum | number }} in total) +

+
+
diff --git a/content/widget-tricks/animation/4/schema.md b/content/widget-tricks/animation/4/schema.md new file mode 100644 index 000000000..7bd6650f7 --- /dev/null +++ b/content/widget-tricks/animation/4/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `uranium-production` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/uranium-production/table/) + +**Fields in use:** + +| tonnes_of_uranium (numeric) | country | +|---|---| +|24575|Kazakhstan| +|3032|Niger| +|2475|Namibia| +|3432|Russia| \ No newline at end of file diff --git a/content/widget-tricks/animation/index.md b/content/widget-tricks/animation/index.md index 956ded589..b837a5040 100644 --- a/content/widget-tricks/animation/index.md +++ b/content/widget-tricks/animation/index.md @@ -1,7 +1,7 @@ --- title: "Animations" date: 2021-04-06T20:57:00+02:00 -description: "Animate your data-visualisation (KPIs, Gauge)." +description: "Animate your data-visualisation (KPIs, Gauge) with ods-timer." height: 460 tags: ["display", "chart", "aggregation"] resources: diff --git a/content/widget-tricks/catalog-cards/1/index.md b/content/widget-tricks/catalog-cards/1/index.md index 09ef92b00..f29854479 100644 --- a/content/widget-tricks/catalog-cards/1/index.md +++ b/content/widget-tricks/catalog-cards/1/index.md @@ -2,4 +2,4 @@ title: "Default look" --- -The default look & feel of catalog cards for any new Opendatasoft portal. +The default look & feel of catalog cards for any new Huwise portal. diff --git a/content/widget-tricks/catalog-cards/3/index.md b/content/widget-tricks/catalog-cards/3/index.md index 04f6ebd89..057bfbde1 100644 --- a/content/widget-tricks/catalog-cards/3/index.md +++ b/content/widget-tricks/catalog-cards/3/index.md @@ -2,4 +2,4 @@ title: "Hidden metrics" --- -Dataset metrics can be viewed by hovering over the catalog card. To learn what other metadata can be displayed in a catalog card, check out the [catalog card documentation](https://help.opendatasoft.com/platform/en/customizing_look_and_feel/06_customizing_theme/theme.html#catalog-card). +Dataset metrics can be viewed by hovering over the catalog card. To learn what other metadata can be displayed in a catalog card, check out the [catalog card documentation](https://help.huwise.com/platform/en/customizing_look_and_feel/06_customizing_theme/theme.html#catalog-card). diff --git a/content/widget-tricks/catalog-cards/4/html.inc b/content/widget-tricks/catalog-cards/4/html.inc index f35e4793d..90cfb1eb7 100644 --- a/content/widget-tricks/catalog-cards/4/html.inc +++ b/content/widget-tricks/catalog-cards/4/html.inc @@ -24,7 +24,7 @@
+ src="https://discovery.huwise.com/assets/theme_image/stared.png" />
diff --git a/content/widget-tricks/catalog-cards/5/html.inc b/content/widget-tricks/catalog-cards/5/html.inc index 67e7a02ef..3ca74c3ff 100644 --- a/content/widget-tricks/catalog-cards/5/html.inc +++ b/content/widget-tricks/catalog-cards/5/html.inc @@ -16,7 +16,7 @@
+ src="https://discovery.huwise.com/assets/theme_image/stared.png" />
diff --git a/content/widget-tricks/catalog-cards/index.md b/content/widget-tricks/catalog-cards/index.md index e9793b51f..085a29e2c 100644 --- a/content/widget-tricks/catalog-cards/index.md +++ b/content/widget-tricks/catalog-cards/index.md @@ -8,7 +8,7 @@ resources: name: folder-:counter --- -The catalog card represents the published datasets of that portal. (see [Exploring a dataset from the catalog](https://help.opendatasoft.com/platform/en/exploring_catalog_and_datasets/01_navigating_the_catalog/catalog.html#exploring-dataset)). +The catalog card represents the published datasets of that portal. (see [Exploring a dataset from the catalog](https://help.huwise.com/platform/en/exploring_catalog_and_datasets/01_navigating_the_catalog/catalog.html#exploring-dataset)). The platform allows to customize the catalog cards displayed in the catalog of the portal, by providing custom HTML and CSS to override the default version. This resource propose different versions and technical tricks that can be used to highlighted datasets by keywords or theme for example. diff --git a/content/widget-tricks/charts/1/html.inc b/content/widget-tricks/charts/1/html.inc index ca653b0ec..7c7fd6a8c 100644 --- a/content/widget-tricks/charts/1/html.inc +++ b/content/widget-tricks/charts/1/html.inc @@ -303,7 +303,7 @@ Population distribution by region.
@@ -338,7 +338,7 @@ Population distribution by region + average surface area of cities in this region
@@ -374,7 +374,7 @@ Population, surface area and average high (Z axis) by region.
diff --git a/content/widget-tricks/charts/1/schema.md b/content/widget-tricks/charts/1/schema.md new file mode 100644 index 000000000..a4200420a --- /dev/null +++ b/content/widget-tricks/charts/1/schema.md @@ -0,0 +1,36 @@ +**Fields in use in `us-hospitals` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/us-hospitals/table/)** + +| type | beds (numeric) | +|------|-----| +|General Acute Care Hospital|24| +|Psychiatric Hospital|435| +|Long Term Care Hospital|60| +|Rehabilitation Hospital|120| + +**Field in use in `super-bowl` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/super-bowl/table/)** + +| date (date) | winning_pts (numeric) | losing_pts (numeric) | +|------|------|------| +|2020/02/10|31|12| +|2019/09/12|34|30| +|2008/05/31|13|9| +|2001/12/01|23|17| + +**Field in use in `consumer-price-index-all-urban-consumers` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/consumer-price-index-all-urban-consumers/table/)** + +| area_name | item_name | date (date) | value (numeric) | +|------|------|------|------| +|U.S. city average|Energy services|2017|120 000| +|Northeast urban - Size Class A|Admissions|2014|84 583| +|South urban|All items less energy|1998|1 291| +|Midwest - Size Class A|Rice, pasta, cornmeal|2000|123 020| + +**Field in use in `ensemble-des-equipements-sportifs-dile-de-france-en-2016` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/ensemble-des-equipements-sportifs-dile-de-france-en-2016/table/)** + +| eqt_fam | +|------| +|Plateau EPS| +|Salle multisports| +|Terrain de grands jeux| +|Salle de combat| + diff --git a/content/widget-tricks/custom-tooltips/1/schema.md b/content/widget-tricks/custom-tooltips/1/schema.md new file mode 100644 index 000000000..03b91d744 --- /dev/null +++ b/content/widget-tricks/custom-tooltips/1/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `us-hospitals` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/us-hospitals/table/) + +**Fields in use:** + +| geo_point (geo_point_2d) | +|---| +|[34.69553069,-82.98721979]| +|[30.61153069,-12.98721933]| +|[12.32919334,-33.28191939]| +|[56.20494929,-10.39294955]| \ No newline at end of file diff --git a/content/widget-tricks/custom-tooltips/2/schema.md b/content/widget-tricks/custom-tooltips/2/schema.md new file mode 100644 index 000000000..63a6224c7 --- /dev/null +++ b/content/widget-tricks/custom-tooltips/2/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `us-hospitals` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/us-hospitals/table/) + +**Fields in use:** + +| geo_point (geo_point_2d) | name | address | city | type | date_creat (datetime) | trauma | helipad | population (numeric) | website | +|---|---|---|---|---|---|---|---|---|---| +|[34.69553069,-82.98721979]|Mercy Hospital Clermont | 3000 Hospital Drive|Batavia|General Acute Care Hospital|2013-03-08T01:00:00+01:00|Not Available|Y|291|http://www.e-mercy.com | +|[30.61153069,-12.98721933]|Roanoke Valley Center For Sight, L.L.C. | 438 W. Main Street |Salem|PGeneral Acute Care Hospital|2012-08-31T01:00:00+01:00|I|N|123|N/A | +|[12.32919334,-33.28191939]|Shriners Hospital For Children | 356 North Virginia Street|Salt Lake City|Children|2000-12-14T01:00:00+01:00|III|Not Available|13|http://www.shrinershospitalsforchildren.org/Hospitals/Locations/SaltLakeCity.aspx| +|[56.20494929,-10.39294955]|Howard Memorial Hospital | 800 West Leslie |Nashville|Critical Access|2002-03-18T01:00:00+01:00|II|Not Available|340|http://howardmemorial.com | \ No newline at end of file diff --git a/content/widget-tricks/custom-tooltips/3/schema.md b/content/widget-tricks/custom-tooltips/3/schema.md new file mode 100644 index 000000000..7fdd75883 --- /dev/null +++ b/content/widget-tricks/custom-tooltips/3/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `us-hospitals` [from userclub](https://userclub.huwise.com/explore/dataset/us-hospitals/table/) + +**Fields in use:** + +| name | address | state | city | type | beds (numeric) | website | +|-------------------------------------------|---------------------------|-------|-------------------|-------------------------------|-------------------|-----------------------------------------------------------------------------------| +| Mercy Hospital Clermont | 3000 Hospital Drive | JA | Batavia | General Acute Care Hospital | 119 | http://www.e-mercy.com | +| Roanoke Valley Center For Sight, L.L.C. | 438 W. Main Street | UT | Salem | General Acute Care Hospital | 2 | N/A | +| Shriners Hospital For Children | 356 North Virginia Street | NY | Salt Lake City | Children | 40 | http://www.shrinershospitalsforchildren.org/Hospitals/Locations/SaltLakeCity.aspx | +| Howard Memorial Hospital | 800 West Leslie | NJ | Nashville | Critical Access | 25 | http://howardmemorial.com | +| Covenant Specialty Hospital | 20th Street | UT | Lubbock | Long Term Care Hospital | 56 | http://www.covenanthealth.org/view/Facilities/Specialty_Hospital | diff --git a/content/widget-tricks/custom-tooltips/index.md b/content/widget-tricks/custom-tooltips/index.md index 6da7fc037..fd2cf0239 100644 --- a/content/widget-tricks/custom-tooltips/index.md +++ b/content/widget-tricks/custom-tooltips/index.md @@ -8,4 +8,4 @@ resources: name: folder-:counter --- -These are resources to create custom tooltips for your maps. You can use them directly [in the map editor](https://help.opendatasoft.com/platform/en/publishing_data/07_configuring_visualizations/02_configuring_map_view/tooltip.html#custom-html-tooltip) (in which case you will omit the context) or in your pages. +These are resources to create custom tooltips for your maps. You can use them directly [in the map editor](https://help.huwise.com/platform/en/publishing_data/07_configuring_visualizations/02_configuring_map_view/tooltip.html#custom-html-tooltip) (in which case you will omit the context) or in your pages. diff --git a/content/widget-tricks/dates/1/schema.md b/content/widget-tricks/dates/1/schema.md new file mode 100644 index 000000000..4dd4370c6 --- /dev/null +++ b/content/widget-tricks/dates/1/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `evenements-publics-openagenda` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/evenements-publics-openagenda/table/) + +**Fields in use:** + +| date_start (date) | +|---| +|2016-09-17| +|2010-12-01| +|2001-04-05| +|2018-03-15| \ No newline at end of file diff --git a/content/widget-tricks/dates/2/schema.md b/content/widget-tricks/dates/2/schema.md new file mode 100644 index 000000000..4dd4370c6 --- /dev/null +++ b/content/widget-tricks/dates/2/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `evenements-publics-openagenda` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/evenements-publics-openagenda/table/) + +**Fields in use:** + +| date_start (date) | +|---| +|2016-09-17| +|2010-12-01| +|2001-04-05| +|2018-03-15| \ No newline at end of file diff --git a/content/widget-tricks/dates/3/schema.md b/content/widget-tricks/dates/3/schema.md new file mode 100644 index 000000000..4dd4370c6 --- /dev/null +++ b/content/widget-tricks/dates/3/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `evenements-publics-openagenda` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/evenements-publics-openagenda/table/) + +**Fields in use:** + +| date_start (date) | +|---| +|2016-09-17| +|2010-12-01| +|2001-04-05| +|2018-03-15| \ No newline at end of file diff --git a/content/widget-tricks/dates/4/html.inc b/content/widget-tricks/dates/4/html.inc index 3fb875981..d9e89ebea 100644 --- a/content/widget-tricks/dates/4/html.inc +++ b/content/widget-tricks/dates/4/html.inc @@ -25,7 +25,7 @@
  • - +

    School canteen menu
    @@ -83,13 +83,13 @@ {{ menu.fields.code_entree }} + src="https://discovery.huwise.com/assets/theme_image/ab.png"/> + src="https://discovery.huwise.com/assets/theme_image/vbf.png"/> + src="https://discovery.huwise.com/assets/theme_image/vpf.png"/> + src="https://discovery.huwise.com/assets/theme_image/ebr.jpg"/>

  • @@ -101,13 +101,13 @@ {{ menu.fields.code_plat }} + src="https://discovery.huwise.com/assets/theme_image/ab.png"/> + src="https://discovery.huwise.com/assets/theme_image/vbf.png"/> + src="https://discovery.huwise.com/assets/theme_image/vpf.png"/> + src="https://discovery.huwise.com/assets/theme_image/ebr.jpg"/>
    @@ -119,13 +119,13 @@ {{ menu.fields.code_legumes }} + src="https://discovery.huwise.com/assets/theme_image/ab.png"/> + src="https://discovery.huwise.com/assets/theme_image/vbf.png"/> + src="https://discovery.huwise.com/assets/theme_image/vpf.png"/> + src="https://discovery.huwise.com/assets/theme_image/ebr.jpg"/>
    @@ -137,13 +137,13 @@ {{ menu.fields.code_laitage }} + src="https://discovery.huwise.com/assets/theme_image/ab.png"/> + src="https://discovery.huwise.com/assets/theme_image/vbf.png"/> + src="https://discovery.huwise.com/assets/theme_image/vpf.png"/> + src="https://discovery.huwise.com/assets/theme_image/ebr.jpg"/>
    @@ -155,13 +155,13 @@ {{ menu.fields.code_dessert }} + src="https://discovery.huwise.com/assets/theme_image/ab.png"/> + src="https://discovery.huwise.com/assets/theme_image/vbf.png"/> + src="https://discovery.huwise.com/assets/theme_image/vpf.png"/> + src="https://discovery.huwise.com/assets/theme_image/ebr.jpg"/>
    @@ -173,13 +173,13 @@ {{ menu.fields.code_gouter }} + src="https://discovery.huwise.com/assets/theme_image/ab.png"/> + src="https://discovery.huwise.com/assets/theme_image/vbf.png"/> + src="https://discovery.huwise.com/assets/theme_image/vpf.png"/> + src="https://discovery.huwise.com/assets/theme_image/ebr.jpg"/>
    diff --git a/content/widget-tricks/dates/4/index.md b/content/widget-tricks/dates/4/index.md index 202dfc274..c354c51fa 100644 --- a/content/widget-tricks/dates/4/index.md +++ b/content/widget-tricks/dates/4/index.md @@ -3,4 +3,4 @@ title: "Select current, past or next week" height: 700 --- -This is an extract of [the school canteen menu app](https://apps.opendatasoft.com/fr/canteen-menu) +This is an extract of [the school canteen menu app](https://apps.huwise.com/fr/canteen-menu) diff --git a/content/widget-tricks/dates/4/schema.md b/content/widget-tricks/dates/4/schema.md new file mode 100644 index 000000000..adace2f87 --- /dev/null +++ b/content/widget-tricks/dates/4/schema.md @@ -0,0 +1,17 @@ +**Dataset in use:** `menus-cantines` [(See it on rennes-metropole domain)](https://rennes-metropole.huwise.com/explore/dataset/menus-cantines/table/) + +**Fields in use:** + +| date (date) | secteur | code_entree | entree | code_plat | plat | code_legumes | legumes | code_laitage | laitage | +|---|---|---|---|---|---|---|---|---|---| +|2016-09-17|1|AB|Pamplemousse|VPF|Omelette|AB|Salade verte|EBR|Fromage| +|2010-12-01|2|BIO|Radis|VBF|Rôti de boeuf au jus|BIO|Frites|AB|Fromage blanc| +|2001-04-05|3|AB / BIO|Taboulé|SVP|Couscous de légumes|AB / BIO|Haricots verts|LOC|Yaourt nature| +|2018-03-15|1|EBR|Melon|AB/SVP|Gratin de boulgour|EBR|Haricots beurre|BIO|Petits suisses| + +|code_dessert | dessert | code_gouter | gouter | +|---|---|---|---| +|AB|Fruit de saison|M|Pain/ beurre/ barre chocolatée/ lait| +|BIO|Banane équitable|AB|Pain/ beurre/ corbeille de fruits/ lait ou fromage| +|AB / BIO|Banane|FLS|Pain/ confiture/ lait| +|AB/FLS|Pomme|BIO|Pain / beurre Barre chocolatée Lait| \ No newline at end of file diff --git a/content/widget-tricks/dates/5/schema.md b/content/widget-tricks/dates/5/schema.md new file mode 100644 index 000000000..4dd4370c6 --- /dev/null +++ b/content/widget-tricks/dates/5/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `evenements-publics-openagenda` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/evenements-publics-openagenda/table/) + +**Fields in use:** + +| date_start (date) | +|---| +|2016-09-17| +|2010-12-01| +|2001-04-05| +|2018-03-15| \ No newline at end of file diff --git a/content/widget-tricks/drill-down/1/schema.md b/content/widget-tricks/drill-down/1/schema.md new file mode 100644 index 000000000..7925da854 --- /dev/null +++ b/content/widget-tricks/drill-down/1/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `shanghai-world-university-ranking` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/shanghai-world-university-ranking/table/) + +**Fields in use:** + +| country | total_score (numeric) | university_name | +|---|---|---| +|United States|100|Harvard University| +|United Kingdom|72,6|University of Cambridge| +|Germany|34,8|Heidelberg University| +|China|34,1|Tsinghua University| \ No newline at end of file diff --git a/content/widget-tricks/drill-down/2/schema.md b/content/widget-tricks/drill-down/2/schema.md new file mode 100644 index 000000000..7925da854 --- /dev/null +++ b/content/widget-tricks/drill-down/2/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `shanghai-world-university-ranking` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/shanghai-world-university-ranking/table/) + +**Fields in use:** + +| country | total_score (numeric) | university_name | +|---|---|---| +|United States|100|Harvard University| +|United Kingdom|72,6|University of Cambridge| +|Germany|34,8|Heidelberg University| +|China|34,1|Tsinghua University| \ No newline at end of file diff --git a/content/widget-tricks/filter-as-list/index.md b/content/widget-tricks/filter-as-list/index.md index db8b51f29..8b3d00cd9 100644 --- a/content/widget-tricks/filter-as-list/index.md +++ b/content/widget-tricks/filter-as-list/index.md @@ -7,3 +7,6 @@ resources: - src: '*/' name: folder-:counter --- + +> **!! WARNING !!** This ressource is deprecated ! Please use `ods-select` instead. +> [Documentation available here](https://codelibrary.huwise.com/widget-tricks/ods-select/) \ No newline at end of file diff --git a/content/widget-tricks/heatmaps-custom/_1_heatmap_static_scale/schema.md b/content/widget-tricks/heatmaps-custom/_1_heatmap_static_scale/schema.md new file mode 100644 index 000000000..f92c9aad5 --- /dev/null +++ b/content/widget-tricks/heatmaps-custom/_1_heatmap_static_scale/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `comptage-velo-donnees-compteurs` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/comptage-velo-donnees-compteurs/table/) + +**Fields in use:** + +| nom_compteur | date (datetime) | sum_counts (numeric)| +|---|---|---| +|97 avenue Denfert Rochereau SO-NE|2020-10-01T04:00:00+02:00|70| +|100 rue La Fayette O-E|2021-01-30T06:00:00+02:00|15| +|10 avenue de la Grande Armée SE-NO|2020-12-01T13:00:00+02:00|22| +|87 avenue de Flandre NE-SO|2021-04-22T22:00:00+02:00|3| \ No newline at end of file diff --git a/content/widget-tricks/heatmaps-custom/_2_bubblemap_static_scale/schema.md b/content/widget-tricks/heatmaps-custom/_2_bubblemap_static_scale/schema.md new file mode 100644 index 000000000..f92c9aad5 --- /dev/null +++ b/content/widget-tricks/heatmaps-custom/_2_bubblemap_static_scale/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `comptage-velo-donnees-compteurs` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/comptage-velo-donnees-compteurs/table/) + +**Fields in use:** + +| nom_compteur | date (datetime) | sum_counts (numeric)| +|---|---|---| +|97 avenue Denfert Rochereau SO-NE|2020-10-01T04:00:00+02:00|70| +|100 rue La Fayette O-E|2021-01-30T06:00:00+02:00|15| +|10 avenue de la Grande Armée SE-NO|2020-12-01T13:00:00+02:00|22| +|87 avenue de Flandre NE-SO|2021-04-22T22:00:00+02:00|3| \ No newline at end of file diff --git a/content/widget-tricks/heatmaps-custom/_3_heatmap_dyn_rgb_scale/index.md b/content/widget-tricks/heatmaps-custom/_3_heatmap_dyn_rgb_scale/index.md index cdf496f20..921f180e0 100644 --- a/content/widget-tricks/heatmaps-custom/_3_heatmap_dyn_rgb_scale/index.md +++ b/content/widget-tricks/heatmaps-custom/_3_heatmap_dyn_rgb_scale/index.md @@ -13,6 +13,4 @@ Custom heatmaps or bubblemaps are made of a CSS grid, an `ods-adv-analysis` and Colors are RGB codes, computed of the aggregation value within the range of all values. Low and high colors values are set into `variables` object at the beginning of the code. -The toggle button, and the legend are independent of the grid and can be removed. - -> Note: It's much easier to deal with dates with Vega-Lite as it can split by day, day of the week, month with the labels and the correct ordering. We then strongly advice to go for [Vega-Lite heatmaps](/widget-tricks/heatmaps-vegalite) in that case. \ No newline at end of file +The toggle button, and the legend are independent of the grid and can be removed. \ No newline at end of file diff --git a/content/widget-tricks/heatmaps-custom/_3_heatmap_dyn_rgb_scale/schema.md b/content/widget-tricks/heatmaps-custom/_3_heatmap_dyn_rgb_scale/schema.md new file mode 100644 index 000000000..d617fcad3 --- /dev/null +++ b/content/widget-tricks/heatmaps-custom/_3_heatmap_dyn_rgb_scale/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `comptage-velo-donnees-compteurs` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/comptage-velo-donnees-compteurs/table/) + +**Fields in use:** + +| date (datetime) | sum_counts (numeric)| +|---|---| +|2020-10-01T04:00:00+02:00|70| +|2021-01-30T06:00:00+02:00|15| +|2020-12-01T13:00:00+02:00|22| +|2021-04-22T22:00:00+02:00|3| \ No newline at end of file diff --git a/content/widget-tricks/heatmaps-custom/_4_bubblemap_dyn_rgb_scale/schema.md b/content/widget-tricks/heatmaps-custom/_4_bubblemap_dyn_rgb_scale/schema.md new file mode 100644 index 000000000..d617fcad3 --- /dev/null +++ b/content/widget-tricks/heatmaps-custom/_4_bubblemap_dyn_rgb_scale/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `comptage-velo-donnees-compteurs` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/comptage-velo-donnees-compteurs/table/) + +**Fields in use:** + +| date (datetime) | sum_counts (numeric)| +|---|---| +|2020-10-01T04:00:00+02:00|70| +|2021-01-30T06:00:00+02:00|15| +|2020-12-01T13:00:00+02:00|22| +|2021-04-22T22:00:00+02:00|3| \ No newline at end of file diff --git a/content/widget-tricks/heatmaps-custom/_5_heatmap_dyn_rgb_scale_large_legend/schema.md b/content/widget-tricks/heatmaps-custom/_5_heatmap_dyn_rgb_scale_large_legend/schema.md new file mode 100644 index 000000000..53ebe8cf5 --- /dev/null +++ b/content/widget-tricks/heatmaps-custom/_5_heatmap_dyn_rgb_scale_large_legend/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `base-nationale-des-lieux-de-covoiturage-en-france` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/base-nationale-des-lieux-de-covoiturage-en-france/table/) + +**Fields in use:** + +| reg_name | spot_size (numeric)| spot_type | +|---|---|---| +|Centre-Val de Loire|100|Aire de covoiturage| +|Occitanie|5|Parking| +|Nouvelle-Aquitaine|24|Parking relais| +|Île-de-France|6|Auto-stop| \ No newline at end of file diff --git a/content/widget-tricks/heatmaps-custom/index.md b/content/widget-tricks/heatmaps-custom/index.md index e297295ea..12314e30b 100644 --- a/content/widget-tricks/heatmaps-custom/index.md +++ b/content/widget-tricks/heatmaps-custom/index.md @@ -9,11 +9,7 @@ resources: --- > We consider the usage of `ods-adv-analysis` as a prerequisite of this resource. -> [Documentation available here](https://help.opendatasoft.com/widgets/#/api/ods-widgets.directive:odsAdvAnalysis) - -> Did you see ? [Heatmaps with Vega-lite](/widget-tricks/heatmaps-vegalite) - -**If Vega-lite does not satisfy your needs**, for advanced usages, you can create heatmaps by hand with only HTML and CSS Grid. +> [Documentation available here](https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsAdvAnalysis) Keep in mind that, for heatmaps or bubblemaps, you'll need to adapt the display depending on the values, axis, and legends. diff --git a/content/widget-tricks/heatmaps-vegalite/1/schema.md b/content/widget-tricks/heatmaps-vegalite/1/schema.md new file mode 100644 index 000000000..d617fcad3 --- /dev/null +++ b/content/widget-tricks/heatmaps-vegalite/1/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `comptage-velo-donnees-compteurs` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/comptage-velo-donnees-compteurs/table/) + +**Fields in use:** + +| date (datetime) | sum_counts (numeric)| +|---|---| +|2020-10-01T04:00:00+02:00|70| +|2021-01-30T06:00:00+02:00|15| +|2020-12-01T13:00:00+02:00|22| +|2021-04-22T22:00:00+02:00|3| \ No newline at end of file diff --git a/content/widget-tricks/heatmaps-vegalite/2/schema.md b/content/widget-tricks/heatmaps-vegalite/2/schema.md new file mode 100644 index 000000000..dacccae7d --- /dev/null +++ b/content/widget-tricks/heatmaps-vegalite/2/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `observation-synop` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/observation-synop/table/) + +**Fields in use:** + +| date (datetime) | t (numeric)| +|---|---| +|2020-10-01T19:00:00+02:00|286.45| +|2021-01-30T16:00:00+02:00|303.45| +|2020-12-01T13:00:00+02:00|238.75| +|2021-04-22T10:00:00+02:00|340.85| \ No newline at end of file diff --git a/content/widget-tricks/heatmaps-vegalite/3/schema.md b/content/widget-tricks/heatmaps-vegalite/3/schema.md new file mode 100644 index 000000000..dacccae7d --- /dev/null +++ b/content/widget-tricks/heatmaps-vegalite/3/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `observation-synop` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/observation-synop/table/) + +**Fields in use:** + +| date (datetime) | t (numeric)| +|---|---| +|2020-10-01T19:00:00+02:00|286.45| +|2021-01-30T16:00:00+02:00|303.45| +|2020-12-01T13:00:00+02:00|238.75| +|2021-04-22T10:00:00+02:00|340.85| \ No newline at end of file diff --git a/content/widget-tricks/heatmaps-vegalite/4/schema.md b/content/widget-tricks/heatmaps-vegalite/4/schema.md new file mode 100644 index 000000000..d617fcad3 --- /dev/null +++ b/content/widget-tricks/heatmaps-vegalite/4/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `comptage-velo-donnees-compteurs` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/comptage-velo-donnees-compteurs/table/) + +**Fields in use:** + +| date (datetime) | sum_counts (numeric)| +|---|---| +|2020-10-01T04:00:00+02:00|70| +|2021-01-30T06:00:00+02:00|15| +|2020-12-01T13:00:00+02:00|22| +|2021-04-22T22:00:00+02:00|3| \ No newline at end of file diff --git a/content/widget-tricks/heatmaps-vegalite/5/schema.md b/content/widget-tricks/heatmaps-vegalite/5/schema.md new file mode 100644 index 000000000..73ec54448 --- /dev/null +++ b/content/widget-tricks/heatmaps-vegalite/5/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `observation-synop` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/observation-synop/table/) + +**Fields in use:** + +| date (datetime) | t (numeric)| nom_reg | +|---|---|---| +|2020-10-01T19:00:00+02:00|286.45|Bretagne| +|2021-01-30T16:00:00+02:00|303.45|Occitanie| +|2020-12-01T13:00:00+02:00|238.75|La Réunion| +|2021-04-22T10:00:00+02:00|340.85|Corse| \ No newline at end of file diff --git a/content/widget-tricks/heatmaps-vegalite/index.md b/content/widget-tricks/heatmaps-vegalite/index.md index 18a3a85aa..b75a5616c 100644 --- a/content/widget-tricks/heatmaps-vegalite/index.md +++ b/content/widget-tricks/heatmaps-vegalite/index.md @@ -3,6 +3,7 @@ title: "Heatmaps with Vega-Lite" date: 2021-06-16T14:46:16+02:00 description: "Vega-Lite heatmaps and bubblemaps in combination with ods-adv-analysis" tags: ["display", "ods-analysis", "aggregation"] +draft: true resources: - src: '*/' name: folder-:counter @@ -10,9 +11,9 @@ resources: **Vega-Lite** is a high-level grammar of interactive graphics. It provides a concise, declarative JSON syntax to create an expressive range of visualizations for data analysis and presentation. -[ods-vega-lite-chart](https://help.opendatasoft.com/widgets/#/api/ods-widgets.directive:odsVegaLiteChart) widget, in combinaison with `ods-adv-analysis` to get the data, allows adding Vega-Lite charts into your pages. +[ods-vega-lite-chart](https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsVegaLiteChart) widget, in combinaison with `ods-adv-analysis` to get the data, allows adding Vega-Lite charts into your pages. This first resource is an introduction and pre-requisite to understand key concepts of Vega-Lite within ODS. > We consider the usage of `ods-adv-analysis` as a pre-requisite of this resource. -> [Documentation available here](https://help.opendatasoft.com/widgets/#/api/ods-widgets.directive:odsAdvAnalysis) \ No newline at end of file +> [Documentation available here](https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsAdvAnalysis) \ No newline at end of file diff --git a/content/widget-tricks/ods-adv-analysis/1/css.inc b/content/widget-tricks/ods-adv-analysis/1/css.inc new file mode 100644 index 000000000..bf8898412 --- /dev/null +++ b/content/widget-tricks/ods-adv-analysis/1/css.inc @@ -0,0 +1,42 @@ +.range-slider-ctn { + display: flex; + flex-direction: column; + align-items: center; + margin: 13px 26px 32px 26px; +} + +.odswidget-date-range-slider { + width: 100%; +} + +.range-slider-reset-button { + margin-left: 0; + margin-top: 13px; + white-space: nowrap; + font-size: 12px; + padding: 3px 6px; + line-height: 0; + background-color: #e1e4e9; + border-radius: 4px; +} + +.range-slider-reset-button:not(.range-slider-reset-button-disabled):hover { + opacity: 0.65; +} + +.range-slider-reset-button-disabled { + opacity: 0.5; + pointer-event: none; + text-decoration: none; +} + +@media screen and (min-width: 500px) { + .range-slider-ctn { + flex-direction: row; + } + + .range-slider-reset-button { + margin-left: 50px; + margin-top: 0; + } +} \ No newline at end of file diff --git a/content/widget-tricks/ods-adv-analysis/1/html.inc b/content/widget-tricks/ods-adv-analysis/1/html.inc new file mode 100644 index 000000000..7c49f7568 --- /dev/null +++ b/content/widget-tricks/ods-adv-analysis/1/html.inc @@ -0,0 +1,72 @@ +
    +

    Simple example to get and display the min and max of a date

    + +
    +

    ods-adv-analysis result:

    +
    +
    +

    Min timestamp: {{ dateanalysis[0].mindate | date : 'medium' }}

    +

    Max timestamp: {{ dateanalysis[0].maxdate | date : 'medium' }}

    +
    +
    +
    {{ dateanalysis }}
    +
    +
    +
    +
    + +
    + +

    Useful example with an ods-date-range-slider

    + + +
    + + +
    + + {{ bounds.min = (dateanalysis[0].mindate | moment : 'YYYY-MM-DD') ; '' }} + {{ bounds.max = (dateanalysis[0].maxdate | moment : 'YYYY-MM-DD') ; '' }} +
    + + + + + + +
    + The entire period +
    +
    + + + +
    +
    \ No newline at end of file diff --git a/content/widget-tricks/ods-adv-analysis/1/index.md b/content/widget-tricks/ods-adv-analysis/1/index.md new file mode 100644 index 000000000..df4a3b636 --- /dev/null +++ b/content/widget-tricks/ods-adv-analysis/1/index.md @@ -0,0 +1,10 @@ +--- +title: "Get the oldest (min) and newest (max) date in a field" +date: 2021-08-12T10:00:00+02:00 +--- + +`min` and `max` function can also work on date format field. It's very useful to get the date range covered by the dataset on a specific field. + +It can for example be used to initialise an `ods-date-range-slider` with the correct bounds. + +[ods-date-range-slider documentation](https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsDateRangeSlider) \ No newline at end of file diff --git a/content/widget-tricks/ods-adv-analysis/1/schema.md b/content/widget-tricks/ods-adv-analysis/1/schema.md new file mode 100644 index 000000000..2bee8b999 --- /dev/null +++ b/content/widget-tricks/ods-adv-analysis/1/schema.md @@ -0,0 +1,12 @@ +**Dataset in use:** `ods-api-monitoring`. + +Get it on your domain by replacing `{{domainid}}` by your domainid in the following url: `https://{{domainid}}.huwise.com/explore/dataset/ods-api-monitoring/table/?source=monitoring&refine.domain_id={{domainid}}` + +**Fields in use:** + +| timestamp (datetime) | +|---| +|2021-10-01T04:00:00+02:00| +|2021-10-30T06:00:00+02:00| +|2021-10-01T13:00:00+02:00| +|2021-10-22T22:00:00+02:00| \ No newline at end of file diff --git a/public/widget-tricks/heatmaps-vegalite/4/css.inc b/content/widget-tricks/ods-adv-analysis/2/css.inc similarity index 100% rename from public/widget-tricks/heatmaps-vegalite/4/css.inc rename to content/widget-tricks/ods-adv-analysis/2/css.inc diff --git a/content/widget-tricks/ods-adv-analysis/2/html.inc b/content/widget-tricks/ods-adv-analysis/2/html.inc new file mode 100644 index 000000000..aeace62dc --- /dev/null +++ b/content/widget-tricks/ods-adv-analysis/2/html.inc @@ -0,0 +1,23 @@ + +
    + +

    How many hits per day on Userclub domain, this past week ?

    +
      +
    • + {{ item.total | number }} hits on {{ item.date | date }} +
    • +
    + +

    Average number of hits on Userclub domain, this past week

    +
    + An average of {{ results[0].dayavg | number:0 }} hits per day +
    +
    +
    diff --git a/content/widget-tricks/ods-adv-analysis/2/index.md b/content/widget-tricks/ods-adv-analysis/2/index.md new file mode 100644 index 000000000..e922288ec --- /dev/null +++ b/content/widget-tricks/ods-adv-analysis/2/index.md @@ -0,0 +1,14 @@ +--- +title: "Sub-aggregation after ods-adv-analysis" +height: 400 +--- + +The `ods-adv-analysis` widget can be use in conjunction with `ods-subaggregation`. + +It will perform a second aggregation after the API result. + +In the example, we use this technique to perform a daily average over a week, (from a second precision timeserie). +1. `ods-adv-analysis` groups record by day over the last 7 days, and returns the total number of hits for each day. +2. `ods-subaggregation` computes the average of hits by day. + +[ods-subaggregation documentation](https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsSubaggregation) \ No newline at end of file diff --git a/content/widget-tricks/ods-adv-analysis/2/schema.md b/content/widget-tricks/ods-adv-analysis/2/schema.md new file mode 100644 index 000000000..e8dbddf91 --- /dev/null +++ b/content/widget-tricks/ods-adv-analysis/2/schema.md @@ -0,0 +1,12 @@ +**Dataset in use:** `ods-api-monitoring`. + +Get it on your domain by replacing `{{domainid}}` by your domainid in the following url: `https://{{domainid}}.huwise.com/explore/dataset/ods-api-monitoring/table/?source=monitoring&refine.domain_id={{domainid}}` + +**Fields in use:** + +| timestamp (datetime) | nhits (numeric)| +|---|---| +|2021-10-01T04:00:00+02:00|582| +|2021-10-30T06:00:00+02:00|24,389| +|2021-10-01T13:00:00+02:00|1,233| +|2021-10-22T22:00:00+02:00|734| \ No newline at end of file diff --git a/content/widget-tricks/ods-adv-analysis/index.md b/content/widget-tricks/ods-adv-analysis/index.md new file mode 100644 index 000000000..9d5ac7825 --- /dev/null +++ b/content/widget-tricks/ods-adv-analysis/index.md @@ -0,0 +1,14 @@ +--- +title: "ods-adv-analysis" +date: 2021-08-12T10:00:00+02:00 +description: "Various examples to showcase ods-adv-analysis. This widget exposes the results of an aggregation through the API V2." +tags: ["aggregation"] +resources: +- src: '*/' + name: folder-:counter +--- + +The `ods-adv-analysis` widget exposes the results of an aggregation function over a context. +It uses the [ODS Explore API V2](https://help.huwise.com/apis/ods-explore-v2/) and its [ODSQL language](https://help.huwise.com/apis/ods-explore-v2/#section/Huwise-Query-Language-(ODSQL)). + +[ods-adv-analysis documentation](https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsAdvAnalysis) \ No newline at end of file diff --git a/content/widget-tricks/ods-aggregation/1/schema.md b/content/widget-tricks/ods-aggregation/1/schema.md new file mode 100644 index 000000000..3a327d507 --- /dev/null +++ b/content/widget-tricks/ods-aggregation/1/schema.md @@ -0,0 +1,4 @@ +**Dataset in use:** `us-hospitals` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/us-hospitals/table/) + +**Fields in use:** +none: count function \ No newline at end of file diff --git a/content/widget-tricks/ods-aggregation/2/schema.md b/content/widget-tricks/ods-aggregation/2/schema.md new file mode 100644 index 000000000..8dc0eb4c9 --- /dev/null +++ b/content/widget-tricks/ods-aggregation/2/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `observation-synop` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/observation-synop/table/) + +**Fields in use:** + +| u (decimal) | tc (decimal)| +|---|---| +|82|22.400| +|93|30.5| +|27|15.5| +|60|14| \ No newline at end of file diff --git a/content/widget-tricks/ods-aggregation/3/schema.md b/content/widget-tricks/ods-aggregation/3/schema.md new file mode 100644 index 000000000..74423c656 --- /dev/null +++ b/content/widget-tricks/ods-aggregation/3/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `us-hospitals` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/us-hospitals/table/) + +**Fields in use:** + +| helipad| +|---| +|Y| +|N| +|Not Available| +|Y| \ No newline at end of file diff --git a/content/widget-tricks/ods-aggregation/4/schema.md b/content/widget-tricks/ods-aggregation/4/schema.md new file mode 100644 index 000000000..7e6c46137 --- /dev/null +++ b/content/widget-tricks/ods-aggregation/4/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `communes-et-arrondissements-municipaux-millesime-france` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/communes-et-arrondissements-municipaux-millesime-france/table/) + +**Fields in use:** + +| year (date)| +|---| +|2015| +|2017| +|2020| +|2021| \ No newline at end of file diff --git a/content/widget-tricks/ods-aggregation/5/schema.md b/content/widget-tricks/ods-aggregation/5/schema.md new file mode 100644 index 000000000..83c45d3b7 --- /dev/null +++ b/content/widget-tricks/ods-aggregation/5/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `us-hospitals` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/us-hospitals/table/) + +**Fields in use:** + +| geo_point (geo_point_2d)| +|---| +|[34.69553069,-82.98721979]| +|[40.673121466,-75.365457125]| +|[38.578735152,-109.563613143]| +|[41.491227149,-112.025755668]| \ No newline at end of file diff --git a/content/widget-tricks/ods-aggregation/6/schema.md b/content/widget-tricks/ods-aggregation/6/schema.md new file mode 100644 index 000000000..1056b57b0 --- /dev/null +++ b/content/widget-tricks/ods-aggregation/6/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `us-hospitals` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/us-hospitals/table/) + +**Fields in use:** + +| beds (numeric)| +|---| +|132| +|31| +|54| +|98| \ No newline at end of file diff --git a/content/widget-tricks/ods-analysis/1/html.inc b/content/widget-tricks/ods-analysis/1/html.inc index ae73c21e1..0fefa4223 100644 --- a/content/widget-tricks/ods-analysis/1/html.inc +++ b/content/widget-tricks/ods-analysis/1/html.inc @@ -1,6 +1,6 @@
    diff --git a/content/widget-tricks/ods-analysis/1/schema.md b/content/widget-tricks/ods-analysis/1/schema.md new file mode 100644 index 000000000..4cb84a5af --- /dev/null +++ b/content/widget-tricks/ods-analysis/1/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `shanghai-world-university-ranking` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/shanghai-world-university-ranking/table/) + +**Fields in use:** + +| university_name | pub (decimal)| alumni (decimal)| award (decimal) +|---|---|---|---| +|Harvard University|100|100|100| +|University of Cambridge|70.9|96.3|91.5| +|Heidelberg University|53.6|19.7|25| +|Tsinghua University|74.6|10.2|0| \ No newline at end of file diff --git a/content/widget-tricks/ods-analysis/2/html.inc b/content/widget-tricks/ods-analysis/2/html.inc index 90f1c47c8..aefef26e5 100644 --- a/content/widget-tricks/ods-analysis/2/html.inc +++ b/content/widget-tricks/ods-analysis/2/html.inc @@ -1,12 +1,12 @@ + population-domain="userclub" + population-dataset="demographyref-france-pop-legale-commune-arrondissement-municipal">
    - + @@ -16,7 +16,7 @@
    diff --git a/content/widget-tricks/ods-analysis/2/index.md b/content/widget-tricks/ods-analysis/2/index.md index 57096233f..c8c8be13d 100644 --- a/content/widget-tricks/ods-analysis/2/index.md +++ b/content/widget-tricks/ods-analysis/2/index.md @@ -3,4 +3,4 @@ title: "Top 10" height: 500 --- -Like with charts, it's conveniant to use ods-analysis to sort aggregations by the computed serie (like for exemple the sum or average of numerical fields). In this example, the ods-analysis results object is used to print lines of an HTML table to display the information as a table. +Like with charts, it's conveniant to use ods-analysis to sort aggregations by the computed serie (like for example the sum or average of numerical fields). In this example, the ods-analysis results object is used to print lines of an HTML table to display the information as a table. diff --git a/content/widget-tricks/ods-analysis/2/schema.md b/content/widget-tricks/ods-analysis/2/schema.md new file mode 100644 index 000000000..cc6c8a985 --- /dev/null +++ b/content/widget-tricks/ods-analysis/2/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `demographyref-france-pop-legale-commune-arrondissement-municipal` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/demographyref-france-pop-legale-commune-arrondissement-municipal/table/) + +**Fields in use:** + +| nom_officiel_commune_arrondissement_municipal | population_totale (numeric)| +|---|---| +|Toulouse|491.942| +|Nice|343.889| +|Nantes|319.284| +|Montpellier|293.410| \ No newline at end of file diff --git a/content/widget-tricks/ods-analysis/3/html.inc b/content/widget-tricks/ods-analysis/3/html.inc index 85796c04b..022631b5f 100644 --- a/content/widget-tricks/ods-analysis/3/html.inc +++ b/content/widget-tricks/ods-analysis/3/html.inc @@ -1,6 +1,6 @@ + shanghai-domain="userclub">

    @@ -32,7 +32,7 @@
    + shanghai-domain="userclub">
    + population-domain="userclub" + population-dataset="demographyref-france-pop-legale-commune-arrondissement-municipal">
    - + @@ -27,7 +27,7 @@
    diff --git a/content/widget-tricks/ods-analysis/4/schema.md b/content/widget-tricks/ods-analysis/4/schema.md new file mode 100644 index 000000000..cc6c8a985 --- /dev/null +++ b/content/widget-tricks/ods-analysis/4/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `demographyref-france-pop-legale-commune-arrondissement-municipal` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/demographyref-france-pop-legale-commune-arrondissement-municipal/table/) + +**Fields in use:** + +| nom_officiel_commune_arrondissement_municipal | population_totale (numeric)| +|---|---| +|Toulouse|491.942| +|Nice|343.889| +|Nantes|319.284| +|Montpellier|293.410| \ No newline at end of file diff --git a/content/widget-tricks/ods-analysis/5/html.inc b/content/widget-tricks/ods-analysis/5/html.inc index f87fa94d3..f8125a43c 100644 --- a/content/widget-tricks/ods-analysis/5/html.inc +++ b/content/widget-tricks/ods-analysis/5/html.inc @@ -1,13 +1,12 @@ + populationmillesime-domain="userclub" + populationmillesime-dataset="demographyref-france-pop-legale-commune-arrondissement-municipal">
    - + + label-y="2018 Census population" color="#142E7B" display-values="true" scientific-display="true"> @@ -19,7 +18,7 @@

    - Population evolution in {{ analysehomemadechart.x }} since 2006 + Population evolution in {{ analysehomemadechart.x }} since 2015

    + historic-domain="userclub" + historic-dataset="demographyref-france-pop-legale-commune-arrondissement-municipal-millesime" + historic-parameters="{'q': 'nom_officiel_commune_arrondissement_municipal:"' + analysehomemadechart.x + '"'}">
    + diff --git a/content/widget-tricks/ods-color-gradient/1/schema.md b/content/widget-tricks/ods-color-gradient/1/schema.md new file mode 100644 index 000000000..e638fe455 --- /dev/null +++ b/content/widget-tricks/ods-color-gradient/1/schema.md @@ -0,0 +1,17 @@ +**Fields in use in :** `departements-et-collectivites-doutre-mer-france` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/departements-et-collectivites-doutre-mer-france/table/) + +| dep_code | +|---| +|74| +|01| +|44| +|46| + +**Fields in use in :** `base-nationale-des-lieux-de-covoiturage-en-france` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/base-nationale-des-lieux-de-covoiturage-en-france/table/) + +| dep_code | +|---| +|74| +|01| +|44| +|46| \ No newline at end of file diff --git a/content/widget-tricks/ods-color-gradient/2/html.inc b/content/widget-tricks/ods-color-gradient/2/html.inc index 74702f52d..fa98e0a14 100644 --- a/content/widget-tricks/ods-color-gradient/2/html.inc +++ b/content/widget-tricks/ods-color-gradient/2/html.inc @@ -1,8 +1,7 @@ - +
    diff --git a/content/widget-tricks/ods-color-gradient/2/schema.md b/content/widget-tricks/ods-color-gradient/2/schema.md new file mode 100644 index 000000000..e638fe455 --- /dev/null +++ b/content/widget-tricks/ods-color-gradient/2/schema.md @@ -0,0 +1,17 @@ +**Fields in use in :** `departements-et-collectivites-doutre-mer-france` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/departements-et-collectivites-doutre-mer-france/table/) + +| dep_code | +|---| +|74| +|01| +|44| +|46| + +**Fields in use in :** `base-nationale-des-lieux-de-covoiturage-en-france` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/base-nationale-des-lieux-de-covoiturage-en-france/table/) + +| dep_code | +|---| +|74| +|01| +|44| +|46| \ No newline at end of file diff --git a/content/widget-tricks/ods-color-gradient/3/html.inc b/content/widget-tricks/ods-color-gradient/3/html.inc index a35a3805c..821749875 100644 --- a/content/widget-tricks/ods-color-gradient/3/html.inc +++ b/content/widget-tricks/ods-color-gradient/3/html.inc @@ -1,8 +1,7 @@ - +
    diff --git a/content/widget-tricks/ods-color-gradient/3/schema.md b/content/widget-tricks/ods-color-gradient/3/schema.md new file mode 100644 index 000000000..e638fe455 --- /dev/null +++ b/content/widget-tricks/ods-color-gradient/3/schema.md @@ -0,0 +1,17 @@ +**Fields in use in :** `departements-et-collectivites-doutre-mer-france` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/departements-et-collectivites-doutre-mer-france/table/) + +| dep_code | +|---| +|74| +|01| +|44| +|46| + +**Fields in use in :** `base-nationale-des-lieux-de-covoiturage-en-france` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/base-nationale-des-lieux-de-covoiturage-en-france/table/) + +| dep_code | +|---| +|74| +|01| +|44| +|46| \ No newline at end of file diff --git a/content/widget-tricks/ods-color-gradient/4/html.inc b/content/widget-tricks/ods-color-gradient/4/html.inc index 0a4127e96..b4a8b31eb 100644 --- a/content/widget-tricks/ods-color-gradient/4/html.inc +++ b/content/widget-tricks/ods-color-gradient/4/html.inc @@ -1,8 +1,7 @@ - +
    diff --git a/content/widget-tricks/ods-color-gradient/4/schema.md b/content/widget-tricks/ods-color-gradient/4/schema.md new file mode 100644 index 000000000..e638fe455 --- /dev/null +++ b/content/widget-tricks/ods-color-gradient/4/schema.md @@ -0,0 +1,17 @@ +**Fields in use in :** `departements-et-collectivites-doutre-mer-france` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/departements-et-collectivites-doutre-mer-france/table/) + +| dep_code | +|---| +|74| +|01| +|44| +|46| + +**Fields in use in :** `base-nationale-des-lieux-de-covoiturage-en-france` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/base-nationale-des-lieux-de-covoiturage-en-france/table/) + +| dep_code | +|---| +|74| +|01| +|44| +|46| \ No newline at end of file diff --git a/content/widget-tricks/ods-color-gradient/5/html.inc b/content/widget-tricks/ods-color-gradient/5/html.inc index 823778883..ffd4bb003 100644 --- a/content/widget-tricks/ods-color-gradient/5/html.inc +++ b/content/widget-tricks/ods-color-gradient/5/html.inc @@ -1,8 +1,7 @@ - + diff --git a/content/widget-tricks/ods-color-gradient/5/schema.md b/content/widget-tricks/ods-color-gradient/5/schema.md new file mode 100644 index 000000000..4c97eac25 --- /dev/null +++ b/content/widget-tricks/ods-color-gradient/5/schema.md @@ -0,0 +1,17 @@ +**Fields in use in `departements-et-collectivites-doutre-mer-france` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/departements-et-collectivites-doutre-mer-france/table/)** + +| dep_code | geo_shape (geo_shape) | +|------|-----| +|75|{"type": "Polygon", "coordinates": [[...]]}| +|2B|{"type": "Polygon", "coordinates": [[...]]}| +|61|{"type": "Polygon", "coordinates": [[...]]}| +|29|{"type": "Polygon", "coordinates": [[...]]}| + +**Field in use in `base-nationale-des-lieux-de-covoiturage-en-france` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/base-nationale-des-lieux-de-covoiturage-en-france/table/)** + +| dep_code | +|------| +|75| +|2B| +|61| +|29| \ No newline at end of file diff --git a/content/widget-tricks/ods-date-range-slider/1/html.inc b/content/widget-tricks/ods-date-range-slider/1/html.inc index 7630f4a13..99b811747 100644 --- a/content/widget-tricks/ods-date-range-slider/1/html.inc +++ b/content/widget-tricks/ods-date-range-slider/1/html.inc @@ -1,6 +1,6 @@

    Date de début de l'événement diff --git a/content/widget-tricks/ods-date-range-slider/1/schema.md b/content/widget-tricks/ods-date-range-slider/1/schema.md new file mode 100644 index 000000000..75fd361a8 --- /dev/null +++ b/content/widget-tricks/ods-date-range-slider/1/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `evenements-publics-openagenda` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/evenements-publics-openagenda/table/) + +**Fields in use:** + +| date_start (date) | +|---| +|2016-09-17| +|2019-03-07| +|2021-12-30| +|2020-02-22| diff --git a/content/widget-tricks/ods-date-range-slider/2/html.inc b/content/widget-tricks/ods-date-range-slider/2/html.inc index b2657646c..bec8cc139 100644 --- a/content/widget-tricks/ods-date-range-slider/2/html.inc +++ b/content/widget-tricks/ods-date-range-slider/2/html.inc @@ -1,6 +1,6 @@ + ctx-domain="userclub">

    Classement de Shanghai des universités - moyenne du score par ans

    diff --git a/content/widget-tricks/ods-date-range-slider/2/schema.md b/content/widget-tricks/ods-date-range-slider/2/schema.md new file mode 100644 index 000000000..4b930419a --- /dev/null +++ b/content/widget-tricks/ods-date-range-slider/2/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `shanghai-world-university-ranking` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/shanghai-world-university-ranking/table/) + +**Fields in use:** + +| year (date) | university_name | total_score(integer) | +|---|---|---| +|2016|Harvard University|100| +|2005|Cornell University|54.6| +|2010|University College London|44.4| +|2018|Kyoto University|36.4| diff --git a/content/widget-tricks/ods-date-range-slider/3/html.inc b/content/widget-tricks/ods-date-range-slider/3/html.inc index 749b22e81..7d1a9814d 100644 --- a/content/widget-tricks/ods-date-range-slider/3/html.inc +++ b/content/widget-tricks/ods-date-range-slider/3/html.inc @@ -1,6 +1,6 @@ + ctx-dataset="shanghai-world-university-ranking" + ctx-domain="userclub">

    Ods-date-range-slider by year

    diff --git a/content/widget-tricks/ods-date-range-slider/3/schema.md b/content/widget-tricks/ods-date-range-slider/3/schema.md new file mode 100644 index 000000000..c2d8299be --- /dev/null +++ b/content/widget-tricks/ods-date-range-slider/3/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `shanghai-world-university-ranking` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/shanghai-world-university-ranking/table/) + +**Fields in use:** + +| year (date) | +|---| +|2016| +|2005| +|2010| +|2018| diff --git a/content/widget-tricks/ods-date-range-slider/4/html.inc b/content/widget-tricks/ods-date-range-slider/4/html.inc index 5ea18c22f..603af190a 100644 --- a/content/widget-tricks/ods-date-range-slider/4/html.inc +++ b/content/widget-tricks/ods-date-range-slider/4/html.inc @@ -4,7 +4,9 @@ ctx-dataset="evenements-publics-openagenda" ctx-parameters="{'sort':'-date_start'}" ctxdate-dataset="evenements-publics-openagenda" - ctxdate-parameters="{'q':'date_start:[2007 TO #now(years=+3)]'}"> + ctxdate-parameters="{'q':'date_start:[2007 TO #now(years=+3)]'}" + ctx-domain="userclub" + ctxdate-domain="userclub">
    diff --git a/content/widget-tricks/ods-date-range-slider/4/schema.md b/content/widget-tricks/ods-date-range-slider/4/schema.md new file mode 100644 index 000000000..75fd361a8 --- /dev/null +++ b/content/widget-tricks/ods-date-range-slider/4/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `evenements-publics-openagenda` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/evenements-publics-openagenda/table/) + +**Fields in use:** + +| date_start (date) | +|---| +|2016-09-17| +|2019-03-07| +|2021-12-30| +|2020-02-22| diff --git a/content/widget-tricks/ods-date-range-slider/5/html.inc b/content/widget-tricks/ods-date-range-slider/5/html.inc index c8dd520d0..450ed6352 100644 --- a/content/widget-tricks/ods-date-range-slider/5/html.inc +++ b/content/widget-tricks/ods-date-range-slider/5/html.inc @@ -4,7 +4,9 @@ ctx-dataset="evenements-publics-openagenda" ctx-parameters="{'sort':'-date_start'}" ctxdate-dataset="evenements-publics-openagenda" - ctxdate-parameters="{'q':'date_start:[2007 TO #now(years=+3)]'}"> + ctxdate-parameters="{'q':'date_start:[2007 TO #now(years=+3)]'}" + ctx-domain="userclub" + ctxdate-domain="userclub">
    diff --git a/content/widget-tricks/ods-date-range-slider/5/schema.md b/content/widget-tricks/ods-date-range-slider/5/schema.md new file mode 100644 index 000000000..75fd361a8 --- /dev/null +++ b/content/widget-tricks/ods-date-range-slider/5/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `evenements-publics-openagenda` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/evenements-publics-openagenda/table/) + +**Fields in use:** + +| date_start (date) | +|---| +|2016-09-17| +|2019-03-07| +|2021-12-30| +|2020-02-22| diff --git a/content/widget-tricks/ods-date-range-slider/6/html.inc b/content/widget-tricks/ods-date-range-slider/6/html.inc index f257632b5..e67fe1440 100644 --- a/content/widget-tricks/ods-date-range-slider/6/html.inc +++ b/content/widget-tricks/ods-date-range-slider/6/html.inc @@ -4,7 +4,9 @@ ctx-dataset="evenements-publics-openagenda" ctx-parameters="{'sort':'-date_start'}" ctxdate-dataset="evenements-publics-openagenda" - ctxdate-parameters="{'q':'date_start:[2007 TO #now(years=+3)]'}"> + ctxdate-parameters="{'q':'date_start:[2007 TO #now(years=+3)]'}" + ctx-domain="userclub" + ctxdate-domain="userclub">
    diff --git a/content/widget-tricks/ods-date-range-slider/6/schema.md b/content/widget-tricks/ods-date-range-slider/6/schema.md new file mode 100644 index 000000000..75fd361a8 --- /dev/null +++ b/content/widget-tricks/ods-date-range-slider/6/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `evenements-publics-openagenda` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/evenements-publics-openagenda/table/) + +**Fields in use:** + +| date_start (date) | +|---| +|2016-09-17| +|2019-03-07| +|2021-12-30| +|2020-02-22| diff --git a/content/widget-tricks/ods-map-css/1/schema.md b/content/widget-tricks/ods-map-css/1/schema.md new file mode 100644 index 000000000..41b4e8632 --- /dev/null +++ b/content/widget-tricks/ods-map-css/1/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `shanghai-world-university-ranking` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/shanghai-world-university-ranking/table/) + +**Fields in use:** + +| geo_shape (geo_shape) | world_rank_int(integer) | total_score(integer) | +|---|---|---| +|{"type": "MultiPolygon", "coordinates": [[...]]}|1|100| +|{"type": "MultiPolygon", "coordinates": [[...]]}|10|54.6| +|{"type": "MultiPolygon", "coordinates": [[...]]}|18|44.4| +|{"type": "Polygon", "coordinates": [[...]]}|33|36.4| diff --git a/content/widget-tricks/ods-map-css/2/schema.md b/content/widget-tricks/ods-map-css/2/schema.md new file mode 100644 index 000000000..36345ac2f --- /dev/null +++ b/content/widget-tricks/ods-map-css/2/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `shanghai-world-university-ranking` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/shanghai-world-university-ranking/table/) + +**Fields in use:** + +| geo_shape (geo_shape) | world_rank_int(integer) | total_score(integer) | +|---|---|---| +|{"type": "Polygon", "coordinates": [[...]]}|1|100| +|{"type": "MultiPolygon", "coordinates": [[...]]}|10|54.6| +|{"type": "MultiPolygon", "coordinates": [[...]]}|18|44.4| +|{"type": "MultiPolygon", "coordinates": [[...]]}|33|36.4| diff --git a/content/widget-tricks/ods-map-css/3/schema.md b/content/widget-tricks/ods-map-css/3/schema.md new file mode 100644 index 000000000..42ffb225c --- /dev/null +++ b/content/widget-tricks/ods-map-css/3/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `shanghai-world-university-ranking` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/shanghai-world-university-ranking/table/) + +**Fields in use:** + +| geo_shape (geo_shape) | world_rank_int(integer) | +|---|---| +|{"type": "Polygon", "coordinates": [[...]]}|1| +|{"type": "MultiPolygon", "coordinates": [[...]]}|10| +|{"type": "MultiPolygon", "coordinates": [[...]]}|18| +|{"type": "Polygon", "coordinates": [[...]]}|33| diff --git a/content/widget-tricks/ods-map-css/4/schema.md b/content/widget-tricks/ods-map-css/4/schema.md new file mode 100644 index 000000000..42ffb225c --- /dev/null +++ b/content/widget-tricks/ods-map-css/4/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `shanghai-world-university-ranking` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/shanghai-world-university-ranking/table/) + +**Fields in use:** + +| geo_shape (geo_shape) | world_rank_int(integer) | +|---|---| +|{"type": "Polygon", "coordinates": [[...]]}|1| +|{"type": "MultiPolygon", "coordinates": [[...]]}|10| +|{"type": "MultiPolygon", "coordinates": [[...]]}|18| +|{"type": "Polygon", "coordinates": [[...]]}|33| diff --git a/content/widget-tricks/ods-map-css/5/html.inc b/content/widget-tricks/ods-map-css/5/html.inc index dd71dc410..fdbba4fbf 100644 --- a/content/widget-tricks/ods-map-css/5/html.inc +++ b/content/widget-tricks/ods-map-css/5/html.inc @@ -1,9 +1,9 @@
    @@ -27,7 +27,7 @@ + context="opendatasoftofficespublic" color="#336179" picto="ods-circle" show-marker="true" display="auto" shape-opacity="0.5" point-opacity="1" border-color="#FFFFFF" border-opacity="1" border-size="1" border-pattern="solid" caption="true" title="Huwise Offices" description="This dataset contains the list of all Huwise headquarters and local offices, worldwide." size="4" size-min="3" size-max="5" size-function="linear"> * { + margin: 5px 0; +} + +.advanced-kpi--middle .value { + color: var(--highlight); + font-weight: 500; + font-size: 2rem; +} + +.advanced-kpi--bottom { + font-size: 0.8em; +} diff --git a/content/widget-tricks/ods-map-tricks/6/html.inc b/content/widget-tricks/ods-map-tricks/6/html.inc new file mode 100644 index 000000000..d7ccbc0a1 --- /dev/null +++ b/content/widget-tricks/ods-map-tricks/6/html.inc @@ -0,0 +1,119 @@ +
    + + +
    + +

    + Number of pharmacies by department +

    +

    + Click on a department for more details +

    +
    + + + + +
    +
    +
    +
    +

    + Aggregation value +

    +

    + used to color the map +

    +
    +
    +

    + {{ colorgradient['values'][refinectx.parameters['refine.dep_code']] | number }} +

    +
    +
    + Selected key : {{ refinectx.parameters['refine.dep_code'].join('') || refinectx.parameters['refine.dep_code'] }} +
    +
    +
    + +
    +
    +
    +

    + Department name +

    +

    + from the filtered geo ref context +

    +
    +
    +

    + {{ results[0].fields.dep_name }} +

    +
    +
    + Value from an ods-results +
    +
    +
    + +
    +
    +
    +

    + % of pharmacies in France +

    +

    + in {{ results[0].fields.dep_name }} +

    +
    +
    +

    + {{ colorgradient['values'][refinectx.parameters['refine.dep_code']] / dataanalysis[0].count * 100 | number : 1 }} % +

    +
    +
    + Aggregation compared with an analysis on the data context +
    +
    +
    +
    +
    +
    +
    +
    diff --git a/content/widget-tricks/ods-map-tricks/6/index.md b/content/widget-tricks/ods-map-tricks/6/index.md new file mode 100644 index 000000000..96437d728 --- /dev/null +++ b/content/widget-tricks/ods-map-tricks/6/index.md @@ -0,0 +1,11 @@ +--- +title: "Replace map tooltip with a refine : see the aggregation !" +height: 700 +date: "2022-03-30" +--- + +In this example, in combination with [`ods-color-gradient` to display a choropleth map](/widget-tricks/ods-color-gradient/), the `refineOnClick` is used to select a department and activate KPI cards on top of the map. + +- the first KPI card displays the aggregation result from `ods-color-gradient` and display it's value +- the second KPI card get the name of the selected department, through an `ods-results` on the refined context +- the third KPI card computes a new aggregation with `ods-adv-analysis` diff --git a/content/widget-tricks/ods-map-tricks/6/schema.md b/content/widget-tricks/ods-map-tricks/6/schema.md new file mode 100644 index 000000000..95515f91f --- /dev/null +++ b/content/widget-tricks/ods-map-tricks/6/schema.md @@ -0,0 +1,22 @@ +**Dataset in use:** `healthref-france-finess` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/healthref-france-finess/table/) + +**Fields in use:** + +|libelle_categorie_d_etablissement|departement| +|---|---| +|Centre de Jour pour Personnes Agées|68| +|Entreprise adaptée|68| +|Pharmacie d'Officine|68| +|Pharmacie d'Officine|68| + +**Dataset in use:** `departements-et-collectivites-doutre-mer-france` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/departements-et-collectivites-doutre-mer-france/table/) + +**Fields in use:** + +|dep_code|geo_shape| +|---|---| +|42|"{""coordinates"": [[[4.483136621396388, 45.23656983554515], [4.509202633532227, 45.23117302861005], [4.51960803235719| +|93|"{""coordinates"": [[[2.319887174744136, 48.900459782103866], [2.384530045616338, 48.90214759336665], [2.3976678263491| +|50|"{""coordinates"": [[[-1.140276171655211, 49.30875558686156], [-1.114128814321206, 49.32691733740976], [-1.118082843973| +|58|"{""coordinates"": [[[2.874491172560131, 47.52034735555759], [2.888458633258486, 47.50943098546669], [2.90038057308859| + diff --git a/content/widget-tricks/ods-map-tricks/index.md b/content/widget-tricks/ods-map-tricks/index.md index 41c69502b..39d271bb1 100644 --- a/content/widget-tricks/ods-map-tricks/index.md +++ b/content/widget-tricks/ods-map-tricks/index.md @@ -2,6 +2,7 @@ title: "ods-map: Refine & Zoom" description: "Showcase how the map can be used as a selector through the refine-on-click option. It also provides an example to show/hide map layers depending on the zoom" tags: ["ods-maps", "map", "geo", "filter", "display"] +date: "2022-03-30" height: 680 resources: - src: "*/" diff --git a/content/widget-tricks/ods-results/1/schema.md b/content/widget-tricks/ods-results/1/schema.md new file mode 100644 index 000000000..d32e3b0fb --- /dev/null +++ b/content/widget-tricks/ods-results/1/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `belgium-statistical-districts` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/belgium-statistical-districts/table/) + +**Fields in use:** + +| commune | sector_fr | inhab (numeric) | inh_km2 (decimal) | +|---|---|---|---| +|BRUXELLES|EM. DELVA (RUE)|7,521|1.53| +|BRUXELLES|ANNEESSENS (PLACE) |7,066|2.95| +|BRUXELLES|MAISON ROUGE (PLACE)-SUD|5,674|1.700| +|BRUXELLES|MARIE-CHRISTINE (RUE)|5,413|1.75 \ No newline at end of file diff --git a/content/widget-tricks/ods-results/2/index.md b/content/widget-tricks/ods-results/2/index.md index 704d6985d..a41001155 100644 --- a/content/widget-tricks/ods-results/2/index.md +++ b/content/widget-tricks/ods-results/2/index.md @@ -2,12 +2,12 @@ title: "Cards list" --- -With [ODS layout system](https://help.opendatasoft.com/platform/en/customizing_look_and_feel/06_customizing_theme/theme.html#layout-options), +With [ODS layout system](https://help.huwise.com/platform/en/customizing_look_and_feel/06_customizing_theme/theme.html#layout-options), you can easily list results and print each record as a card. > Note that these codes also relies on [this resource](/page-templates/ods-layout-over-ride) that over-rides this ODS layout. It can then be combined with other widgets, by getting a metadata from the record, and feeding another widget with it. In this example, we get the shape of the record, -and feed [ods-geotooltip](https://help.opendatasoft.com/widgets/#/api/ods-widgets.directive:odsGeotooltip) +and feed [ods-geotooltip](https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsGeotooltip) with its value. \ No newline at end of file diff --git a/content/widget-tricks/ods-results/2/schema.md b/content/widget-tricks/ods-results/2/schema.md new file mode 100644 index 000000000..c3dc030be --- /dev/null +++ b/content/widget-tricks/ods-results/2/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `belgium-statistical-districts` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/belgium-statistical-districts/table/) + +**Fields in use:** + +| commune | sector_fr | inhab (numeric) | inh_km2 (decimal) | geo_shape (geo_shape) | +|---|---|---|---|---| +|BRUXELLES|EM. DELVA (RUE)|7,521|1.53|{"type":"Polygon","coordinates":[[...]]}| +|BRUXELLES|ANNEESSENS (PLACE) |7,066|2.95|{"type":"Polygon","coordinates":[[...]]}| +|BRUXELLES|MAISON ROUGE (PLACE)-SUD|5,674|1.700|{"type":"Polygon","coordinates":[[...]]}| +|BRUXELLES|MARIE-CHRISTINE (RUE)|5,413|1.75|{"type":"Polygon","coordinates":[[...]]}| \ No newline at end of file diff --git a/content/widget-tricks/ods-results/3/index.md b/content/widget-tricks/ods-results/3/index.md index 7052b4e37..e2244e522 100644 --- a/content/widget-tricks/ods-results/3/index.md +++ b/content/widget-tricks/ods-results/3/index.md @@ -2,7 +2,7 @@ title: "Pagination block" --- -[ods-pagination-block](https://help.opendatasoft.com/widgets/#/api/ods-widgets.directive:odsPaginationBlock) +[ods-pagination-block](https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsPaginationBlock) can be added to paginate your results. Beware of setting the same number of results in your `ods-results-max` and `per-page` parameters. \ No newline at end of file diff --git a/content/widget-tricks/ods-results/3/schema.md b/content/widget-tricks/ods-results/3/schema.md new file mode 100644 index 000000000..c3dc030be --- /dev/null +++ b/content/widget-tricks/ods-results/3/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `belgium-statistical-districts` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/belgium-statistical-districts/table/) + +**Fields in use:** + +| commune | sector_fr | inhab (numeric) | inh_km2 (decimal) | geo_shape (geo_shape) | +|---|---|---|---|---| +|BRUXELLES|EM. DELVA (RUE)|7,521|1.53|{"type":"Polygon","coordinates":[[...]]}| +|BRUXELLES|ANNEESSENS (PLACE) |7,066|2.95|{"type":"Polygon","coordinates":[[...]]}| +|BRUXELLES|MAISON ROUGE (PLACE)-SUD|5,674|1.700|{"type":"Polygon","coordinates":[[...]]}| +|BRUXELLES|MARIE-CHRISTINE (RUE)|5,413|1.75|{"type":"Polygon","coordinates":[[...]]}| \ No newline at end of file diff --git a/content/widget-tricks/ods-results/4/html.inc b/content/widget-tricks/ods-results/4/html.inc index 12d9bc5c0..e5bb0b0d0 100644 --- a/content/widget-tricks/ods-results/4/html.inc +++ b/content/widget-tricks/ods-results/4/html.inc @@ -13,7 +13,7 @@ + domain-url="https://userclub.huwise.com">
    diff --git a/content/widget-tricks/ods-results/4/index.md b/content/widget-tricks/ods-results/4/index.md index 75e49fe8a..9817d8bcf 100644 --- a/content/widget-tricks/ods-results/4/index.md +++ b/content/widget-tricks/ods-results/4/index.md @@ -2,7 +2,7 @@ title: "More advanced cards with record images" --- -This example get image from the dataset with [ods-record-image](https://help.opendatasoft.com/widgets/#/api/ods-widgets.directive:odsRecordImage). +This example get image from the dataset with [ods-record-image](https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsRecordImage). It also displays the cost if the meta is filled. The geolocation at the bottom of the card displays the address if it exists, or the word "Location" if the field is empty. \ No newline at end of file diff --git a/content/widget-tricks/ods-results/4/schema.md b/content/widget-tricks/ods-results/4/schema.md new file mode 100644 index 000000000..f7b1c1964 --- /dev/null +++ b/content/widget-tricks/ods-results/4/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `principales-depenses-dequipements-issy` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/principales-depenses-dequipements-issy/table/) + +**Fields in use:** + +| equipements | description | exercices (date) | cout_pour_la_ville_en_euros (decimal) | adresse | localisation (geo_point)| +|---|---|---|---|---|---| +|Parc Municipal des Sports|Etudes préalables à une restructuration complète du bâtiment.|2014|8,682|5 avenue Jean Bouin|[34.69553069,-82.98721979]| +|Le Temps des Cerises|Construction d'une structure de proximité proposant des expérimentations ludiques...|2014|313,536|90-98 promenade du Verger|[40.673121466,-75.365457125]| +|Piscine Alfred Sevestre|Travaux d'urgence et étude préalable à la rénovation complète|2013|409,072|70 boulevard Gallieni|[38.578735152,-109.563613143]| +|Ecole des Bords de Seine|Equipements: livres, etc.|2013|14,214|22 rue de la Galiote|[41.491227149,-112.025755668]| \ No newline at end of file diff --git a/content/widget-tricks/ods-results/index.md b/content/widget-tricks/ods-results/index.md index c26389101..c91625ff0 100644 --- a/content/widget-tricks/ods-results/index.md +++ b/content/widget-tricks/ods-results/index.md @@ -10,7 +10,7 @@ resources: **ods-results** is a rather simple widget to list records from a dataset. They can be displayed as a list or cards. -[ods-results widget documentation](https://help.opendatasoft.com/widgets/#/api/ods-widgets.directive:odsResults) +[ods-results widget documentation](https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsResults) Several Code Library resources rely on ods-results, for example the [table module component](/components/table-module/), to list records in a table. The [search module component](/components/search-module/), to display the results of a search query. diff --git a/content/widget-tricks/ods-select/2/index.md b/content/widget-tricks/ods-select/2/index.md index 45fcd9f22..5fd887394 100644 --- a/content/widget-tricks/ods-select/2/index.md +++ b/content/widget-tricks/ods-select/2/index.md @@ -5,7 +5,7 @@ height: 600 `ods-facet-results` enumerates the values ("categories") of a facet, and exposes it in a variable. this variable can then be the option source of `ods-select`. -[ods-facet-results widget documentation](https://help.opendatasoft.com/widgets/#/api/ods-widgets.directive:odsFacetResults) +[ods-facet-results widget documentation](https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsFacetResults) > **Note 1:** that facets are limited to the first 100 results, it's then suitable for categories, types, properties that have a small set of distinct values diff --git a/content/widget-tricks/ods-select/2/schema.md b/content/widget-tricks/ods-select/2/schema.md new file mode 100644 index 000000000..99988f103 --- /dev/null +++ b/content/widget-tricks/ods-select/2/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `us-hospitals` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/us-hospitals/table/) + +**Fields in use:** + +| geo_point (geo_point_2d)| type | +|---|---| +|[34.69553069,-82.98721979]|General Acute Care Hospital| +|[40.673121466,-75.365457125]|General Acute Care Hospital| +|[38.578735152,-109.563613143]|Critical Access| +|[41.491227149,-112.025755668]|General Acute Care Hospital| \ No newline at end of file diff --git a/content/widget-tricks/ods-select/3/html.inc b/content/widget-tricks/ods-select/3/html.inc index 3d068d3cc..eae8e1d92 100644 --- a/content/widget-tricks/ods-select/3/html.inc +++ b/content/widget-tricks/ods-select/3/html.inc @@ -4,19 +4,19 @@ ctxanalysis-parameters="{'sort':'world_rank'}" ctxrefine-dataset="shanghai-world-university-ranking" ctxrefine-parameters="{'sort':'world_rank'}"> -
    +

    Select an university in this TOP 100 list (sorted by it's best ranking overall)

    -
    diff --git a/content/widget-tricks/ods-select/3/index.md b/content/widget-tricks/ods-select/3/index.md index 84c36f41a..6ee38092f 100644 --- a/content/widget-tricks/ods-select/3/index.md +++ b/content/widget-tricks/ods-select/3/index.md @@ -1,5 +1,5 @@ --- -title: "Filter by the results of an analysis (via ods-analysis widget)" +title: "Filter by the results of an analysis (via ods-adv-analysis widget)" height: 650 --- @@ -11,8 +11,8 @@ etc... Computing the average, maximum, sum of a field to sort de list of proposition in `ods-select` -`ods-analysis` [Code Library resource](https://codelibrary.opendatasoft.com/widget-tricks/ods-analysis/) and [it's documentation](https://help.opendatasoft.com/widgets/#/api/ods-widgets.directive:odsAnalysis). +`ods-adv-analysis` [Code Library resource](https://codelibrary.huwise.com/widget-tricks/ods-adv-analysis/) and [it's documentation](https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsAdvAnalysis). -> **Note 1:** performing an analysis on a field containing huge quantity of distinct values can alter performances of the page (the browser needs to download the long list of possible values, then it displays and manipulates the list into the widget) +> **Note 1:** performing an adv-analysis on a field containing huge quantity of distinct values can alter performances of the page (the browser needs to download the long list of possible values, then it displays and manipulates the list into the widget) > **Note 2:** selecting a value and refining the context will no longer let you choose other values as they will disappear with the selection. (contrary to `ods-facets` and `ods-facet-results` that can use the disjunctive mode, ie. multi selection mode). To counter that, we need 2 contexts: 1 to perform the analysis and feed ods-select, 1 to refine and display the chart diff --git a/content/widget-tricks/ods-select/3/schema.md b/content/widget-tricks/ods-select/3/schema.md new file mode 100644 index 000000000..98e5b17e8 --- /dev/null +++ b/content/widget-tricks/ods-select/3/schema.md @@ -0,0 +1,10 @@ +**Dataset in use:** `shanghai-world-university-ranking` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/shanghai-world-university-ranking/table/) + +**Fields in use:** + +| university_name | pub (decimal)| alumni (decimal)| award (decimal) | world_rank_int (numeric) | pcp (decimal) | ns (decimal) | hici (decimal) | +|---|---|---|---|---|---|---|---| +|Harvard University|100|100|100|1|70.5|100|100| +|University of Cambridge|70.9|96.3|91.5|2|66.5|59.5|53.8| +|Heidelberg University|53.6|19.7|25|42|27.5|38.8|27.5| +|Tsinghua University|74.6|10.2|0|48|24.1|38.4|37.1| \ No newline at end of file diff --git a/content/widget-tricks/ods-select/4/html.inc b/content/widget-tricks/ods-select/4/html.inc index a64eedadb..065106ce9 100644 --- a/content/widget-tricks/ods-select/4/html.inc +++ b/content/widget-tricks/ods-select/4/html.inc @@ -1,8 +1,8 @@
    + lander-dataset="laender-germany" + lander-parameters="{'fields':'land_name,land_code'}" + kreis-dataset="kreise-germany">
    @@ -10,12 +10,12 @@ Display the name, refine with the code

    - Selected Lander code (used to refine the map context) : {{ kreis.parameters['refine.lan_code'] }} + Selected Lander code (used to refine the map context) : {{ kreis.parameters['refine.land_code'] }}

    @@ -28,11 +28,11 @@ diff --git a/content/widget-tricks/ods-select/4/index.md b/content/widget-tricks/ods-select/4/index.md index 9b465514b..22cd332c7 100644 --- a/content/widget-tricks/ods-select/4/index.md +++ b/content/widget-tricks/ods-select/4/index.md @@ -6,8 +6,8 @@ height: 650 Each time it's available, filter with the ID! and avoid labels or names! Specially for geographical division (City names, States etc...) -This resource showcase `ods-results` as the source of ods-select but most of all [Opendatasoft geo referentials](https://data.opendatasoft.com/explore/?refine.publisher=Opendatasoft&refine.theme=Geographical+referentials) that always propose codes and labels for each division. +This resource showcase `ods-results` as the source of ods-select but most of all [Huwise geo referentials](https://data.huwise.com/explore/?refine.publisher=Huwise&refine.theme=Geographical+referentials) that always propose codes and labels for each division. -`ods-results` [documentation](https://help.opendatasoft.com/widgets/#/api/ods-widgets.directive:odsResults). +`ods-results` [documentation](https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsResults). > **IMPORTANT:** In the `lander` context, an optional parameter `fields` is set to limit the size of the results. It improves DRASTICALLY the performance to avoid manipulating big geo shapes in geo datasets. We STRONGLY advise to keep this parameter and list only the required fields (ie. the "label field" and the "value field" of your ods-select) \ No newline at end of file diff --git a/content/widget-tricks/ods-select/4/schema.md b/content/widget-tricks/ods-select/4/schema.md new file mode 100644 index 000000000..a9b10f935 --- /dev/null +++ b/content/widget-tricks/ods-select/4/schema.md @@ -0,0 +1,17 @@ +**Field in use in `laender-germany` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/laender-germany/table/)** + +| land_name | land_code | +|---|---| +|Rheinland-Pfalz|07| +|Niedersachsen|03| +|Baden-Württemberg|08| +|Thüringen|16| + +**Field in use in `kreise-germany` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/kreise-germany/table/)** + +| land_name | land_code | geo_shape (geo_shape) | +|---|---|---| +|Rheinland-Pfalz|07|{"coordinates":[[...]]}| +|Niedersachsen|03|{"coordinates":[[...]]}| +|Baden-Württemberg|08|{"coordinates":[[...]]}| +|Thüringen|16|{"coordinates":[[...]]}| \ No newline at end of file diff --git a/content/widget-tricks/ods-select/7/css.inc b/content/widget-tricks/ods-select/7/css.inc new file mode 100644 index 000000000..a01b2cb70 --- /dev/null +++ b/content/widget-tricks/ods-select/7/css.inc @@ -0,0 +1,31 @@ +/***** Inlined SELECT *****/ +.ods-selects { + display: flex; + flex-wrap: wrap; + align-items: center; + gap: 20px; + padding: 10px 0px; +} + +.odswidget-select { + min-width: 200px; +} + +/***** Clear filters button *****/ + +.clear-filters { + display: flex; + align-items: center; + justify-content: center; + margin-top: 5px; +} + +.clear-filters-button { + background: none; + border: none; + color: var(--text); +} + +.clear-filters-button:hover { + opacity: 0.65; +} \ No newline at end of file diff --git a/content/widget-tricks/ods-select/7/html.inc b/content/widget-tricks/ods-select/7/html.inc new file mode 100644 index 000000000..f7a2b10cf --- /dev/null +++ b/content/widget-tricks/ods-select/7/html.inc @@ -0,0 +1,150 @@ + + +
    + {{ values.regions = regions; ""}} +
    +
    + {{ values.departements = departements; "" }} +
    +
    + {{ values.epcis = epcis; "" }} +
    +
    + {{ values.communes = communes; "" }} +
    + +
    + + {{ + ctxcommunes.parameters['refine.reg_code'] = + ctxepcis.parameters['refine.reg_code'] = + ctxdepartements.parameters['refine.reg_code'] = + ctx.parameters['refine.reg_code'] = + (selected.regions | toObject:'code' | keys); + ""}} + + {{ + ctxcommunes.parameters['refine.dep_code'] = + ctxepcis.parameters['refine.dep_code'] = + ctx.parameters['refine.dep_code'] = + (selected.departements | toObject:'code' | keys); + ""}} + + {{ + ctxcommunes.parameters['refine.epci_code'] = + ctx.parameters['refine.epci_code'] = + (selected.epcis | toObject:'code' | keys); + ""}} + + {{ + ctx.parameters['refine.com_arm_code'] = + (selected.communes | toObject:'code' | keys); + ""}} +
    +
    + + +
    +

    Structure de la population, par CSP et activité, en 2017

    + + + + + + +
    diff --git a/content/widget-tricks/ods-select/7/index.md b/content/widget-tricks/ods-select/7/index.md new file mode 100644 index 000000000..0bba90b42 --- /dev/null +++ b/content/widget-tricks/ods-select/7/index.md @@ -0,0 +1,15 @@ +--- +title: "Drilldown select for geographical levels" +date: "2022-03-20" +height: 600 +--- + +A reuse of `ods-select` to create filters based on a serie of geographical levels. + +**IMPORTANT**: This example integrates advanced parameters that can be customized: +- `disabled` parameter in `ods-select`: used to disable the filter if the condition is true. In the example, the filter is disabled when the previous filter is not activated. +- `on-change` parameter in `ods-select`: used to clear previous filters on the context `ctx` when a new selection is made. In the example, it enables you to select a région, a département, and then switch to another région, without having to clear the filter département. +- Angular expressions after each `ods-select`: used to sync the selection on all the geographical levels. In the example, it enables you to have a list of département filter on the région selected. + +> **Note:** you will need to create one context for each geographical level, in order to keep the full list of the items after the refine. + diff --git a/content/widget-tricks/ods-select/7/schema.md b/content/widget-tricks/ods-select/7/schema.md new file mode 100644 index 000000000..9f122c7bf --- /dev/null +++ b/content/widget-tricks/ods-select/7/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `demographyref-france-pop-active-sexe-activite-commune-millesime` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/demographyref-france-pop-active-sexe-activite-commune-millesime/table/) + +**Fields in use:** + +|reg_code|dep_code|epci_code|com_arm_code|reg_name|dep_name|epci_name|com_arm_name| +|---|---|---|---|---|---|---|---| +|24|36|243600350|36095|Centre-Val de Loire|Indre|CC de la Châtre et Sainte-Sévère|Lignerolles| +|24|36|243600350|36100|Centre-Val de Loire|Indre|CC de la Châtre et Sainte-Sévère|Lourouer-Saint-Laurent| +|24|36|200040558|36107|Centre-Val de Loire|Indre|CC Écueillé-Valençay|Lye| +|24|36|243600327|36112|Centre-Val de Loire|Indre|CA Châteauroux Métropole|Mâron| + diff --git a/content/widget-tricks/ods-select/index.md b/content/widget-tricks/ods-select/index.md index 7bb4c3ed3..6671646a4 100644 --- a/content/widget-tricks/ods-select/index.md +++ b/content/widget-tricks/ods-select/index.md @@ -1,6 +1,7 @@ --- title: "ods-select" description: "ods-select allows the selection of one or more items from a list of options. This resource present different combinations with ods-facet-results or ods-analysis to feed the selection list." +date: "2022-03-20" tags: ["display", "navigation", "list"] resources: - src: '*/' @@ -9,4 +10,4 @@ resources: ods-select allows the selection of one or more items from a list of options. This resource present different combination with ods-facet-results or ods-analysis to feed the selection list. -[ods-select widget documentation](https://help.opendatasoft.com/widgets/#/api/ods-widgets.directive:odsSelect) +[ods-select widget documentation](https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsSelect) diff --git a/content/widget-tricks/ods-simple-tabs/1/html.inc b/content/widget-tricks/ods-simple-tabs/1/html.inc index 4316990dc..94b23e870 100644 --- a/content/widget-tricks/ods-simple-tabs/1/html.inc +++ b/content/widget-tricks/ods-simple-tabs/1/html.inc @@ -4,7 +4,7 @@ + keep-content="false">

    L’objectif du service Vélib’ Métropole est de faciliter le développement de nouvelles mobilités sur le territoire francilien, en complément de l’offre de transport existante.

    diff --git a/content/widget-tricks/ods-simple-tabs/1/schema.md b/content/widget-tricks/ods-simple-tabs/1/schema.md new file mode 100644 index 000000000..ca0049d54 --- /dev/null +++ b/content/widget-tricks/ods-simple-tabs/1/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `velib-disponibilite-en-temps-reel` [(See it on parisdata domain)](https://parisdata.huwise.com/explore/dataset/velib-disponibilite-en-temps-reel/table/) + +**Fields in use:** + +|coordonnees_geo (geo_point) |name|numbikesavailable| +|---|---|---| +|48.855907556,2.39257067442|Charonne - Robert et Sonia Delauney|0| +|48.865983,2.275725|Benjamin Godard - Victor Hugo|5| +|48.871044052,2.36610446199|Alibert - Jemmapes|6| +|48.8792959173,2.33736008406|Toudouze - Clauzel|1| + diff --git a/content/widget-tricks/ods-simple-tabs/2/html.inc b/content/widget-tricks/ods-simple-tabs/2/html.inc index 45bd2217b..9d61b727c 100644 --- a/content/widget-tricks/ods-simple-tabs/2/html.inc +++ b/content/widget-tricks/ods-simple-tabs/2/html.inc @@ -4,7 +4,7 @@ + keep-content="false">

    L’objectif du service Vélib’ Métropole est de faciliter le développement de nouvelles mobilités sur le territoire francilien, en complément de l’offre de transport existante.

    diff --git a/content/widget-tricks/ods-simple-tabs/2/schema.md b/content/widget-tricks/ods-simple-tabs/2/schema.md new file mode 100644 index 000000000..ca0049d54 --- /dev/null +++ b/content/widget-tricks/ods-simple-tabs/2/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `velib-disponibilite-en-temps-reel` [(See it on parisdata domain)](https://parisdata.huwise.com/explore/dataset/velib-disponibilite-en-temps-reel/table/) + +**Fields in use:** + +|coordonnees_geo (geo_point) |name|numbikesavailable| +|---|---|---| +|48.855907556,2.39257067442|Charonne - Robert et Sonia Delauney|0| +|48.865983,2.275725|Benjamin Godard - Victor Hugo|5| +|48.871044052,2.36610446199|Alibert - Jemmapes|6| +|48.8792959173,2.33736008406|Toudouze - Clauzel|1| + diff --git a/content/widget-tricks/ods-simple-tabs/3/html.inc b/content/widget-tricks/ods-simple-tabs/3/html.inc index 9cadbabd3..5b9aa520b 100644 --- a/content/widget-tricks/ods-simple-tabs/3/html.inc +++ b/content/widget-tricks/ods-simple-tabs/3/html.inc @@ -4,7 +4,7 @@ + keep-content="false">

    L’objectif du service Vélib’ Métropole est de faciliter le développement de nouvelles mobilités sur le territoire francilien, en complément de l’offre de transport existante.

    diff --git a/content/widget-tricks/ods-simple-tabs/3/schema.md b/content/widget-tricks/ods-simple-tabs/3/schema.md new file mode 100644 index 000000000..ca0049d54 --- /dev/null +++ b/content/widget-tricks/ods-simple-tabs/3/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `velib-disponibilite-en-temps-reel` [(See it on parisdata domain)](https://parisdata.huwise.com/explore/dataset/velib-disponibilite-en-temps-reel/table/) + +**Fields in use:** + +|coordonnees_geo (geo_point) |name|numbikesavailable| +|---|---|---| +|48.855907556,2.39257067442|Charonne - Robert et Sonia Delauney|0| +|48.865983,2.275725|Benjamin Godard - Victor Hugo|5| +|48.871044052,2.36610446199|Alibert - Jemmapes|6| +|48.8792959173,2.33736008406|Toudouze - Clauzel|1| + diff --git a/content/widget-tricks/ods-table-fixed-col/1/css.inc b/content/widget-tricks/ods-table-fixed-col/1/css.inc deleted file mode 100644 index 9e484558e..000000000 --- a/content/widget-tricks/ods-table-fixed-col/1/css.inc +++ /dev/null @@ -1,111 +0,0 @@ -/** ODS-TABLE FIXED COLUMN **/ - -[class*="sticky-col-"] { - --counter-col-width: 35px; /* Index column, record counter */ - --1st-col-width: 170px; /* First data column */ - --2nd-col-width: 150px; /* Second data column */ - --3rd-col-width: 100px; /* Third data column */ - - --bg-color-odd: #f4f4f4; - --bg-color-even: white; - --hover-color: #e0e0e0; -} - -/* Set the table relative, to stick columns */ -[class*="sticky-col-"] thead.odswidget-table__internal-header-table-header, -[class*="sticky-col-"] table.odswidget-table__internal-table { - position: relative; -} - -/* Header and content position and width */ -.sticky-col-1 th.odswidget-table__header-cell:nth-child(1), -.sticky-col-2 th.odswidget-table__header-cell:nth-child(1), -.sticky-col-3 th.odswidget-table__header-cell:nth-child(1), -.sticky-col-1 td.odswidget-table__cell:nth-child(1), -.sticky-col-2 td.odswidget-table__cell:nth-child(1), -.sticky-col-3 td.odswidget-table__cell:nth-child(1) { - position: sticky; - left: 0; - z-index: 1; -} -.sticky-col-1 th.odswidget-table__header-cell:nth-child(1) > div, -.sticky-col-2 th.odswidget-table__header-cell:nth-child(1) > div, -.sticky-col-3 th.odswidget-table__header-cell:nth-child(1) > div, -.sticky-col-1 td.odswidget-table__cell:nth-child(1) > div, -.sticky-col-2 td.odswidget-table__cell:nth-child(1) > div, -.sticky-col-3 td.odswidget-table__cell:nth-child(1) > div { - width: var(--counter-col-width) !important; - max-width: inherit; -} -.sticky-col-1 th.odswidget-table__header-cell:nth-child(2), -.sticky-col-2 th.odswidget-table__header-cell:nth-child(2), -.sticky-col-3 th.odswidget-table__header-cell:nth-child(2), -.sticky-col-1 td.odswidget-table__cell:nth-child(2), -.sticky-col-2 td.odswidget-table__cell:nth-child(2), -.sticky-col-3 td.odswidget-table__cell:nth-child(2) { - position: sticky; - left: calc(var(--counter-col-width) + 15px); - z-index: 1; -} -.sticky-col-1 th.odswidget-table__header-cell:nth-child(2) > div, -.sticky-col-2 th.odswidget-table__header-cell:nth-child(2) > div, -.sticky-col-3 th.odswidget-table__header-cell:nth-child(2) > div, -.sticky-col-1 td.odswidget-table__cell:nth-child(2) > div, -.sticky-col-2 td.odswidget-table__cell:nth-child(2) > div, -.sticky-col-3 td.odswidget-table__cell:nth-child(2) > div { - width: var(--1st-col-width) !important; - max-width: inherit; -} -.sticky-col-2 th.odswidget-table__header-cell:nth-child(3), -.sticky-col-3 th.odswidget-table__header-cell:nth-child(3), -.sticky-col-2 td.odswidget-table__cell:nth-child(3), -.sticky-col-3 td.odswidget-table__cell:nth-child(3) { - position: sticky; - left: calc(var(--counter-col-width) + 32px + var(--1st-col-width)); - z-index: 1; -} -.sticky-col-2 th.odswidget-table__header-cell:nth-child(3) > div, -.sticky-col-3 th.odswidget-table__header-cell:nth-child(3) > div, -.sticky-col-2 td.odswidget-table__cell:nth-child(3) > div, -.sticky-col-3 td.odswidget-table__cell:nth-child(3) > div { - width: calc(var(--2nd-col-width) + 11px) !important; - max-width: inherit; -} - -.sticky-col-3 th.odswidget-table__header-cell:nth-child(4), -.sticky-col-3 td.odswidget-table__cell:nth-child(4) { - position: sticky; - left: calc(var(--counter-col-width) + 32px + var(--1st-col-width) + 32px + var(--2nd-col-width)); - z-index: 1; -} -.sticky-col-3 th.odswidget-table__header-cell:nth-child(4) > div, -.sticky-col-3 td.odswidget-table__cell:nth-child(4) > div { - width: calc(var(--3rd-col-width) + 11px) !important; - max-width: inherit; -} - - -/* Background and hover colors */ -.sticky-col-1 tr.odswidget-table__internal-table-row:nth-child(odd) td.odswidget-table__cell:nth-child(-n+2), -.sticky-col-2 tr.odswidget-table__internal-table-row:nth-child(odd) td.odswidget-table__cell:nth-child(-n+3), -.sticky-col-3 tr.odswidget-table__internal-table-row:nth-child(odd) td.odswidget-table__cell:nth-child(-n+4) { - background-color: var(--bg-color-odd); -} -.sticky-col-1 tr.odswidget-table__internal-table-row:nth-child(even) td.odswidget-table__cell:nth-child(-n+2), -.sticky-col-2 tr.odswidget-table__internal-table-row:nth-child(even) td.odswidget-table__cell:nth-child(-n+3), -.sticky-col-3 tr.odswidget-table__internal-table-row:nth-child(even) td.odswidget-table__cell:nth-child(-n+4) { - background-color: var(--bg-color-even); -} -.sticky-col-1 tr.odswidget-table__internal-table-row:hover td.odswidget-table__cell:nth-child(-n+2), -.sticky-col-2 tr.odswidget-table__internal-table-row:hover td.odswidget-table__cell:nth-child(-n+3), -.sticky-col-3 tr.odswidget-table__internal-table-row:hover td.odswidget-table__cell:nth-child(-n+4) { - background-color: var(--hover-color); -} - -/* Bonus, petite marge à droite pour marquer la séparation entre la colonne sticky et le reste */ -.sticky-col-1 td.odswidget-table__cell:nth-child(2) > div, -.sticky-col-2 td.odswidget-table__cell:nth-child(3) > div, -.sticky-col-3 td.odswidget-table__cell:nth-child(4) > div { - border-right: 1px solid var(--hover-color); - margin-right: -1px; -} \ No newline at end of file diff --git a/content/widget-tricks/ods-table-fixed-col/1/html.inc b/content/widget-tricks/ods-table-fixed-col/1/html.inc deleted file mode 100644 index 42663f2ab..000000000 --- a/content/widget-tricks/ods-table-fixed-col/1/html.inc +++ /dev/null @@ -1,17 +0,0 @@ - -

    1 column fixed

    - -
    - - -

    3 column fixed

    - -
    \ No newline at end of file diff --git a/content/widget-tricks/ods-table-fixed-col/1/index.md b/content/widget-tricks/ods-table-fixed-col/1/index.md deleted file mode 100644 index bd7216913..000000000 --- a/content/widget-tricks/ods-table-fixed-col/1/index.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Fix 1, 2 or 3 columns" -date: 2021-07-30T18:37:13+02:00 -height: 600 ---- - -By adding the CSS class `sticky-col-1`, `sticky-col-2` or `sticky-col-3` to an ods-table, -you can respectively fix the 1, 2 or 3 first columns. - -The width of the column, and the cell color are defined through CSS variables. \ No newline at end of file diff --git a/content/widget-tricks/ods-table-fixed-col/2/css.inc b/content/widget-tricks/ods-table-fixed-col/2/css.inc deleted file mode 100644 index 0e9fe5fd6..000000000 --- a/content/widget-tricks/ods-table-fixed-col/2/css.inc +++ /dev/null @@ -1,129 +0,0 @@ -/** ODS-TABLE FIXED COLUMN **/ - -[class*="sticky-col-"] { - --counter-col-width: 35px; /* Index column, record counter */ - --1st-col-width: 170px; /* First data column */ - --2nd-col-width: 150px; /* Second data column */ - --3rd-col-width: 100px; /* Third data column */ - - --bg-color-odd: #f4f4f4; - --bg-color-even: white; - --hover-color: #e0e0e0; -} - - -/** Override settings for specific tables */ -.smallercol { - --1st-col-width: 140px; - --2nd-col-width: 60px; /* Second data column */ - --3rd-col-width: 80px; /* Third data column */ -} - -.largercol { - --1st-col-width: 250px; -} - -.darkerfixed { - --bg-color-odd: #dcdcdc; - --bg-color-even: #f3f3f3; - --hover-color: #a1a1a1; -} - - -/* Set the table relative, to stick columns */ -[class*="sticky-col-"] thead.odswidget-table__internal-header-table-header, -[class*="sticky-col-"] table.odswidget-table__internal-table { - position: relative; -} - -/* Header and content position and width */ -.sticky-col-1 th.odswidget-table__header-cell:nth-child(1), -.sticky-col-2 th.odswidget-table__header-cell:nth-child(1), -.sticky-col-3 th.odswidget-table__header-cell:nth-child(1), -.sticky-col-1 td.odswidget-table__cell:nth-child(1), -.sticky-col-2 td.odswidget-table__cell:nth-child(1), -.sticky-col-3 td.odswidget-table__cell:nth-child(1) { - position: sticky; - left: 0; - z-index: 1; -} -.sticky-col-1 th.odswidget-table__header-cell:nth-child(1) > div, -.sticky-col-2 th.odswidget-table__header-cell:nth-child(1) > div, -.sticky-col-3 th.odswidget-table__header-cell:nth-child(1) > div, -.sticky-col-1 td.odswidget-table__cell:nth-child(1) > div, -.sticky-col-2 td.odswidget-table__cell:nth-child(1) > div, -.sticky-col-3 td.odswidget-table__cell:nth-child(1) > div { - width: var(--counter-col-width) !important; - max-width: inherit; -} -.sticky-col-1 th.odswidget-table__header-cell:nth-child(2), -.sticky-col-2 th.odswidget-table__header-cell:nth-child(2), -.sticky-col-3 th.odswidget-table__header-cell:nth-child(2), -.sticky-col-1 td.odswidget-table__cell:nth-child(2), -.sticky-col-2 td.odswidget-table__cell:nth-child(2), -.sticky-col-3 td.odswidget-table__cell:nth-child(2) { - position: sticky; - left: calc(var(--counter-col-width) + 15px); - z-index: 1; -} -.sticky-col-1 th.odswidget-table__header-cell:nth-child(2) > div, -.sticky-col-2 th.odswidget-table__header-cell:nth-child(2) > div, -.sticky-col-3 th.odswidget-table__header-cell:nth-child(2) > div, -.sticky-col-1 td.odswidget-table__cell:nth-child(2) > div, -.sticky-col-2 td.odswidget-table__cell:nth-child(2) > div, -.sticky-col-3 td.odswidget-table__cell:nth-child(2) > div { - width: var(--1st-col-width) !important; - max-width: inherit; -} -.sticky-col-2 th.odswidget-table__header-cell:nth-child(3), -.sticky-col-3 th.odswidget-table__header-cell:nth-child(3), -.sticky-col-2 td.odswidget-table__cell:nth-child(3), -.sticky-col-3 td.odswidget-table__cell:nth-child(3) { - position: sticky; - left: calc(var(--counter-col-width) + 32px + var(--1st-col-width)); - z-index: 1; -} -.sticky-col-2 th.odswidget-table__header-cell:nth-child(3) > div, -.sticky-col-3 th.odswidget-table__header-cell:nth-child(3) > div, -.sticky-col-2 td.odswidget-table__cell:nth-child(3) > div, -.sticky-col-3 td.odswidget-table__cell:nth-child(3) > div { - width: calc(var(--2nd-col-width) + 11px) !important; - max-width: inherit; -} -.sticky-col-3 th.odswidget-table__header-cell:nth-child(4), -.sticky-col-3 td.odswidget-table__cell:nth-child(4) { - position: sticky; - left: calc(var(--counter-col-width) + 32px + var(--1st-col-width) + 32px + var(--2nd-col-width)); - z-index: 1; -} -.sticky-col-3 th.odswidget-table__header-cell:nth-child(4) > div, -.sticky-col-3 td.odswidget-table__cell:nth-child(4) > div { - width: calc(var(--3rd-col-width) + 11px) !important; - max-width: inherit; -} - - -/* Background and hover colors */ -.sticky-col-1 tr.odswidget-table__internal-table-row:nth-child(odd) td.odswidget-table__cell:nth-child(-n+2), -.sticky-col-2 tr.odswidget-table__internal-table-row:nth-child(odd) td.odswidget-table__cell:nth-child(-n+3), -.sticky-col-3 tr.odswidget-table__internal-table-row:nth-child(odd) td.odswidget-table__cell:nth-child(-n+4) { - background-color: var(--bg-color-odd); -} -.sticky-col-1 tr.odswidget-table__internal-table-row:nth-child(even) td.odswidget-table__cell:nth-child(-n+2), -.sticky-col-2 tr.odswidget-table__internal-table-row:nth-child(even) td.odswidget-table__cell:nth-child(-n+3), -.sticky-col-3 tr.odswidget-table__internal-table-row:nth-child(even) td.odswidget-table__cell:nth-child(-n+4) { - background-color: var(--bg-color-even); -} -.sticky-col-1 tr.odswidget-table__internal-table-row:hover td.odswidget-table__cell:nth-child(-n+2), -.sticky-col-2 tr.odswidget-table__internal-table-row:hover td.odswidget-table__cell:nth-child(-n+3), -.sticky-col-3 tr.odswidget-table__internal-table-row:hover td.odswidget-table__cell:nth-child(-n+4) { - background-color: var(--hover-color); -} - -/* Bonus, petite marge à droite pour marquer la séparation entre la colonne sticky et le reste */ -.sticky-col-1 td.odswidget-table__cell:nth-child(2) > div, -.sticky-col-2 td.odswidget-table__cell:nth-child(3) > div, -.sticky-col-3 td.odswidget-table__cell:nth-child(4) > div { - border-right: 1px solid var(--hover-color); - margin-right: -1px; -} diff --git a/content/widget-tricks/ods-table-fixed-col/2/html.inc b/content/widget-tricks/ods-table-fixed-col/2/html.inc deleted file mode 100644 index 9002b1ec4..000000000 --- a/content/widget-tricks/ods-table-fixed-col/2/html.inc +++ /dev/null @@ -1,17 +0,0 @@ - -

    1 column fixed, larger first column, darker fixed cell

    - -
    -
    - -

    3 column fixed, smaller 2nd and 3rd column, darker fixed cell

    - -
    \ No newline at end of file diff --git a/content/widget-tricks/ods-table-fixed-col/2/index.md b/content/widget-tricks/ods-table-fixed-col/2/index.md deleted file mode 100644 index a7354f50a..000000000 --- a/content/widget-tricks/ods-table-fixed-col/2/index.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -title: "Override variables to change column width and cell color" -height: 600 ---- - -Column width: -- `--counter-col-width` Set the record counter width -- `--1st-col-width` Set the First data column width -- `--2nd-col-width` Set the Second data column width -- `--3rd-col-width` Set the Third data column width - -Cell color: -- `--bg-color-odd` Set the odd cell background color -- `--bg-color-even`: Set the even cell background color -- `--hover-color`: Set the hover cell color \ No newline at end of file diff --git a/content/widget-tricks/ods-table-fixed-col/3/css.inc b/content/widget-tricks/ods-table-fixed-col/3/css.inc deleted file mode 100644 index 7e75becca..000000000 --- a/content/widget-tricks/ods-table-fixed-col/3/css.inc +++ /dev/null @@ -1,119 +0,0 @@ -/** ODS-TABLE FIXED COLUMN **/ - -[class*="sticky-col-"] { - --counter-col-width: 35px; /* Index column, record counter */ - --1st-col-width: 170px; /* First data column */ - --2nd-col-width: 150px; /* Second data column */ - --3rd-col-width: 100px; /* Third data column */ - - --bg-color-odd: #f4f4f4; - --bg-color-even: white; - --hover-color: #e0e0e0; -} - - -/** Override settings for specific tables */ -.darkerfixed { - --bg-color-odd: #dcdcdc; - --bg-color-even: #f3f3f3; - --hover-color: #a1a1a1; -} - - -/* Set the table relative, to stick columns */ -[class*="sticky-col-"] thead.odswidget-table__internal-header-table-header, -[class*="sticky-col-"] table.odswidget-table__internal-table { - position: relative; -} - -/* Header and content position and width */ -.sticky-col-1 th.odswidget-table__header-cell:nth-child(1), -.sticky-col-2 th.odswidget-table__header-cell:nth-child(1), -.sticky-col-3 th.odswidget-table__header-cell:nth-child(1), -.sticky-col-1 td.odswidget-table__cell:nth-child(1), -.sticky-col-2 td.odswidget-table__cell:nth-child(1), -.sticky-col-3 td.odswidget-table__cell:nth-child(1) { - position: sticky; - left: 0; - z-index: 1; -} -.sticky-col-1 th.odswidget-table__header-cell:nth-child(1) > div, -.sticky-col-2 th.odswidget-table__header-cell:nth-child(1) > div, -.sticky-col-3 th.odswidget-table__header-cell:nth-child(1) > div, -.sticky-col-1 td.odswidget-table__cell:nth-child(1) > div, -.sticky-col-2 td.odswidget-table__cell:nth-child(1) > div, -.sticky-col-3 td.odswidget-table__cell:nth-child(1) > div { - width: var(--counter-col-width) !important; - max-width: inherit; -} -.sticky-col-1 th.odswidget-table__header-cell:nth-child(2), -.sticky-col-2 th.odswidget-table__header-cell:nth-child(2), -.sticky-col-3 th.odswidget-table__header-cell:nth-child(2), -.sticky-col-1 td.odswidget-table__cell:nth-child(2), -.sticky-col-2 td.odswidget-table__cell:nth-child(2), -.sticky-col-3 td.odswidget-table__cell:nth-child(2) { - position: sticky; - left: calc(var(--counter-col-width) + 15px); - z-index: 1; -} -.sticky-col-1 th.odswidget-table__header-cell:nth-child(2) > div, -.sticky-col-2 th.odswidget-table__header-cell:nth-child(2) > div, -.sticky-col-3 th.odswidget-table__header-cell:nth-child(2) > div, -.sticky-col-1 td.odswidget-table__cell:nth-child(2) > div, -.sticky-col-2 td.odswidget-table__cell:nth-child(2) > div, -.sticky-col-3 td.odswidget-table__cell:nth-child(2) > div { - width: var(--1st-col-width) !important; - max-width: inherit; -} -.sticky-col-2 th.odswidget-table__header-cell:nth-child(3), -.sticky-col-3 th.odswidget-table__header-cell:nth-child(3), -.sticky-col-2 td.odswidget-table__cell:nth-child(3), -.sticky-col-3 td.odswidget-table__cell:nth-child(3) { - position: sticky; - left: calc(var(--counter-col-width) + 32px + var(--1st-col-width)); - z-index: 1; -} -.sticky-col-2 th.odswidget-table__header-cell:nth-child(3) > div, -.sticky-col-3 th.odswidget-table__header-cell:nth-child(3) > div, -.sticky-col-2 td.odswidget-table__cell:nth-child(3) > div, -.sticky-col-3 td.odswidget-table__cell:nth-child(3) > div { - width: calc(var(--2nd-col-width) + 11px) !important; - max-width: inherit; -} -.sticky-col-3 th.odswidget-table__header-cell:nth-child(4), -.sticky-col-3 td.odswidget-table__cell:nth-child(4) { - position: sticky; - left: calc(var(--counter-col-width) + 32px + var(--1st-col-width) + 32px + var(--2nd-col-width)); - z-index: 1; -} -.sticky-col-3 th.odswidget-table__header-cell:nth-child(4) > div, -.sticky-col-3 td.odswidget-table__cell:nth-child(4) > div { - width: calc(var(--3rd-col-width) + 11px) !important; - max-width: inherit; -} - - -/* Background and hover colors */ -.sticky-col-1 tr.odswidget-table__internal-table-row:nth-child(odd) td.odswidget-table__cell:nth-child(-n+2), -.sticky-col-2 tr.odswidget-table__internal-table-row:nth-child(odd) td.odswidget-table__cell:nth-child(-n+3), -.sticky-col-3 tr.odswidget-table__internal-table-row:nth-child(odd) td.odswidget-table__cell:nth-child(-n+4) { - background-color: var(--bg-color-odd); -} -.sticky-col-1 tr.odswidget-table__internal-table-row:nth-child(even) td.odswidget-table__cell:nth-child(-n+2), -.sticky-col-2 tr.odswidget-table__internal-table-row:nth-child(even) td.odswidget-table__cell:nth-child(-n+3), -.sticky-col-3 tr.odswidget-table__internal-table-row:nth-child(even) td.odswidget-table__cell:nth-child(-n+4) { - background-color: var(--bg-color-even); -} -.sticky-col-1 tr.odswidget-table__internal-table-row:hover td.odswidget-table__cell:nth-child(-n+2), -.sticky-col-2 tr.odswidget-table__internal-table-row:hover td.odswidget-table__cell:nth-child(-n+3), -.sticky-col-3 tr.odswidget-table__internal-table-row:hover td.odswidget-table__cell:nth-child(-n+4) { - background-color: var(--hover-color); -} - -/* Bonus, petite marge à droite pour marquer la séparation entre la colonne sticky et le reste */ -.sticky-col-1 td.odswidget-table__cell:nth-child(2) > div, -.sticky-col-2 td.odswidget-table__cell:nth-child(3) > div, -.sticky-col-3 td.odswidget-table__cell:nth-child(4) > div { - border-right: 1px solid var(--hover-color); - margin-right: -1px; -} diff --git a/content/widget-tricks/ods-table-fixed-col/3/html.inc b/content/widget-tricks/ods-table-fixed-col/3/html.inc deleted file mode 100644 index 93ebd9340..000000000 --- a/content/widget-tricks/ods-table-fixed-col/3/html.inc +++ /dev/null @@ -1,10 +0,0 @@ - -

    3 column fixed for wide screen, 1 column fixed when the table is reduced

    -
    - -
    -
    \ No newline at end of file diff --git a/content/widget-tricks/ods-table-fixed-col/3/index.md b/content/widget-tricks/ods-table-fixed-col/3/index.md deleted file mode 100644 index e5f21a1cc..000000000 --- a/content/widget-tricks/ods-table-fixed-col/3/index.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: "Responsive concern, unfix columns for smaller devices" -height: 600 ---- - -Fixing too many columns can lead to a totally stuck and unreadable table on mobile device. - -`ods-get-element-layout` get the size of an element and output the value in a variable. -[(Widget documentation here)](https://help.opendatasoft.com/widgets/#/api/ods-widgets.directive:odsGetElementLayout). - -We can then fix the right number of columns depending on the width of the table. - -> Note: you can even fix columns only for desktop devices, and any for mobile \ No newline at end of file diff --git a/content/widget-tricks/ods-table-fixed-col/index.md b/content/widget-tricks/ods-table-fixed-col/index.md deleted file mode 100644 index 94e7934f5..000000000 --- a/content/widget-tricks/ods-table-fixed-col/index.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: "ods-table: Fixed column" -date: 2021-07-30T18:37:13+02:00 -tags: ["display", "list"] -resources: -- src: '*/' - name: folder-:counter ---- - diff --git a/content/widget-tricks/share-print/1/html.inc b/content/widget-tricks/share-print/1/html.inc index c31f93dca..4e7636649 100644 --- a/content/widget-tricks/share-print/1/html.inc +++ b/content/widget-tricks/share-print/1/html.inc @@ -1,6 +1,6 @@
    @@ -11,34 +11,34 @@ Filter and have a look to your browser URL ! It's synced !

    - https://userclub.opendatasoft.com/pages/widgettrick-shareandprint/?{{ ctx.getQueryStringURL() }} + https://userclub.huwise.com/pages/widgettrick-shareandprint/?{{ ctx.getQueryStringURL() }}

    Share through social network or by email:

    -
    +
    \ No newline at end of file diff --git a/content/widget-tricks/share-print/1/schema.md b/content/widget-tricks/share-print/1/schema.md new file mode 100644 index 000000000..bfbff9107 --- /dev/null +++ b/content/widget-tricks/share-print/1/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `record-stores` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/record-stores/table/) + +**Fields in use:** + +|coordonnees_geo (geo_point)|name|hasclosed|city| +|---|---|---|---| +|34.67429180,135.50417380|Naminohana Records|no|Osaka| +|-12.05070340,-77.03952410|Disqueria|no|Lima| +|50.06394440,19.93641400|Music Corner Sp. o.o.|no|Kraków| +|-25.77143478,28.23460960|Musica|no|Pretoria + diff --git a/content/widget-tricks/share-print/2/html.inc b/content/widget-tricks/share-print/2/html.inc index 5b9ad8335..0e24c2882 100644 --- a/content/widget-tricks/share-print/2/html.inc +++ b/content/widget-tricks/share-print/2/html.inc @@ -1,22 +1,25 @@

    - Record store card Print it (Ctrl/Cmd+P) or just share the link ! + Record store card + Print it (Ctrl/Cmd+P) or just share the link + !

    - -
    +
    • -

      - {{ field.label }} -

      -

      - {{ item.fields[field.name] }} -

      +

      {{ field.volcano_name }}

      +

      {{ item.fields[field.name] }}

    -
    +
    \ No newline at end of file diff --git a/content/widget-tricks/share-print/2/schema.md b/content/widget-tricks/share-print/2/schema.md new file mode 100644 index 000000000..d2d796b13 --- /dev/null +++ b/content/widget-tricks/share-print/2/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `record-stores` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/record-stores/table/) + +**Fields in use:** + +|coordonnees_geo (geo_point) |name|hasclosed|city|countrycode|state|latitude|longitude|supporter|placeidh|rate| +|---|---|---|---|---|---|---|---|---|---|---| +|34.67429180,135.50417380|Naminohana Records|no|Osaka|JP||34.67429180|135.50417380|0|f63363a2c9f10f3ac7adcfb31f6db486|| +|-12.05070340,-77.03952410|Disqueria|no|Lima|PE||-12.05070340|-12.05070340|0|06157739f6792af80068e9913152590a|| +|50.06394440,19.93641400|Music Corner Sp. o.o.|no|Kraków|PL||50.06394440|19.93641400|0|c43ef6c5b6a3dcc6368aec9e41e0625f|| +|-25.77143478,28.23460960|Musica|no|Pretoria|ZA||-25.77143478|28.23460960|0|26b2ce9808bcf3b531996fdd2914bd40|| + diff --git a/content/widget-tricks/svg-maps/1/html.inc b/content/widget-tricks/svg-maps/1/html.inc index 49c3fe4eb..92aa36dd6 100644 --- a/content/widget-tricks/svg-maps/1/html.inc +++ b/content/widget-tricks/svg-maps/1/html.inc @@ -1,6 +1,6 @@ + ctx-domain="userclub">
    -
    -
    -
    -
    -
    -
    -
    diff --git a/content/widget-tricks/svg-maps/1/schema.md b/content/widget-tricks/svg-maps/1/schema.md new file mode 100644 index 000000000..bf6b751fa --- /dev/null +++ b/content/widget-tricks/svg-maps/1/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `liste-des-departements-metropole-dom` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/liste-des-departements-metropole-dom/table/) + +**Fields in use:** + +|code_text|name|code (numeric)| +|---|---|---| +|04|Alpes-de-Haute-Provence|4| +|42|Loire|42| +|57|Moselle|57| +|15|Cantal|15| + diff --git a/content/widget-tricks/svg-maps/2/html.inc b/content/widget-tricks/svg-maps/2/html.inc index 74c71a8fd..9651b89a8 100644 --- a/content/widget-tricks/svg-maps/2/html.inc +++ b/content/widget-tricks/svg-maps/2/html.inc @@ -1,6 +1,6 @@ + ctx-domain="userclub">
    -
    -
    diff --git a/content/widget-tricks/svg-maps/2/schema.md b/content/widget-tricks/svg-maps/2/schema.md new file mode 100644 index 000000000..bf6b751fa --- /dev/null +++ b/content/widget-tricks/svg-maps/2/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `liste-des-departements-metropole-dom` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/liste-des-departements-metropole-dom/table/) + +**Fields in use:** + +|code_text|name|code (numeric)| +|---|---|---| +|04|Alpes-de-Haute-Provence|4| +|42|Loire|42| +|57|Moselle|57| +|15|Cantal|15| + diff --git a/content/widget-tricks/svg-maps/3/html.inc b/content/widget-tricks/svg-maps/3/html.inc index 8a644d0c0..00dd23885 100644 --- a/content/widget-tricks/svg-maps/3/html.inc +++ b/content/widget-tricks/svg-maps/3/html.inc @@ -1,6 +1,6 @@ + ctx-domain="userclub">
    -
    diff --git a/content/widget-tricks/svg-maps/3/schema.md b/content/widget-tricks/svg-maps/3/schema.md new file mode 100644 index 000000000..bf6b751fa --- /dev/null +++ b/content/widget-tricks/svg-maps/3/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `liste-des-departements-metropole-dom` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/liste-des-departements-metropole-dom/table/) + +**Fields in use:** + +|code_text|name|code (numeric)| +|---|---|---| +|04|Alpes-de-Haute-Provence|4| +|42|Loire|42| +|57|Moselle|57| +|15|Cantal|15| + diff --git a/content/widget-tricks/svg-maps/4/html.inc b/content/widget-tricks/svg-maps/4/html.inc index 6d58401a3..c56818fc2 100644 --- a/content/widget-tricks/svg-maps/4/html.inc +++ b/content/widget-tricks/svg-maps/4/html.inc @@ -1,6 +1,6 @@ + ctx-domain="userclub">
    -
    -
    -
    -
    -
    -
    diff --git a/content/widget-tricks/svg-maps/4/schema.md b/content/widget-tricks/svg-maps/4/schema.md new file mode 100644 index 000000000..bf6b751fa --- /dev/null +++ b/content/widget-tricks/svg-maps/4/schema.md @@ -0,0 +1,11 @@ +**Dataset in use:** `liste-des-departements-metropole-dom` [(See it on userclub domain)](https://userclub.huwise.com/explore/dataset/liste-des-departements-metropole-dom/table/) + +**Fields in use:** + +|code_text|name|code (numeric)| +|---|---|---| +|04|Alpes-de-Haute-Provence|4| +|42|Loire|42| +|57|Moselle|57| +|15|Cantal|15| + diff --git a/content/widget-tricks/svg-maps/5/html.inc b/content/widget-tricks/svg-maps/5/html.inc index 0290babab..9d16544fd 100644 --- a/content/widget-tricks/svg-maps/5/html.inc +++ b/content/widget-tricks/svg-maps/5/html.inc @@ -5,7 +5,7 @@ context="ctx" ctx-dataset="liste-des-departements-metropole-dom" ctx-parameters="{'q':'code > 3'}" - ctx-domain="discovery"> + ctx-domain="userclub"> @@ -48,11 +48,9 @@ crossorigin="anonymous" /> - {{ $style := resources.Get "scss/main.scss" | resources.ToCSS (dict "outputStyle" "compressed" "includePaths" (slice "node_modules")) }} + {{ $style := resources.Get "scss/main.scss" | css.Sass (dict "outputStyle" "compressed" "includePaths" (slice "node_modules")) }} - - - + diff --git a/layouts/_default/example-box.html b/layouts/_default/example-box.html index 72503111c..e468afd5b 100644 --- a/layouts/_default/example-box.html +++ b/layouts/_default/example-box.html @@ -12,7 +12,19 @@ {{ $html = printf "%s%s%s" "
    \n" $htmlcontent "
    " }} {{ end }} - +{{ $baseurl := "" }} +{{ if .Params.domainid }} + {{ $baseurl = .Params.domainid }} +{{ else }} + {{ $baseurl = "userclub" }} +{{ end }} + +{{ $defaultDomain := "" }} +{{ if .Params.domainid }} + {{ $defaultDomain = printf "%s%s%s" "" }} +{{ end }} + +{{ $schema := path.Join .File.Dir "schema.md" }}
    -
    - + {{ end }} +
    - - @@ -188,8 +205,14 @@
  • - - Making a full dashboard + + Full dashboard + +
  • + +
  • + + Full dashboard with multiple primary colors
  • @@ -203,18 +226,70 @@
    - - + - © Copyright 2020 + © Copyright 2026
    @@ -8943,7 +11809,7 @@

    diff --git a/public/components/page/1/index.html b/public/components/page/1/index.html index 39f5e520a..7e005d446 100644 --- a/public/components/page/1/index.html +++ b/public/components/page/1/index.html @@ -1 +1,9 @@ -https://codelibrary.opendatasoft.com/components/ \ No newline at end of file + + + + https://codelibrary.huwize.com/components/ + + + + + diff --git a/public/components/search-box/index.html b/public/components/search-box/index.html index c622f027b..ca4fdd4a4 100644 --- a/public/components/search-box/index.html +++ b/public/components/search-box/index.html @@ -39,9 +39,7 @@ - - - + @@ -73,69 +71,88 @@

    - @@ -185,18 +202,70 @@
    - - + - © Copyright 2020 + © Copyright 2026
    @@ -1709,7 +1854,7 @@

    diff --git a/public/components/search-module/1/html.inc b/public/components/search-module/1/html.inc index 6dda9b7d6..5b175d407 100644 --- a/public/components/search-module/1/html.inc +++ b/public/components/search-module/1/html.inc @@ -1,11 +1,12 @@
    +
    + + +
    + + Search results will be displayed bellow, as a list of external links + +
      + +
    • +
      + {{item.com_arm_name }} ({{item.dep_code }}) + + Filter on the selected city +
      +
    • +
    • + More than 10 results. Continue typing to narrow your search... +
    • +
    +
    + + +
    +

    + {{ variables.selection }} +

    + +
    +

    + + + + + + + + +
    + diff --git a/public/components/search-module/index.html b/public/components/search-module/index.html index 80561b02f..704d73eb7 100644 --- a/public/components/search-module/index.html +++ b/public/components/search-module/index.html @@ -39,9 +39,7 @@ - - - + @@ -73,69 +71,88 @@
    - @@ -181,6 +198,12 @@ +
  • + + Search Bar to search on a specific field + +
  • +
    @@ -191,18 +214,70 @@
    - - + - © Copyright 2020 + © Copyright 2026
    @@ -2596,7 +3977,7 @@

    diff --git a/public/components/sticky-header/2/html.inc b/public/components/sticky-header/2/html.inc index d80b45239..c72d5e86d 100644 --- a/public/components/sticky-header/2/html.inc +++ b/public/components/sticky-header/2/html.inc @@ -13,7 +13,7 @@ Number of records: {{ shanghairanking.dataset.metas.records_count | number }}

    - + View
    diff --git a/public/components/sticky-header/index.html b/public/components/sticky-header/index.html index 40527e6ba..514e0ae33 100644 --- a/public/components/sticky-header/index.html +++ b/public/components/sticky-header/index.html @@ -39,9 +39,7 @@ - - - + @@ -73,69 +71,88 @@
    - @@ -185,18 +202,70 @@
    - - + - © Copyright 2020 + © Copyright 2026
    @@ -1638,7 +1819,7 @@

    diff --git a/public/components/switch-toggle/5/css.inc b/public/components/switch-toggle/5/css.inc index 28395ac99..31dcc5ce5 100644 --- a/public/components/switch-toggle/5/css.inc +++ b/public/components/switch-toggle/5/css.inc @@ -1,162 +1,64 @@ -/* Content Card - ========================================================================== */ - -.content-card { - background-color: var(--boxes-background); - padding: 26px; - border-radius: 4px; - margin-bottom: 20px; - height: 100%; -} -.content-card-title { - color: var(--titles); - font-size: 1.2rem; - line-height: 1.5; - font-weight: normal; - margin-top: 0; - margin-bottom: 13px; - max-width: 100%; -} -.content-card-description { - color: var(--text); - font-size: 1rem; - line-height: 1.5; - font-weight: normal; - margin-top: 0; - margin-bottom: 26px; - max-width: 100%; -} -.content-card-icon { - color: var(--highlight); - font-size: 2rem; - margin-bottom: 13px; - max-width: 100%; -} -.content-card-link { - color: var(--links); - font-weight: bold; - transition: all .2s; - opacity: 1; - max-width: 100%; -} -.content-card-link:hover { - opacity: .7; - text-decoration: none; -} -.content-card-button { - color: var(--highlight); - border: 1px solid var(--highlight); - background: transparent; - display: inline-block; - text-align: center; - font-size: .867rem; - border-radius: 4px; - padding: .5rem 1.15rem; - text-decoration: none; - transition: all .2s; -} -.content-card-button:hover { - background-color: var(--highlight); - color: #FFFFFF; - text-decoration: none; -} - -.switch-container { - display: flex; - align-items: center; -} - -/* Button Group Switch - ========================================================================== */ - -.switch { - display: inline-block; - margin-bottom: 0; - margin-left: 0.5rem; -} - -.switch-button { - /* background and border when in "off" state */ - background: var(--highlight); - border: 2px solid var(--highlight); - display: grid; - grid-template-columns: 1fr 1fr; - border-radius: 6px; - color: #FFFFFF; - position: relative; - cursor: pointer; - outline: 0; - user-select: none; +/* Flat style +=============================================================================*/ +.flat-button { + font-size: 1rem; + color: var(--links); + border: 1px solid var(--links); + border-radius: 2rem; + background: #FFF; + padding: .37rem 1rem; + margin-right: 6px; } -.switch-input:not(:checked) + .switch-button .switch-button-left { - /* text color when in "off" state */ - color: var(--highlight); +.flat-button:hover { + opacity: 0.65; } -.switch-input { - display: none; +.flat-button-active { + background-color: var(--links); + color: #FFF; } -.switch-button span { +/* Press style +=============================================================================*/ +.press-button { font-size: 1rem; - padding: 0.2rem .7rem; - text-align: center; - z-index: 2; - color: #FFFFFF; - transition: color .2s; -} - -.switch-button::before { - content: ''; - position: absolute; - background-color: #FFFFFF; - box-shadow: 0 1px 3px rgba(0,0,0,.4); - border-radius: 4px; - top: 0; - left: 0; - height: 100%; - width: 50%; - z-index: 1; - transition: left .3s cubic-bezier(0.175, 0.885, 0.320, 1), - padding .2s ease, margin .2s ease; + color: var(--links); + border: 1px solid var(--links); + border-radius: 2rem; + background: #FFF; + padding: .37rem 1rem; + border-bottom-width: 6px; } -.switch-button:hover::before { - will-change: padding; +.press-button:hover { + opacity: 0.65; } -.switch-button:active::before { - padding-right: .4rem; +.press-button-active { + margin-top: 3px; + border-bottom-width: 3px; } - -/* "On" state - ========================== */ - -.switch-input:checked + .switch-button { - /* background and border when in "on" state */ - background-color: var(--links); - border-color: var(--links); +/* Shadow style +=============================================================================*/ +.shadow-button { + font-size: 1rem; + background: rgb(0, 136, 204); + background: linear-gradient(0deg, rgba(0, 136, 204, 1) 0%, rgba(6, 168, 249, 1) 100%); + color: #FFF; + border: 1px solid var(--links); + border-radius: 2rem; + padding: .37rem 1rem; } -.switch-input:checked + .switch-button .switch-button-right { - /* text color when in "on" state */ - color: var(--links); +.shadow-button-active { + background-color: rgba(0, 136, 204, 1); + box-shadow: -1px 2px 10px 3px rgba(0, 0, 0, 0.3) inset; + padding-top: .47rem; + padding-bottom: .27rem; } -.switch-input:checked + .switch-button::before { - left: 50%; -} -.switch-input:checked + .switch-button:active::before { - margin-left: -.4rem; -} -/* Checkbox in disabled state - ========================== */ -.switch-input[type="checkbox"]:disabled + .switch-button { - opacity: 0.6; - cursor: not-allowed; -} diff --git a/public/components/switch-toggle/5/html.inc b/public/components/switch-toggle/5/html.inc index 0d367dcd1..7cf19773b 100644 --- a/public/components/switch-toggle/5/html.inc +++ b/public/components/switch-toggle/5/html.inc @@ -1,45 +1,34 @@ -
    -
    -
    -

    - France departments -

    -

    - Cardano could be many technical analysis since Nexo data mining a fundamental analysis. -

    -

    - Ravencoin generates a amazing fish of lots of market cap, and Waves serves many quick anti-money laundering! Solidity allowed lots of fast peer-to-peer network. -

    -
    - View : - -
    -
    -
    - -
    - -
    -
    - -
    -
    -
    +
    +
    +

    + Flat style {{ flatbutton.active ? 'On' : 'Off' }} +

    +
    -
    + +
    +

    + Press style {{ pressbutton.active ? 'On' : 'Off' }} +

    + +
    + +
    +

    + Gradient and shadow style {{ shadowbutton.active ? 'On' : 'Off' }} +

    + +
    +
    \ No newline at end of file diff --git a/public/components/switch-toggle/6/css.inc b/public/components/switch-toggle/6/css.inc new file mode 100644 index 000000000..28395ac99 --- /dev/null +++ b/public/components/switch-toggle/6/css.inc @@ -0,0 +1,162 @@ +/* Content Card + ========================================================================== */ + +.content-card { + background-color: var(--boxes-background); + padding: 26px; + border-radius: 4px; + margin-bottom: 20px; + height: 100%; +} +.content-card-title { + color: var(--titles); + font-size: 1.2rem; + line-height: 1.5; + font-weight: normal; + margin-top: 0; + margin-bottom: 13px; + max-width: 100%; +} +.content-card-description { + color: var(--text); + font-size: 1rem; + line-height: 1.5; + font-weight: normal; + margin-top: 0; + margin-bottom: 26px; + max-width: 100%; +} +.content-card-icon { + color: var(--highlight); + font-size: 2rem; + margin-bottom: 13px; + max-width: 100%; +} +.content-card-link { + color: var(--links); + font-weight: bold; + transition: all .2s; + opacity: 1; + max-width: 100%; +} +.content-card-link:hover { + opacity: .7; + text-decoration: none; +} +.content-card-button { + color: var(--highlight); + border: 1px solid var(--highlight); + background: transparent; + display: inline-block; + text-align: center; + font-size: .867rem; + border-radius: 4px; + padding: .5rem 1.15rem; + text-decoration: none; + transition: all .2s; +} +.content-card-button:hover { + background-color: var(--highlight); + color: #FFFFFF; + text-decoration: none; +} + +.switch-container { + display: flex; + align-items: center; +} + +/* Button Group Switch + ========================================================================== */ + +.switch { + display: inline-block; + margin-bottom: 0; + margin-left: 0.5rem; +} + +.switch-button { + /* background and border when in "off" state */ + background: var(--highlight); + border: 2px solid var(--highlight); + display: grid; + grid-template-columns: 1fr 1fr; + border-radius: 6px; + color: #FFFFFF; + position: relative; + cursor: pointer; + outline: 0; + user-select: none; +} + +.switch-input:not(:checked) + .switch-button .switch-button-left { + /* text color when in "off" state */ + color: var(--highlight); +} + +.switch-input { + display: none; +} + +.switch-button span { + font-size: 1rem; + padding: 0.2rem .7rem; + text-align: center; + z-index: 2; + color: #FFFFFF; + transition: color .2s; +} + +.switch-button::before { + content: ''; + position: absolute; + background-color: #FFFFFF; + box-shadow: 0 1px 3px rgba(0,0,0,.4); + border-radius: 4px; + top: 0; + left: 0; + height: 100%; + width: 50%; + z-index: 1; + transition: left .3s cubic-bezier(0.175, 0.885, 0.320, 1), + padding .2s ease, margin .2s ease; +} + +.switch-button:hover::before { + will-change: padding; +} + +.switch-button:active::before { + padding-right: .4rem; +} + + +/* "On" state + ========================== */ + +.switch-input:checked + .switch-button { + /* background and border when in "on" state */ + background-color: var(--links); + border-color: var(--links); +} + +.switch-input:checked + .switch-button .switch-button-right { + /* text color when in "on" state */ + color: var(--links); +} + +.switch-input:checked + .switch-button::before { + left: 50%; +} + +.switch-input:checked + .switch-button:active::before { + margin-left: -.4rem; +} + +/* Checkbox in disabled state + ========================== */ + +.switch-input[type="checkbox"]:disabled + .switch-button { + opacity: 0.6; + cursor: not-allowed; +} diff --git a/public/components/switch-toggle/6/html.inc b/public/components/switch-toggle/6/html.inc new file mode 100644 index 000000000..0d367dcd1 --- /dev/null +++ b/public/components/switch-toggle/6/html.inc @@ -0,0 +1,45 @@ +
    +
    +
    +

    + France departments +

    +

    + Cardano could be many technical analysis since Nexo data mining a fundamental analysis. +

    +

    + Ravencoin generates a amazing fish of lots of market cap, and Waves serves many quick anti-money laundering! Solidity allowed lots of fast peer-to-peer network. +

    +
    + View : + +
    +
    +
    + +
    + +
    +
    + +
    +
    +
    +
    +
    diff --git a/public/components/switch-toggle/index.html b/public/components/switch-toggle/index.html index fd5df39b0..3744c64e6 100644 --- a/public/components/switch-toggle/index.html +++ b/public/components/switch-toggle/index.html @@ -39,9 +39,7 @@ - - - + @@ -73,69 +71,88 @@
    - @@ -187,6 +204,12 @@ +
  • + + Active/inactive style + +
  • +
  • Simple example @@ -203,18 +226,70 @@
  • - - + - © Copyright 2020 + © Copyright 2026
    @@ -4076,7 +4893,7 @@

    diff --git a/public/components/table-module/index.html b/public/components/table-module/index.html index f7839f3b7..e7f9b972b 100644 --- a/public/components/table-module/index.html +++ b/public/components/table-module/index.html @@ -39,9 +39,7 @@ - - - + @@ -73,69 +71,88 @@

    - @@ -197,18 +214,70 @@
    - - + - © Copyright 2020 + © Copyright 2026
    @@ -3579,7 +4002,7 @@

    diff --git a/public/css/theme.css b/public/css/theme.css index 48f4f84ac..7e2f57262 100644 --- a/public/css/theme.css +++ b/public/css/theme.css @@ -1,7 +1,7 @@ :root { --links: #0088CC; - --page-background: #f6f8fb; - --header-links: #FFFFFF; + --page-background: #ffffff; + --header-links: #000000; --titles: #1E0C33; --section-titles: #1E0C33; --highlight: #EC643C; @@ -11,11 +11,11 @@ --header-background: #1E0C33; --footer-background: #FFFFFF; --text: #333333; - --section-titles-background: #FFFFFF; + --section-titles-background: #F6F8FB; } body { - background-color: white; /*var(--page-background);*/ + background-color: var(--page-background); padding: 20px 10px; } diff --git a/public/custom-views/custom-view-generator/1/config.inc b/public/custom-views/custom-view-generator/1/config.inc index 4a04e1368..731e4c7cb 100644 --- a/public/custom-views/custom-view-generator/1/config.inc +++ b/public/custom-views/custom-view-generator/1/config.inc @@ -4,11 +4,11 @@ fieldDefaultRangeStartsNow = true; view = 'cards'; - fieldsList = ['powered_by','description_en']; + fieldsList = ['purpose','description_en']; fieldLink = 'reference_url'; fieldLinkLabel = 'See it live'; - cardTitle = 'name_of_the_initiative_en'; + cardTitle = 'name_of_the_initiative'; fieldPhoto = ''; imagePosition = 'left'; itemsPerRow = '2'; diff --git a/public/custom-views/custom-view-generator/index.html b/public/custom-views/custom-view-generator/index.html index ce193206d..452f83362 100644 --- a/public/custom-views/custom-view-generator/index.html +++ b/public/custom-views/custom-view-generator/index.html @@ -39,9 +39,7 @@ - - - + @@ -73,69 +71,88 @@

    - @@ -179,7 +196,7 @@
    - - + - © Copyright 2020 + © Copyright 2026
    @@ -3386,7 +3558,7 @@

    diff --git a/public/custom-views/custom-view-generator/posthtml.inc b/public/custom-views/custom-view-generator/posthtml.inc index 1df92a6e9..c10f35100 100644 --- a/public/custom-views/custom-view-generator/posthtml.inc +++ b/public/custom-views/custom-view-generator/posthtml.inc @@ -69,7 +69,7 @@ Available functions are SUM, AVG, COUNT, STD, MAX, MIN. Please see the documentation for more information - https://help.opendatasoft.com/widgets/#/api/ods-widgets.directive:odsAggregation + https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsAggregation Please see all available icons here https://fontawesome.com/v4.7.0/icons/ diff --git a/public/custom-views/domain-dataset/index.html b/public/custom-views/domain-dataset/index.html index 16a545b8c..539c73fab 100644 --- a/public/custom-views/domain-dataset/index.html +++ b/public/custom-views/domain-dataset/index.html @@ -39,9 +39,7 @@ - - - + @@ -73,69 +71,88 @@

    - @@ -179,7 +196,7 @@
    - - + - © Copyright 2020 + © Copyright 2026
    @@ -2269,7 +2453,7 @@

    diff --git a/public/custom-views/eco-compteur/1/css.inc b/public/custom-views/eco-compteur/1/css.inc new file mode 100644 index 000000000..ebf6071d8 --- /dev/null +++ b/public/custom-views/eco-compteur/1/css.inc @@ -0,0 +1,583 @@ +:root { + --main-color: var(--section-titles); + --secondary-color: var(--highlight); + --bg-color: var(--section-titles-background); + --menu-text-color: var(--text); + --menu-bg-color: white; + --menu-button-bg-color: var(--highlight); + --menu-button-text-color: white; +} + +/* Remove custom view padding */ +.ods-tabs__pane.ods-tabs__pane--horizontal { + padding: 0; +} + +/* Subheader +========================================================================== */ +.subheader-wrapper { + background-color: var(--menu-bg-color); + position: sticky; + top: 0; + left: 0; + right: 0; + z-index: 90; +} + +.subheader { + color: var(--menu-text-color); + padding-top: 1.5rem; + padding-bottom: 1.5rem; + box-shadow: 0 10px 12px -8px #bec2d5; +} + +@media screen and (min-width: 992px) { + .subheader { + flex-direction: row; + align-items: center; + } +} +.subheader-top { + display: flex; + align-items: center; + justify-content: space-between; +} + +.subheader-button { + padding: 0.5rem 2.5rem; + font-weight: bold; + background-repeat: no-repeat; + background-position: right 0.7rem top 50%, 0 0; + background-size: 19px; +} + +.subheader-button-active { + color: #000000; + background-color: #D3AA25; + background-image: url("/assets/theme_image/icon-close-panel.svg"); +} + +.subheader-panel { + background-color: var(--menu-button-bg-color); + z-index: 1; + width: 100%; + box-shadow: 0 5px 14px black; + max-height: calc(100vh - 100px); + overflow: auto; +} + +.subheader-panel-wrapper { + padding: 45px 0; + color: var(--menu-text-color); + display: flex; + gap: 10px; + flex-direction: column; +} + +@media screen and (min-width: 767px) { + .subheader-panel-wrapper { + flex-direction: row; + align-items: stretch; + justify-content: space-between; + } +} +.subheader-panel-item { + color: var(--menu-button-text-color); +} +@media (min-width: 992px) { + .subheader-panel-item.carte { + flex: 3; + } +} +@media (min-width: 767px) { + .subheader-panel-item.carte { + flex: 2; + } +} +@media (min-width: 767px) { + .subheader-panel-item.detail-capteur { + flex: 1; + } +} + +.subheader-panel-flex { + display: flex; + gap: 10px; + align-items: baseline; + justify-content: space-between; + margin-bottom: 20px; +} + +.subheader-panel-flex h3 { + margin: 0; +} + +.subheader-panel-flex-right { + display: flex; + flex-wrap: wrap; + gap: 10px; + align-items: center; +} +.subheader-panel-flex-right button { + height: 31px; +} + +@media screen and (min-width: 767px) { + .subheader-separator { + display: block; + flex: 0 0 auto; + width: 1px; + background-color: rgba(255, 255, 255, 0.26); + } +} + +.subheader-title { + font-size: 1.375rem; + font-weight: bold; + margin-bottom: 1.5rem; + color: var(--menu-button-text-color); + text-transform: uppercase; +} + +.subheader-timerange { + text-align: left; + display: flex; + flex-direction: column; + align-items: flex-start; +} + +.subheader-timerange .odswidget-timerange__input { + background-color: transparent; + color: white; + border-radius: 0; + border-color: #D3AA25; +} + +.subheader-select { + width: min(230px, 100%); + padding: 5px; +} + +.subheader-text { + color: var(--menu-text-color); +} + +.subheader-info { + color: var(--menu-text-color); + text-transform: uppercase; + font-weight: bold; + font-style: italic; + font-size: 1.1em; +} + +.subheader-panel .odswidget-date-range-slider .irs--flat .irs-from, +.subheader-panel .odswidget-date-range-slider .irs--flat .irs-single, +.subheader-panel .odswidget-date-range-slider .irs--flat .irs-to { + background-color: var(--main-color); +} + +.subheader-panel .irs--flat .irs-from, +.subheader-panel .irs--flat .irs-to, +.subheader-panel .irs--flat .irs-single { + color: var(--menu-button-bg-color); +} + +.subheader-panel .odswidget-date-range-slider .irs--flat .irs-bar { + background-color: var(--menu-button-bg-color); +} + +.subheader-panel .odswidget-date-range-slider .irs--flat .irs-from:before, +.subheader-panel .odswidget-date-range-slider .irs--flat .irs-single:before, +.subheader-panel .odswidget-date-range-slider .irs--flat .irs-to:before { + border-top-color: var(--menu-button-bg-color); +} + +.subheader-panel .odswidget-date-range-slider .irs--flat .irs-handle > i:first-child { + background-color: var(--menu-button-bg-color); +} + +.subheader-panel .odswidget.odswidget-date-range-slider { + margin: 0 50px 10px; +} + +/* Buttons +========================================================================== */ +.subheader-button { + display: inline-block; + text-decoration: none; + cursor: pointer; + font-size: 1.1rem; + font-weight: normal; + color: var(--menu-button-bg-color); + background-color: var(--menu-button-text-color); + border: 1px solid var(--menu-button-bg-color); + padding: 0.3rem 1.5rem; + border-radius: 0px; + transition: all 0.2s; +} + +.subheader-button-active { + color: var(--menu-button-text-color); + background-color: var(--menu-button-bg-color); + border: 1px solid var(--menu-button-text-color); + text-decoration: none; +} + +.subheader-button:hover { + opacity: 0.65; +} + +.subheader-button-large { + padding: 0.5rem 2rem; +} + +/* Detail capteur */ +.detail-capteur-content dt { + font-weight: 200; +} +.detail-capteur-content dd { + font-weight: 500; + margin-left: 1.5rem; +} +.detail-capteur-content img { + border: 2px solid var(--menu-button-text-color); + max-height: 200px; + object-fit: cover; +} + +/* Section elements +========================================================================== */ +.page-section { + padding: 4.5rem 1.5rem; + background: linear-gradient(180deg, white, #fcfcff); +} +.page-section.bg-white { + background: white; +} + +/* Map */ +#dot-icon path { + stroke: black; +} + +/* Indicateur */ +h2.indicateur { + padding: 4px 4px 4px 15px; + margin-top: 40px; + margin-bottom: 20px; + font-size: 2.5rem; + width: calc(100% + 20px); + color: var(--main-color); + background: var(--bg-color); +} + +h2.indicateur .label { + font-size: 1.5rem; + font-weight: 400; +} + +h2.indicateur ~ p { + font-size: 1.2rem; + margin-bottom: 15px; +} + +.sous-indicateur { + margin-bottom: 30px; + border-left: solid 4px var(--main-color); +} + +.sous-indicateur h3, .sous-indicateur p { + padding-left: 10px; +} + +.sous-indicateur h3 { + font-size: 1.5rem; +} + +.sous-indicateur p { + font-size: 1.2rem; +} + +.indicateur-box { + padding: 4px; + background: var(--bg-color); +} + +section:nth-child(even) h2.indicateur { + width: 100%; + margin-left: -20px; + padding-left: 20px; +} +@media screen and (max-width: 1169px) { + section:nth-child(even) .row { + display: flex; + flex-direction: column-reverse; + } +} +@media screen and (max-width: 1169px) { + section:nth-child(odd) h2.indicateur { + width: 100%; + } +} +@media screen and (max-width: 1169px) { + section:nth-child(even) h2.indicateur { + margin-left: 0; + } +} + +/** +* License: MIT License +* Generated on 26 May 2021 +* Author: Fpassaniti for Huwise +* Version: 0.1 +* Description: ods-chart CUSTOM CSS LIBRARY. Go to http://codelibrary.huwise.com/widget-tricks/ods-chart-css/ for more information (doc & examples). +*/ +.extralarge-y-values .highcharts-yaxis-labels text, .large-y-values .highcharts-yaxis-labels text { + transform: translate(0, 4px); +} + +.hide-chart-legend .highcharts-legend-item span, .hide-chart-series .highcharts-series path.highcharts-graph, .hide-chart-series .highcharts-series rect, .hide-data-values .highcharts-data-label tspan, .hide-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .hide-tooltip-text .ods-highcharts__tooltip span, .hide-x-axisline .highcharts-axis.highcharts-xaxis path.highcharts-axis-line, .hide-x-axisline-ticks .highcharts-axis.highcharts-xaxis path.highcharts-tick, .hide-x-gridline .highcharts-xaxis-grid path.highcharts-grid-line, .hide-x-legend .highcharts-xaxis tspan, .hide-x-values .highcharts-xaxis-labels span, .hide-x-values .highcharts-xaxis-labels text, .hide-y-axisline .highcharts-axis.highcharts-yaxis path.highcharts-axis-line, .hide-y-gridline .highcharts-yaxis-grid path.highcharts-grid-line, .hide-y-legend .highcharts-yaxis tspan, .hide-y-values .highcharts-yaxis-labels span, .hide-y-values .highcharts-yaxis-labels text, .name-tooltip-value .ods-highcharts__tooltip b { + display: none !important; +} + +.highcharts-axis tspan, .highcharts-data-label tspan, .highcharts-label span, .highcharts-legend-item span, .highcharts-xaxis-labels text, .highcharts-yaxis-labels text { + font-family: Gotham-book, Arial, sans-serif !important; +} + +.name-tooltip-value .ods-highcharts__tooltip b, .small-chart-legend .highcharts-legend-item span, .small-data-values .highcharts-data-label tspan, .small-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .small-tooltip-text .ods-highcharts__tooltip span, .small-x-legend .highcharts-xaxis tspan, .small-x-values .highcharts-xaxis-labels span, .small-x-values .highcharts-xaxis-labels text, .small-y-legend .highcharts-yaxis tspan, .small-y-values .highcharts-yaxis-labels span, .small-y-values .highcharts-yaxis-labels text { + font-size: 12px !important; +} + +.medium-chart-legend .highcharts-legend-item span, .medium-data-values .highcharts-data-label tspan, .medium-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .medium-tooltip-text .ods-highcharts__tooltip span, .medium-x-legend .highcharts-xaxis tspan, .medium-x-values .highcharts-xaxis-labels span, .medium-x-values .highcharts-xaxis-labels text, .medium-y-legend .highcharts-yaxis tspan, .medium-y-values .highcharts-yaxis-labels span, .medium-y-values .highcharts-yaxis-labels text, .name-tooltip-value .ods-highcharts__tooltip b { + font-size: 14px !important; +} + +.large-chart-legend .highcharts-legend-item span, .large-data-values .highcharts-data-label tspan, .large-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .large-tooltip-text .ods-highcharts__tooltip span, .large-x-legend .highcharts-xaxis tspan, .large-x-values .highcharts-xaxis-labels span, .large-x-values .highcharts-xaxis-labels text, .large-y-legend .highcharts-yaxis tspan, .large-y-values .highcharts-yaxis-labels span, .large-y-values .highcharts-yaxis-labels text, .name-tooltip-value .ods-highcharts__tooltip b { + font-size: 16px !important; +} + +.extralarge-chart-legend .highcharts-legend-item span, .extralarge-data-values .highcharts-data-label tspan, .extralarge-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .extralarge-tooltip-text .ods-highcharts__tooltip span, .extralarge-x-legend .highcharts-xaxis tspan, .extralarge-x-values .highcharts-xaxis-labels span, .extralarge-x-values .highcharts-xaxis-labels text, .extralarge-y-legend .highcharts-yaxis tspan, .extralarge-y-values .highcharts-yaxis-labels span, .extralarge-y-values .highcharts-yaxis-labels text, .name-tooltip-value .ods-highcharts__tooltip b { + font-size: 18px !important; +} + +.light-chart-legend .highcharts-legend-item span, .light-data-values .highcharts-data-label tspan, .light-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .light-tooltip-text .ods-highcharts__tooltip span, .light-x-legend .highcharts-xaxis tspan, .light-x-values .highcharts-xaxis-labels span, .light-x-values .highcharts-xaxis-labels text, .light-y-legend .highcharts-yaxis tspan, .light-y-values .highcharts-yaxis-labels span, .light-y-values .highcharts-yaxis-labels text, .name-tooltip-value .ods-highcharts__tooltip b { + font-weight: 100 !important; +} + +.name-tooltip-value .ods-highcharts__tooltip b, .normal-chart-legend .highcharts-legend-item span, .normal-data-values .highcharts-data-label tspan, .normal-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .normal-tooltip-text .ods-highcharts__tooltip span, .normal-x-legend .highcharts-xaxis tspan, .normal-x-values .highcharts-xaxis-labels span, .normal-x-values .highcharts-xaxis-labels text, .normal-y-legend .highcharts-yaxis tspan, .normal-y-values .highcharts-yaxis-labels span, .normal-y-values .highcharts-yaxis-labels text { + font-weight: 400 !important; +} + +.bold-chart-legend .highcharts-legend-item span, .bold-data-values .highcharts-data-label tspan, .bold-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .bold-tooltip-text .ods-highcharts__tooltip span, .bold-x-legend .highcharts-xaxis tspan, .bold-x-values .highcharts-xaxis-labels span, .bold-x-values .highcharts-xaxis-labels text, .bold-y-legend .highcharts-yaxis tspan, .bold-y-values .highcharts-yaxis-labels span, .bold-y-values .highcharts-yaxis-labels text, .name-tooltip-value .ods-highcharts__tooltip b { + font-weight: 600 !important; +} + +.lightgrey-chart-legend .highcharts-legend-item span, .lightgrey-data-values .highcharts-data-label tspan, .lightgrey-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .lightgrey-tooltip-text .ods-highcharts__tooltip span, .lightgrey-x-legend .highcharts-xaxis tspan, .lightgrey-x-values .highcharts-xaxis-labels span, .lightgrey-x-values .highcharts-xaxis-labels text, .lightgrey-y-legend .highcharts-yaxis tspan, .lightgrey-y-values .highcharts-yaxis-labels span, .lightgrey-y-values .highcharts-yaxis-labels text, .name-tooltip-value .ods-highcharts__tooltip b { + fill: #565656 !important; + color: #565656 !important; +} + +.darkgrey-chart-legend .highcharts-legend-item span, .darkgrey-data-values .highcharts-data-label tspan, .darkgrey-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .darkgrey-tooltip-text .ods-highcharts__tooltip span, .darkgrey-x-legend .highcharts-xaxis tspan, .darkgrey-x-values .highcharts-xaxis-labels span, .darkgrey-x-values .highcharts-xaxis-labels text, .darkgrey-y-legend .highcharts-yaxis tspan, .darkgrey-y-values .highcharts-yaxis-labels span, .darkgrey-y-values .highcharts-yaxis-labels text, .name-tooltip-value .ods-highcharts__tooltip b { + fill: #333 !important; + color: #333 !important; +} + +.black-chart-legend .highcharts-legend-item span, .black-data-values .highcharts-data-label tspan, .black-tooltip-text .highcharts-tooltip .highcharts-tooltip-container, .black-tooltip-text .ods-highcharts__tooltip span, .black-x-legend .highcharts-xaxis tspan, .black-x-values .highcharts-xaxis-labels span, .black-x-values .highcharts-xaxis-labels text, .black-y-legend .highcharts-yaxis tspan, .black-y-values .highcharts-yaxis-labels span, .black-y-values .highcharts-yaxis-labels text, .name-tooltip-value .ods-highcharts__tooltip b { + fill: #000 !important; + color: #000 !important; +} + +.small-chart-legend-dash .highcharts-legend-item path, .small-chart-series .highcharts-series path.highcharts-graph, .small-chart-series .highcharts-series rect, .small-x-axisline .highcharts-axis.highcharts-xaxis path.highcharts-axis-line, .small-x-axisline-ticks .highcharts-axis.highcharts-xaxis path.highcharts-tick, .small-x-gridline .highcharts-xaxis-grid path.highcharts-grid-line, .small-y-axisline .highcharts-axis.highcharts-yaxis path.highcharts-axis-line, .small-y-gridline .highcharts-yaxis-grid path.highcharts-grid-line { + stroke-width: 0.8px !important; +} + +.medium-chart-legend-dash .highcharts-legend-item path, .medium-chart-series .highcharts-series path.highcharts-graph, .medium-chart-series .highcharts-series rect, .medium-x-axisline .highcharts-axis.highcharts-xaxis path.highcharts-axis-line, .medium-x-axisline-ticks .highcharts-axis.highcharts-xaxis path.highcharts-tick, .medium-x-gridline .highcharts-xaxis-grid path.highcharts-grid-line, .medium-y-axisline .highcharts-axis.highcharts-yaxis path.highcharts-axis-line, .medium-y-gridline .highcharts-yaxis-grid path.highcharts-grid-line { + stroke-width: 1.5px !important; +} + +.large-chart-legend-dash .highcharts-legend-item path, .large-chart-series .highcharts-series path.highcharts-graph, .large-chart-series .highcharts-series rect, .large-x-axisline .highcharts-axis.highcharts-xaxis path.highcharts-axis-line, .large-x-axisline-ticks .highcharts-axis.highcharts-xaxis path.highcharts-tick, .large-x-gridline .highcharts-xaxis-grid path.highcharts-grid-line, .large-y-axisline .highcharts-axis.highcharts-yaxis path.highcharts-axis-line, .large-y-gridline .highcharts-yaxis-grid path.highcharts-grid-line { + stroke-width: 3px !important; +} + +.extralarge-chart-legend-dash .highcharts-legend-item path, .extralarge-chart-series .highcharts-series path.highcharts-graph, .extralarge-chart-series .highcharts-series rect, .extralarge-x-axisline .highcharts-axis.highcharts-xaxis path.highcharts-axis-line, .extralarge-x-axisline-ticks .highcharts-axis.highcharts-xaxis path.highcharts-tick, .extralarge-x-gridline .highcharts-xaxis-grid path.highcharts-grid-line, .extralarge-y-axisline .highcharts-axis.highcharts-yaxis path.highcharts-axis-line, .extralarge-y-gridline .highcharts-yaxis-grid path.highcharts-grid-line { + stroke-width: 5px !important; +} + +.lightgrey-chart-series .highcharts-series path.highcharts-graph, .lightgrey-chart-series .highcharts-series rect, .lightgrey-x-axisline .highcharts-axis.highcharts-xaxis path.highcharts-axis-line, .lightgrey-x-axisline-ticks .highcharts-axis.highcharts-xaxis path.highcharts-tick, .lightgrey-x-gridline .highcharts-xaxis-grid path.highcharts-grid-line, .lightgrey-y-axisline .highcharts-axis.highcharts-yaxis path.highcharts-axis-line, .lightgrey-y-gridline .highcharts-yaxis-grid path.highcharts-grid-line { + stroke: #565656 !important; +} + +.lightgrey-chart-legend-dash .highcharts-legend-item path { + stroke-width: #565656 !important; +} + +.darkgrey-chart-series .highcharts-series path.highcharts-graph, .darkgrey-chart-series .highcharts-series rect, .darkgrey-x-axisline .highcharts-axis.highcharts-xaxis path.highcharts-axis-line, .darkgrey-x-axisline-ticks .highcharts-axis.highcharts-xaxis path.highcharts-tick, .darkgrey-x-gridline .highcharts-xaxis-grid path.highcharts-grid-line, .darkgrey-y-axisline .highcharts-axis.highcharts-yaxis path.highcharts-axis-line, .darkgrey-y-gridline .highcharts-yaxis-grid path.highcharts-grid-line { + stroke: #333 !important; +} + +.darkgrey-chart-legend-dash .highcharts-legend-item path { + stroke-width: #333 !important; +} + +.black-chart-series .highcharts-series path.highcharts-graph, .black-chart-series .highcharts-series rect, .black-x-axisline .highcharts-axis.highcharts-xaxis path.highcharts-axis-line, .black-x-axisline-ticks .highcharts-axis.highcharts-xaxis path.highcharts-tick, .black-x-gridline .highcharts-xaxis-grid path.highcharts-grid-line, .black-y-axisline .highcharts-axis.highcharts-yaxis path.highcharts-axis-line, .black-y-gridline .highcharts-yaxis-grid path.highcharts-grid-line { + stroke: #000 !important; +} + +.black-chart-legend-dash .highcharts-legend-item path { + stroke-width: #000 !important; +} + +.hide-chart-legend-dash .highcharts-legend-item path { + stroke-width: none !important; +} + +.small-chart-legend-circle g.highcharts-legend-item rect { + width: 10px !important; + height: 10px !important; + x: 5 !important; + y: 5 !important; +} + +.medium-chart-legend-circle g.highcharts-legend-item rect { + width: 12px !important; + height: 12px !important; + x: 3 !important; + y: 4 !important; +} + +.large-chart-legend-circle g.highcharts-legend-item rect { + width: 15px !important; + height: 15px !important; + x: 2 !important; + y: 2 !important; +} + +.extralarge-chart-legend-circle g.highcharts-legend-item rect { + width: 18px !important; + height: 18px !important; + x: 0 !important; + y: 0 !important; +} + +.centered-tooltip .highcharts-tooltip .highcharts-tooltip-container { + text-align: center; +} + +.centered-tooltip .ods-highcharts__tooltip { + justify-content: center; +} + +.no-background rect.highcharts-background, .no-bg rect.highcharts-background, .remove-background rect.highcharts-background, .transparent-background rect.highcharts-background { + fill: transparent !important; +} + +.ods-highcharts__tooltip { + align-items: center; +} + +g.highcharts-legend-item rect { + rx: 100%; + ry: 100%; +} + +.trend .highcharts-axis, +.trend .highcharts-yaxis-labels, +.trend .highcharts-ygrid, +.trend .highcharts-legend, +.trend .highcharts-yaxis-grid path:not(:first-child), +.trend .highcharts-label.highcharts-data-label:not(:first-child):not(:last-child) { + display: none; +} + +.trend .highcharts-label.highcharts-data-label { + opacity: 1; + visibility: inherit; +} + +.trend { + padding-top: 15px; + background: white; +} + +.trend .chartplaceholder { + height: 280px; + width: 100%; +} + +.trend path.highcharts-area { + fill: transparent; +} + +.trend text { + font-size: 13px !important; +} + +/*path.highcharts-graph { + stroke: #d4d700; +}*/ +.top5-chart { + height: 350px; + margin: 0 auto; +} +.top5-chart .highcharts-xaxis path.highcharts-axis-line { + stroke: var(--bg-color); + stroke-width: 4px; + transform: translate(-2px, 0); +} + +/* Custom Tabs + ========================================================================== */ +.tabs { + display: flex; + flex-wrap: wrap; + margin: 30px 15px; +} +.tabs .tab { + font-size: 1.2rem; + padding: 0 15px 5px; +} +.tabs .tab:hover { + font-weight: 600; +} +.tabs .tab.tab__active { + font-weight: 600; + border-bottom: 4px solid var(--secondary-color); +} + +.tabs-content .tab-content { + position: relative; +} + +.odswidget-spinner.odswidget-spinner--svg.heatmap { + height: 4em; + position: absolute; + left: 50%; + top: 40%; + z-index: 0; +} + +.vega-chart { + z-index: 1; + position: relative; + background: white; +} + +/* FIX Container for CV */ +@media (min-width: 768px) { + .container { + width: inherit; + max-width: 740px; + } +} +@media (min-width: 992px) { + .container { + width: inherit; + max-width: 960px; + } +} +@media (min-width: 1200px) { + .container { + width: inherit; + max-width: 1160px; + } +} \ No newline at end of file diff --git a/public/custom-views/eco-compteur/1/html.inc b/public/custom-views/eco-compteur/1/html.inc new file mode 100644 index 000000000..b71b0e49c --- /dev/null +++ b/public/custom-views/eco-compteur/1/html.inc @@ -0,0 +1,395 @@ + + + + + + + + + {{ ctx.parameters['refine.name'] = + (ctx.parameters['refine.name'].join('')? + ctx.parameters['refine.name'].join(''): + ctx.parameters['refine.name']) ; '' }} + + {{ sitesselect.parameters['refine.name'] = ctx.parameters['refine.name'] ; '' }} + + {{ values.daterefinedepth = (ctx.parameters['refine.date'].length > 1 ? + (ctx.parameters['refine.date'] | split:'/').length : (ctx.parameters['refine.date'][0] | split:'/').length) || 0 ; "" }} + + + {{ values.capteurs = capteurs ; '' }} + + + + + + +
    +
    +
    +
    +
    + + Capteur : + + + {{ ctx.parameters['refine.name'] || 'Tous' }} + +
    + + Période : + + + Tout l'historique + + {{ range[0].mindate | date }} au {{ range[0].maxdate | date }} + + +
    + +
    + +
    +
    +
    +
    + +
    +
    +
    +
    +
    +

    + Sélection du capteur +

    +
    + + +
    +
    + +
    + + + + + + +
    +
    + +
    + +
    +

    + Détail du capteur +

    +
    +
    +

    {{ sitesresults[0].fields.name }}

    +
    +
    User type
    +
    {{ sitesresults[0].fields.user_type }}
    +
    Sens
    +
    {{ sitesresults[0].fields.sens }}
    +
    Installation date
    +
    {{ sitesresults[0].fields.installation_date | date }}
    +
    + +
    +
    +
    +

    Pas de capteur sélectionné

    +
    +
    +
    +
    +
    +
    + + + + + +
    +
    +
    +
    +

    + {{ byday[1].total | number }} + passages comptabilisés le {{ byday[1].day | date }} +

    + {{ evol = (byday[1].total - byday[7].total)/byday[7].total*100 ; '' }} +
    +

    + ▲ + + + {{ evol | number: 1}}% +

    +

    + comparé à {{ byday[7].day | moment:'dddd' }} dernier ({{ byday[7].total | number }} passages le {{ byday[7].day | date }}) +

    +
    +
    +
    +

    + {{ global[0].total | number }} + passages au total +

    +

    + ont été comptabilisés sur la période séléctionnée +

    +
    +
    +
    + + + + + + +
    +
    +
    +
    +
    + + + + + +
    +
    +
    +
    +
    +
    + + + + + + +
    +
    +
    +

    + Top 5 +

    +

    + Sites les plus fréquentés +

    +
    +
    +
    +
    +
    +
    +
    + + + + + + +
    +
    +
    +

    + Top 5 +

    +

    + Jours les plus fréquentés pour le site séléctionné +

    +
    +
    +
    +
    +
    + + + + + +
    +
    +

    Moyennes horaire

    + {{ + tabs = ([ + values.daterefinedepth < 3 ? 'distribution' : undefined, + values.daterefinedepth < 2 ? 'mois' : undefined, + values.daterefinedepth < 3 ? 'jour' : undefined, + values.daterefinedepth > 1 ? 'heure' : undefined + ] | filter : '') ; + histoscale = { + 'mois':'month', + 'jour':'day', + 'heure':'hour' + }; '' + }} + +
    +
    + {{ values.activetab = (i == 0 && !(tabs.indexOf(values.activetab) >= 0) ? e : values.activetab) ; '' }} + {{ e | capitalize }} +
    +
    +
    +
    + +
    + +
    +
    +
    + + + + + + +
    +
    +
    +
    + +
    \ No newline at end of file diff --git a/public/custom-views/eco-compteur/index.html b/public/custom-views/eco-compteur/index.html new file mode 100644 index 000000000..b85632bbd --- /dev/null +++ b/public/custom-views/eco-compteur/index.html @@ -0,0 +1,4085 @@ + + + + + + Eco-Counter / Eco-Compteur – Codelibrary + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    + + + +
    +
    + +
    +
    +

    Custom Views - Eco-Counter / Eco-Compteur

    + + +
    +

    + Eco-Counter / Eco-Compteur data custom view + + + + + +

    +
    +

    Eco-Counter custom view for Huwise integration: an overall view of your territory through Eco-Counter stations data.

    +

    + Install procedure + +

    +

    Two datasets are required :

    +
      +
    • eco-counter-data : from Eco Counter Data connector
    • +
    • eco-counter-sites : from Eco Counter Sites connector
    • +
    +
    + eco-counter-sites processing : + +
    +

    Get the first photo URL, copy the field, get the photo from the URL

    +
      +
    • Split text: +
        +
      • field: photos
      • +
      • separator: /https://
      • +
      • index: 1
      • +
      • output: photourl
      • +
      +
    • +
    • Copy a field: +
        +
      • field: photourl
      • +
      • new field: photo
      • +
      +
    • +
    • File: +
        +
      • field: photo
      • +
      +
    • +
    +
    + eco-counter-data processing : + +
    +

    Get additional metadata from counters

    +
      +
    • Join datasets: +
        +
      • dataset: eco-counter-sites
      • +
      • local key: id
      • +
      • remote key: id
      • +
      • output fields: name, coordinates, user_type, sens, interval
      • +
      +
    • +
    +

    Set name field as a facet !

    + +
    + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    + +
    +
    +
    +
    + +
    + + + + + +
    +
    + + + + +
    + +
    + +
    + +
    +
    + +
    +
    + +
    + + + + + © Copyright 2026 + +
    + + + + + + + + diff --git a/public/custom-views/gtfs-custom/1/html.inc b/public/custom-views/gtfs-custom/1/html.inc index 1397f5d04..5110fba1d 100644 --- a/public/custom-views/gtfs-custom/1/html.inc +++ b/public/custom-views/gtfs-custom/1/html.inc @@ -18,12 +18,21 @@

    - + - + - +
    @@ -39,7 +48,7 @@ -
    +
    - - - + @@ -73,69 +71,88 @@
    - @@ -179,7 +196,7 @@
    - - + - © Copyright 2020 + © Copyright 2026
    @@ -1708,7 +1934,7 @@

    diff --git a/public/custom-views/index.html b/public/custom-views/index.html index 3b1cd2475..613732682 100644 --- a/public/custom-views/index.html +++ b/public/custom-views/index.html @@ -39,9 +39,7 @@ - - - + @@ -73,69 +71,88 @@

    - @@ -159,7 +176,7 @@
    - - + - © Copyright 2020 + © Copyright 2026
    @@ -3400,7 +3572,7 @@

    diff --git a/public/generators/custom-view-generator/posthtml.inc b/public/generators/custom-view-generator/posthtml.inc index 1df92a6e9..c10f35100 100644 --- a/public/generators/custom-view-generator/posthtml.inc +++ b/public/generators/custom-view-generator/posthtml.inc @@ -69,7 +69,7 @@ Available functions are SUM, AVG, COUNT, STD, MAX, MIN. Please see the documentation for more information - https://help.opendatasoft.com/widgets/#/api/ods-widgets.directive:odsAggregation + https://help.huwise.com/widgets/#/api/ods-widgets.directive:odsAggregation Please see all available icons here https://fontawesome.com/v4.7.0/icons/ diff --git a/public/generators/fullscreen-map/1/config.inc b/public/generators/fullscreen-map/1/config.inc index c5a8daea2..50451295b 100644 --- a/public/generators/fullscreen-map/1/config.inc +++ b/public/generators/fullscreen-map/1/config.inc @@ -1,5 +1,5 @@ -
    - - - + @@ -73,69 +71,88 @@
    - @@ -179,7 +196,7 @@

    - - + - © Copyright 2020 + © Copyright 2026
    @@ -2573,7 +2755,7 @@

    diff --git a/public/generators/fullscreen-map/posthtml.inc b/public/generators/fullscreen-map/posthtml.inc index 83de8f3f5..bcc709893 100644 --- a/public/generators/fullscreen-map/posthtml.inc +++ b/public/generators/fullscreen-map/posthtml.inc @@ -8,7 +8,7 @@ {{ kpidatectxn.parameters['refine.' + item.dataset_refine_key] = item.dataset_refine_value ; '' }} - {{ kpidatectxn.parameters = (item.dataset_advanced_refine_parameters.replaceAll('\'','"') | fromjson) ; '' }} + + {{ kpidatectxn.parameters[key] = item.dataset_advanced_refine_parameters[key]; '' }} + {{ kpidatectxnmoinsun.parameters['refine.' + item.valref_dataset_refine_key] = item.valref_dataset_refine_value ; '' }} - {{ kpidatectxnmoinsun.parameters = (item.valref_dataset_advanced_refine_parameters.replaceAll('\'','"') | fromjson) ; '' }} - + + {{ kpidatectxnmoinsun.parameters[key] = item.valref_dataset_advanced_refine_parameters[key]; '' }} + {{ kpidatectxn.parameters['q.date'] = item.date_field_id + ':' + item.values.filtren ; '' }} {{ kpidatectxnmoinsun.parameters['q.date'] = item.date_field_id + ':' + item.values.filtrenmoinsun ; '' }} diff --git a/public/generators/listing-generator/1/config.inc b/public/generators/listing-generator/1/config.inc index 4f3b48dfb..86bab49aa 100644 --- a/public/generators/listing-generator/1/config.inc +++ b/public/generators/listing-generator/1/config.inc @@ -1,37 +1,45 @@ - ng-init="domain = 'discovery.opendatasoft.com'; - datasetid = 'oeuvres-de-johannes-vermeer'; + ng-init="domain = 'userclub.huwise.com'; + datasetid = 'oeuvres-de-johannes-vermeer'; - filters = [ + sort = 'surface'; + + filters = [ {'id':'technique','multiple':true}, {'id':'collection','multiple':true}, {'id':'genre','multiple':true} - ]; - fieldDate = ''; - resetFiltersButton = true; - resetFiltersButtonLabel = 'Supprimer tous les filtres'; - fieldDefaultRangeStartsNow = false; + ]; + fieldDate = ''; + resetFiltersButton = true; + resetFiltersButtonLabel = 'Supprimer tous les filtres'; + fieldDefaultRangeStartsNow = false; + + view = 'cards'; + fieldsList = ['collection','genre','format','date']; + fieldLink = 'wikipedia'; + fieldLinkLabel = 'Lire l\'article'; - view = 'cards'; - fieldsList = ['titre','collection','genre','format','date']; - fieldLink = 'wikipedia'; - fieldLinkLabel = 'Lire l\'article'; + cardTitle = 'titre'; + fieldPhoto = 'image'; + imagePosition = 'left'; + itemsPerRow = '2'; - cardTitle = 'titre'; - fieldPhoto = 'image'; - imagePosition = 'left'; - itemsPerRow = '2'; + mapView = false; + mapPicto = ''; + mapPictoColor = ''; - kpis = [ + kpis = [ { 'title': 'Taille moyenne', - 'function': 'AVG', - 'expression': 'surface', + 'select': 'avg(surface)', 'precision': 2, 'unit': 'm2', 'faicon': 'square-o' }, { 'title': 'Nombre d\'oeuvre référencées', - 'function': 'COUNT' + 'select': 'count(*)' } - ]; + ]; + + sourceLinkLabel = 'Accéder aux données source'; + noResultMsg = 'Aucun résultat'; diff --git a/public/generators/listing-generator/2/config.inc b/public/generators/listing-generator/2/config.inc index ef129f788..cf90c6311 100644 --- a/public/generators/listing-generator/2/config.inc +++ b/public/generators/listing-generator/2/config.inc @@ -1,29 +1,44 @@ - ng-init="domain = 'parisdata.opendatasoft.com'; - datasetid = 'que-faire-a-paris-'; + ng-init="domain = 'parisdata.huwise.com'; + datasetid = 'que-faire-a-paris-'; - filters = [ - {'id':'category','multiple':true}, - {'id':'tags','multiple':true}, - {'id':'access_type','multiple':false}, - {'id':'price_type','multiple':false} - ]; - fieldDate = 'date_start'; - resetFiltersButton = true; - resetFiltersButtonLabel = 'Supprimer tous les filtres'; - fieldDefaultRangeStartsNow = true; + sort = '-date_start'; - view = 'cards'; - fieldsList = ['address_name','address_street','address_city','category']; - fieldLink = 'url'; - fieldLinkLabel = 'Plus d\'informations'; + filters = [ + {'id':'tags','multiple':true}, + {'id':'access_type','multiple':false}, + {'id':'price_type','multiple':false} + ]; + fieldDate = 'date_start'; + resetFiltersButton = true; + resetFiltersButtonLabel = 'Supprimer tous les filtres'; + fieldDefaultRangeStartsNow = false; - cardTitle = 'title'; - fieldPhoto = 'cover'; - imagePosition = 'top'; - itemsPerRow = '2'; + view = 'cards'; + fieldsList = [ + {'field':'address_name'}, + {'field':'address_street'}, + {'field':'address_city'}, + {'field':'conditionversement'}, + {'field':'date_start','format':'date'}, + {'field':'date_end','format':'date'} + ]; + fieldLink = 'url'; + fieldLinkLabel = 'Plus d\'informations'; - kpis = [{ - 'title': 'Nombre d\'activités', - 'function': 'COUNT' - } - ]; + cardTitle = 'title'; + fieldPhoto = 'image_couverture'; + imagePosition = 'top'; + itemsPerRow = '2'; + + mapView = true; + mapPicto = 'circle'; + mapPictoColor = '#EC643C'; + + kpis = [{ + 'title': 'Nombre d\'activités', + 'select': 'count(*)' + } + ]; + + sourceLinkLabel = 'Accéder aux données source'; + noResultMsg = 'Aucun résultat'; diff --git a/public/generators/listing-generator/3/config.inc b/public/generators/listing-generator/3/config.inc index 089d03d5e..a1bbd85a3 100644 --- a/public/generators/listing-generator/3/config.inc +++ b/public/generators/listing-generator/3/config.inc @@ -1,34 +1,42 @@ - ng-init="domain = 'userclub.opendatasoft.com'; - datasetid = 'deliberations-du-conseil-municipal-dissy-les-moulineaux'; + ng-init="domain = 'userclub.huwise.com'; + datasetid = 'deliberations-du-conseil-municipal-dissy-les-moulineaux'; - filters = [ - {'id':'mandature','multiple':true}, - {'id':'matiere','multiple':true}, - {'id':'objet','multiple':false}, - {'id':'vote','multiple':false} - ]; - fieldDate = ''; - resetFiltersButton = true; - resetFiltersButtonLabel = 'Supprimer tous les filtres'; - fieldDefaultRangeStartsNow = false; + sort = ''; - view = 'table'; - fieldsList = ['objet','matiere','vote','ndeg_deliberation']; - fieldLink = 'pdf_dcm'; - fieldLinkLabel = 'Consulter la délibération'; + filters = [ + {'id':'mandature','multiple':true}, + {'id':'matiere','multiple':true}, + {'id':'objet','multiple':false}, + {'id':'vote','multiple':false} + ]; + fieldDate = ''; + resetFiltersButton = true; + resetFiltersButtonLabel = 'Supprimer tous les filtres'; + fieldDefaultRangeStartsNow = false; - kpis = [ - { - 'title': 'Nombre de délibérations référencées', - 'function': 'COUNT', - 'faicon': 'file-pdf-o' - }, - { - 'title': 'Votes adoptés', - 'function': 'SUM', - 'expression': 'vote_adopte', - 'faicon': 'check-square-o' - } - ]; + view = 'table'; + fieldsList = ['objet','matiere','vote','ndeg_deliberation']; + fieldLink = 'pdf_dcm'; + fieldLinkLabel = 'Consulter la délibération'; - itemsPerRow = '3'; + mapView = false; + mapPicto = ''; + mapPictoColor = ''; + + kpis = [ + { + 'title': 'Nombre de délibérations référencées', + 'select': 'count(*)', + 'faicon': 'file-pdf-o' + }, + { + 'title': 'Votes adoptés', + 'select': 'sum(vote_adopte)', + 'faicon': 'check-square-o' + } + ]; + + itemsPerRow = '3'; + + sourceLinkLabel = 'Accéder aux données source'; + noResultMsg = 'Aucun résultat'; diff --git a/public/generators/listing-generator/4_SCDL/config.inc b/public/generators/listing-generator/4_SCDL/config.inc new file mode 100644 index 000000000..e1fda3ca0 --- /dev/null +++ b/public/generators/listing-generator/4_SCDL/config.inc @@ -0,0 +1,36 @@ + ng-init="domain = 'data.haute-garonne.fr'; + datasetid = 'datalocale-deliberation'; + + sort = 'delib_date'; + + filters = [ + {'id':'coll_nom','multiple':true,'label':'Nom de la collectivité'}, + {'id':'delib_matiere_nom','multiple':true,'label':'Nom de la matière de la délibération' }, + ]; + fieldDate = 'delib_date'; + resetFiltersButton = true; + resetFiltersButtonLabel = 'Supprimer tous les filtres'; + fieldDefaultRangeStartsNow = false; + + view = 'cards'; + fieldsList = [ + {'field':'delib_objet', 'label': ''}, + {'field':'budget_nom', 'label': 'Type de budget'}, + {'field':'vote_pour', 'label': 'Nb de vote pour'}, + {'field':'vote_contre', 'label': 'Nb de vote contre'}, + {'field':'delib_date', 'label': 'Date de la délibération', 'format': 'date'} + ]; + fieldLink = 'delib_url'; + fieldLinkLabel = 'Voir la délibération en PDF'; + + cardTitle = 'delib_matiere_nom'; + fieldPhoto = ''; + imagePosition = 'left'; + itemsPerRow = '2'; + + mapView = false; + mapPicto = ''; + mapPictoColor = ''; + + sourceLinkLabel = 'Accéder aux données source'; + noResultMsg = 'Aucun résultat'; diff --git a/public/generators/listing-generator/css.inc b/public/generators/listing-generator/css.inc index 3dbefcf57..044269ac6 100644 --- a/public/generators/listing-generator/css.inc +++ b/public/generators/listing-generator/css.inc @@ -3,25 +3,20 @@ :root { --secondary-color: black; } -main { + +#page- { margin: 6rem 0 3em 0; } -@media screen and (min-width: 992px) { - .row-equal-height { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -ms-flex-wrap: wrap; - flex-wrap: wrap; - margin-bottom: 20px; - } - /* Fix for early content wrapping in Safari*/ - .row-equal-height:before, - .row-equal-height:after { - content: normal; - } -} +/** + * License: MIT License + * Generated on 25 Jun 2021 + * Author: Labs from opendatasoft + * Version: 0.3 + * Description: ODS Layout over-ride to Flexbox system + */ +.row.full-height{height:100%}.row{display:flex;flex-wrap:wrap;justify-content: start;}.row>*{margin-bottom:20px}.order-0{order:0}@media screen and (min-width:750px){.order-sm-0{order:0}}@media screen and (min-width:970px){.order-md-0{order:0}}@media screen and (min-width:1170px){.order-lg-0{order:0}.order-lg-1{order:1}}.order-1{order:1}@media screen and (min-width:750px){.order-sm-1{order:1}}@media screen and (min-width:970px){.order-md-1{order:1}.order-md-2{order:2}}.order-2{order:2}@media screen and (min-width:750px){.order-sm-2{order:2}}@media screen and (min-width:1170px){.order-lg-2{order:2}.order-lg-3{order:3}}.order-3{order:3}@media screen and (min-width:750px){.order-sm-3{order:3}}@media screen and (min-width:970px){.order-md-3{order:3}.order-md-4{order:4}}.order-4{order:4}@media screen and (min-width:750px){.order-sm-4{order:4}}@media screen and (min-width:1170px){.order-lg-4{order:4}.order-lg-5{order:5}}.order-5{order:5}@media screen and (min-width:750px){.order-sm-5{order:5}}@media screen and (min-width:970px){.order-md-5{order:5}.order-md-6{order:6}}.order-6{order:6}@media screen and (min-width:750px){.order-sm-6{order:6}}@media screen and (min-width:1170px){.order-lg-6{order:6}.order-lg-7{order:7}}.order-7{order:7}@media screen and (min-width:750px){.order-sm-7{order:7}}@media screen and (min-width:970px){.order-md-7{order:7}.order-md-8{order:8}}.order-8{order:8}@media screen and (min-width:750px){.order-sm-8{order:8}}@media screen and (min-width:1170px){.order-lg-8{order:8}.order-lg-9{order:9}}.order-9{order:9}@media screen and (min-width:750px){.order-sm-9{order:9}}@media screen and (min-width:970px){.order-md-9{order:9}.order-md-10{order:10}}.order-10{order:10}@media screen and (min-width:750px){.order-sm-10{order:10}}@media screen and (min-width:1170px){.order-lg-10{order:10}.order-lg-11{order:11}}.order-11{order:11}@media screen and (min-width:750px){.order-sm-11{order:11}}@media screen and (min-width:970px){.order-md-11{order:11}.order-md-12{order:12}}.order-12{order:12}@media screen and (min-width:750px){.order-sm-12{order:12}}@media screen and (min-width:1170px){.order-lg-12{order:12}}@media screen and (max-width:1169px){:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-1,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-10,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-11,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-12,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-2,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-3,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-4,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-5,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-6,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-7,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-8,:not([class*=col-md]):not([class*=col-sm]):not([class*=col-xs]).col-lg-9{width:100%}}@media screen and (max-width:969px){:not([class*=col-sm]):not([class*=col-xs]).col-md-1,:not([class*=col-sm]):not([class*=col-xs]).col-md-10,:not([class*=col-sm]):not([class*=col-xs]).col-md-11,:not([class*=col-sm]):not([class*=col-xs]).col-md-12,:not([class*=col-sm]):not([class*=col-xs]).col-md-2,:not([class*=col-sm]):not([class*=col-xs]).col-md-3,:not([class*=col-sm]):not([class*=col-xs]).col-md-4,:not([class*=col-sm]):not([class*=col-xs]).col-md-5,:not([class*=col-sm]):not([class*=col-xs]).col-md-6,:not([class*=col-sm]):not([class*=col-xs]).col-md-7,:not([class*=col-sm]):not([class*=col-xs]).col-md-8,:not([class*=col-sm]):not([class*=col-xs]).col-md-9{width:100%}}@media screen and (max-width:749px){.row{flex-direction:column}:not([class*=col-xs]).col-sm-1,:not([class*=col-xs]).col-sm-10,:not([class*=col-xs]).col-sm-11,:not([class*=col-xs]).col-sm-12,:not([class*=col-xs]).col-sm-2,:not([class*=col-xs]).col-sm-3,:not([class*=col-xs]).col-sm-4,:not([class*=col-xs]).col-sm-5,:not([class*=col-xs]).col-sm-6,:not([class*=col-xs]).col-sm-7,:not([class*=col-xs]).col-sm-8,:not([class*=col-xs]).col-sm-9{width:100%}}.no-margin-bottom,.no-mb{margin-bottom:0!important}.no-margin-x,.no-mx{margin-left:0!important;margin-right:0!important} + .page-title { font-size: 3rem; @@ -47,7 +42,7 @@ main { .search-module-container { padding: 26px; - margin-bottom: 20px; + margin: 20px 0; } .search-module { @@ -126,6 +121,11 @@ main { align-items: center; justify-content: center; } +.clear-filters-button { + background: none; + border: none; + color: var(--text); +} .clear-filters-button:hover { opacity: 0.65; } @@ -143,6 +143,9 @@ main { min-width: 240px; } } +.odswidget-select-button:focus:not(.focus-ring) { + outline: var(--highlight) 2px solid; +} /*********** Filter date ************/ .filter-date { @@ -159,6 +162,9 @@ main { margin-top: 13px; white-space: nowrap; text-decoration: underline; + color: var(--text); + background: none; + border: none; } .filter-date-button:not(.filter-date-button-disabled):hover { opacity: 0.65; @@ -374,11 +380,6 @@ main { /* Table Module Basic ========================================================================== */ -.table-module { - height: 1000px; - overflow-y: auto; -} - .table-basic { display: table; border-collapse: collapse; @@ -438,6 +439,23 @@ main { text-decoration: none; } +.odswidget-pagination { + margin-bottom: 50px; +} + + + +/* Map */ +.odswidget-map__map { + min-height: 550px; +} +.map-active { + height: 550px; + overflow-y: auto; +} + + + /** Specific override for custom views **/ @media screen and (min-width: 1408px) { .ods-dataset-visualization .ods-tabs__pane .container:not(.is-max-desktop):not(.is-max-widescreen) { diff --git a/public/generators/listing-generator/index.html b/public/generators/listing-generator/index.html index 4029ad4e4..77fc0ca60 100644 --- a/public/generators/listing-generator/index.html +++ b/public/generators/listing-generator/index.html @@ -39,9 +39,7 @@ - - - + @@ -73,69 +71,88 @@

    - @@ -170,8 +187,8 @@
  • - - Automated listing visualization - another example with date + + Automated listing visualization - another example with date and map
  • @@ -181,6 +198,24 @@ +
  • + + SCDL Dataset with fields and filters renaming + +
  • + +
  • + + Listing Generator documentation + +
  • + +
  • + + Change log + +
  • +
    @@ -191,7 +226,7 @@
    +
    + + + +
    +

    + Listing Generator documentation + + + + + +

    +
    +

    Welcome to the Listing Generator documentation ! +Find the code and live examples above.

    +

    + Before start, important read + +

    +

    The listing generator is an HTML template powered by ods-widgets library from Huwise. ods-widgets library relies on AngularJs and therefore propose directives and expressions to operate dynamic behavior into your pages.
    +Settings set within the page. You’ll therefore need to pay attention to the following section to avoid input mistakes.

    +

    + First, a minimalist example + +

    +

    A simple page containing a variable declaration into an ng-init directive:

    +
    <div ng-init="title = 'Any text here...';
    +              anotherVar = 'other value';">
    +  <h1>
    +    {{ title }} <!-- output: Any text here... -->
    +  </h1>
    +</div> 
    +
      +
    • title is a variable, and Any text here... its value
    • +
    +

    The value is then between quotes '.

    +
    +

    A common error is omitting to escape (protect) apostrophes with a leading backslash (ie \').
    +Apostrophes are used to declare keys and values in object, and therefore are reserved characters. This is the reason why they MUST be escaped.

    +
    wrongVariable = 'I'll be freed from apostrophes'; // This leads to an error !!!
    +
    correctVariable = 'I\'ll be freed from apostrophes'; // Ok !
    +

    + General settings + + + + + +

    +

    + domain + +

    +

    Domain URL (string) : Must contain the URL of the domain where the dataset is published.

    +
    domain = 'userclub.huwise.com';
    +

    + datasetid + +

    +

    Dataset ID (string) : Must contain the ID of the dataset

    +
    datasetid = 'oeuvres-de-johannes-vermeer';
    +

    + sort + +

    +

    Sort (string) : a sort parameter

    +
    sort = '-date';
    +

    Note: The field must be sortable (numeric,date,facet or sortable text field)

    +

    + Filters settings + + + + + +

    +

    + filters + +

    +

    List of filter configurations to generate the filters panel. +Parameters are :

    +
      +
    • id (string) : the ID of the field
    • +
    • multiple (boolean) : true or false, to allow the user to select multiple values in the filter
    • +
    • label (string) : a custom placeholder instead of the field label
    • +
    +

    Note : The field must be a facet in the dataset
    +Note : Alphanumerical sort is applied in the filter view

    +
    filters = [
    +              {'id':'filterid','multiple':true},
    +              {'id':'filterid2','multiple':false,'label':'ID of the filter'}
    +           ];
    +

    + resetFiltersButton + +

    +

    resetFiltersButton (boolean) : true or false, add a reset filters button after filters block –>

    +
    resetFiltersButton = true;
    +

    + resetFiltersButtonLabel + +

    +

    resetFiltersButtonLabel (string) : label of the reset filters button

    +
    resetFiltersButtonLabel = 'Clear all filters';
    +

    + Date settings + + + + + +

    +

    + fieldDate + +

    +

    fieldDate (string) : a date field to display a date-range-slider

    +
    fieldDate = 'date';
    +

    + resetFiltersButton + +

    +

    resetFiltersButton (boolean) : true or false, display a button to reset the date period selection

    +
    resetFiltersButton = true;
    +

    + fieldDefaultRangeStartsNow + +

    +

    fieldDefaultRangeStartsNow (boolean) :

    +
      +
    • false : set the date range based on the data, ie. start from the first date, and end to the last date
    • +
    • true : the range starts from now (the calendar day), to the last date
    • +
    +
    fieldDefaultRangeStartsNow = false;
    +

    + List view settings + + + + + +

    +

    + view + +

    +

    view (string) : Type of the view to list results, can be table or cards

    +
    view = 'cards';
    +

    + noResultMsg (only available if view is set to cards) + +

    +

    noResultMsg (string) : the message to display if no results

    +
    noResultMsg = 'No more results.';
    +

    + fieldsList + +

    +

    fieldsList (list) : Set the list of fields

    +
    + Simple mode : can be an array of field IDs + +
    +
    fieldsList = ['title','category','genre','date'];
    +
    + Advanced mode : can be an array of object. + +
    +

    Each object describes the field format and provide optional options.

    +
      +
    • field (string) : mandatory, the ID of te field
    • +
    • format (string) : optional, can be ‘date’ or ’number’
    • +
    • options (string) : optional, format options +
        +
      • for number format : +
          +
        • precision (string) : set the number of digit for decimals
        • +
        • unit (string) : set an unit after the value
        • +
        +
      • +
      • for date format : + +
      • +
      • label (string) : optional, define your own label for this field. +
          +
        • if not set : use the default label from the dataset
        • +
        • if set to a string, use this string as label
        • +
        • if set to an empty string '', remove the field label (for cards view only).
        • +
        +
      • +
      +
    • +
    +
    fieldsList = [
    +                {'field':'address'},
    +                {'field':'city'},
    +                {'field':'price', 'format':'number', 'options': {'precision':1, 'unit':'$'}},
    +                {'field':'date_start','format':'date'},
    +                {'field':'date_end','format':'date', 'options': {'dateFormat':'longDate'}}
    +              ];
    +
    +

    fieldLink (string) : the field ID of external resource as a web URL

    +
    link = 'urlfield';
    +

    + fieldLinkLabel + +

    +

    fieldLinkLabel (string) : Label of the external resource link

    +
    fieldLinkLabel = 'Read more here';
    +

    + cardTitle (only available if view is set to cards) + +

    +

    cardTitle (string) : id of the field used as a title of the card

    +
    cardTitle = 'title';
    +

    + fieldPhoto (only available if view is set to cards) + +

    +

    fieldPhoto (string) : (Field id of the image field if any)

    +
    fieldPhoto = 'image';
    +

    + imagePosition (only available if view is set to cards) + +

    +

    imagePosition (string) : (Image position) : Image position in the card, can be ’top’ or ’left'

    +
    imagePosition = 'left';
    +

    + itemsPerRow + +

    +

    itemsPerRow (string) : number of columns in the cards and KPI layout, must be a 12 multiple (1, 2, 3, 4, 6 or 12).

    +
    itemsPerRow = '3';
    +

    + KPI Settings + + + + + +

    +

    KPI settings is a list of object that describes each KPI.
    +Available options are :

    +
      +
    • title (string) : mandatory, name of the KPI, ex: ‘City population’
    • +
    • select (string) : mandatory, API V2 select, containing the calculation to perform, ex: ‘sum(population)’ or ‘count(*)’
    • +
    • precision (string) : optional, decimal precision of the KPI, ex: 2
    • +
    • unit (string) : optional, KPI unit, ex: ‘citizens’
    • +
    • faicon (stirng) : optional, FontAwesome icon id, ex: ‘square-o’ (omit the fa- prefix)
    • +
    +

    Please see the documentation for more information regarding the select

    +

    Please see all available Fontawesome icons here

    +
    kpis = [
    +            {
    +                'title': 'Taille moyenne',
    +                'select': 'avg(surface),
    +                'precision': 2,
    +                'unit': 'm2',
    +                'faicon': 'square-o'
    +            },
    +            {
    +                'title': 'Nombre d\'oeuvre référencées',
    +                'select': 'count(*)'
    +            }
    +         ];
    +

    + sourceLinkLabel + +

    +

    sourceLinkLabel (string) : the label of the ‘access to source’ link

    +
    sourceLinkLabel = 'Direct access to the data';
    +
    +
    + + +
    + +
    +

    + Change log + + + + + +

    +
    +

    + V3.0 + +

    +
      +
    • The listing generator is now fully compatible with pages, custom views and embeds: the some code can be copy/pasted from a page to a custom view and vice versa.
    • +
    • Add mapView option to activate a map (in cards view)
    • +
    • Add pagination module for table view
    • +
    • Add infinite scroll for cards view
    • +
    • Set a label parameter for the “access to source” link
    • +
    • Filters can now have a label option, to rename the field label and propose as a placeholder for the select.
    • +
    • Field can now have a label option, to rename the field label in the view. In cards view, the label can be an empty string ''.
    • +
    • A KPI bloc now relies fully on Explore API V2. Therefore, they no longer need a function and expression and will now use a select parameter.
    • +
    +

    + V2.2 + +

    +
      +
    • Add sort param
    • +
    • Add an advanced mode for fieldsList +Fields can now be a list of object, that provides the field id, the format, and some options. +See the documentation for more details.
    • +
    • No icon displayed by default for KPIs
    • +
    +

    + V2.1 + +

    +
      +
    • Add ods-select and multiple choice option for filters
    • +
    • Add clear all filter button when one filter is applied
    • +
    • responsive display for filters and date button
    • +
    • KPI default value to 0 when no data/results to display
    • +
    +

    + V2.0 + +

    +
      +
    • add a date field that display a date range slider
    • +
    • download link knows support files hosted on ODS
    • +
    • dynamic title / description / access source link from the context
    • +
    + +
    + + +
    + +
    - - + - © Copyright 2020 + © Copyright 2026
    @@ -9545,7 +13408,7 @@

    diff --git a/public/generators/listing-generator/posthtml.inc b/public/generators/listing-generator/posthtml.inc index cd4d9bd8d..42925e7b2 100644 --- a/public/generators/listing-generator/posthtml.inc +++ b/public/generators/listing-generator/posthtml.inc @@ -1,375 +1,388 @@ - DO_NOT_MODIFY_BELOW; - - ctxfields = {}; - values = {}; - activeFilters = {}; - "> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {{ctxdate.parameters={'q.date': fieldDate + '>#now()'};''}} - - -

    - {{ ctx.dataset.metas.title }} -

    - -

    - - - {{ ctxfields[field.name] = field.label; '' }} - - - - {{ ctx.parameters['refine.' + filter.id] = activeFilters[filter.id] ; '' }} - - -
    - -
    - - - -
    - - -
    -
    - {{ ctx.parameters['disjunctive.' + filter.id] = true; '' }} -
    - -
    -
    - -
    -
    - {{ resetFiltersButtonLabel }} - -
    -
    -
    - - -
    - - - - {{ values['periode']['min'] = dateminmax.results[0].x.year + '-' + (10 > dateminmax.results[0].x.month?'0':'') + dateminmax.results[0].x.month + '-' + (10 > dateminmax.results[0].x.day?'0':'') + dateminmax.results[0].x.day; - values['periode']['max'] = dateminmax.results[dateminmax.results.length-1].x.year + '-' + (10 > dateminmax.results[dateminmax.results.length-1].x.month?'0':'') + dateminmax.results[dateminmax.results.length-1].x.month + '-' + (10 > dateminmax.results[dateminmax.results.length-1].x.day?'0':'') + dateminmax.results[dateminmax.results.length-1].x.day; - ''}} - + + DO_NOT_MODIFY_BELOW; + + localctxfields = {}; + values = {}; + activeFilters = {}; + localctx = undefined; + "> + + + {{ localctx = ctx || localctx ; '' }} + + + + + + {{localctx.parameters['sort'] = sort; ''}} + + + + {{localctxdate.parameters={'q.date': fieldDate + '>#now()'}; ''}} + + +
    +

    + {{ localctx.dataset.metas.title }} +

    + +

    +
    + + + {{ localctxfields[field.name] = field.label; '' }} - - - - - - -
    - Toute la période -
    - -
    -
    - - -
    -
    - -
    - -

    - {{ (agg || 0) | number : (kpi.precision || 0) }} - {{ kpi.unit }} -

    -

    - {{ kpi.title }} -

    -
    -
    -
    - - -
    -
    - - - - - - - - - - - - - -
    {{ ctxfields[field] }}
    - {{ item.fields[field] }} - - - - - - - - - - - -
    -
    -
    - - -
    -
    -
    -
    -
    -
    -
    -

    - {{ item.fields[cardTitle] }} -

    -
    -
    -
    {{ ctxfields[field] }}
    -
    {{ item.fields[field] }}
    -
    -
    - -
    -
    -
    -
    -
    - - Accéder aux données source +
    + + {{ localctx.parameters['refine.' + filter.id] = activeFilters[filter.id] ; '' }} + +
    + +
    + +
    + + + +
    + + +
    +
    + {{ localctx.parameters['disjunctive.' + filter.id] = true; '' }} +
    + +
    +
    + +
    + +
    +
    + + +
    + + + + {{ values['periode']['min'] = dateminmax.results[0].x.year + '-' + (10 > dateminmax.results[0].x.month?'0':'') + dateminmax.results[0].x.month + '-' + (10 > dateminmax.results[0].x.day?'0':'') + dateminmax.results[0].x.day; + values['periode']['max'] = dateminmax.results[dateminmax.results.length-1].x.year + '-' + (10 > dateminmax.results[dateminmax.results.length-1].x.month?'0':'') + dateminmax.results[dateminmax.results.length-1].x.month + '-' + (10 > dateminmax.results[dateminmax.results.length-1].x.day?'0':'') + dateminmax.results[dateminmax.results.length-1].x.day; + ''}} + + + + + + + + + + + +
    +
    + + +
    +
    + +
    + +

    + {{ (agg[0].x || 0) | number : (kpi.precision || 0) }} + {{ kpi.unit }} +

    +

    + {{ kpi.title }} +

    +
    +
    +
    + + + + + +
    +
    + + + {{ localctx.parameters['start'] = + (localctx.nhits - localctx.parameters['start']) <= 0 ? undefined : localctx.parameters['start'] ; '' }} + + + + + + + + + + + + + + +
    {{ localctxfields[field] }}{{ fieldconfig.label || localctxfields[fieldconfig.field] }}
    + {{ item.fields[field] }} + + + + {{ item.fields[fieldconfig.field] | number : (fieldconfig.options.precision || 0) }} {{ fieldconfig.options.unit }} + + + {{ item.fields[fieldconfig.field] | date : (fieldconfig.options.dateFormat || 'mediumDate') }} + + + {{ item.fields[fieldconfig.field] }} + + + + + + + + + + + + + +
    +
    +
    + + + + +
    +
    + +
    +
    +
    +
    +

    + {{ item.fields[$parent.$parent.$parent.$parent.$parent.cardTitle] }} +

    +
    + +
    +
    + {{ $parent.$parent.$parent.$parent.$parent.localctxfields[field] }} +
    +
    + {{ item.fields[field] }} +
    +
    + +
    +
    + {{ (fieldconfig|keys).indexOf('label')>=0?fieldconfig.label : $parent.$parent.$parent.$parent.$parent.localctxfields[fieldconfig.field] }} +
    +
    + + {{ item.fields[fieldconfig.field] | number : (fieldconfig.options.precision || 0) }} {{ fieldconfig.options.unit }} + + + {{ item.fields[fieldconfig.field] | date : (fieldconfig.options.dateFormat || 'mediumDate') }} + + + {{ item.fields[fieldconfig.field] }} + +
    +
    +
    + +
    +
    +
    +
    +
    + + + + + +
    +
    + + +
    - + + \ No newline at end of file diff --git a/public/generators/listing-generator/prehtml.inc b/public/generators/listing-generator/prehtml.inc index 427b02076..d6f3b3dbc 100644 --- a/public/generators/listing-generator/prehtml.inc +++ b/public/generators/listing-generator/prehtml.inc @@ -1,26 +1 @@ - - - - - -
    - - - + @@ -73,69 +71,88 @@
    - @@ -185,7 +202,7 @@

    - +

    Filters

    @@ -81,7 +82,10 @@ - + @@ -91,8 +95,10 @@ - + @@ -101,7 +107,9 @@ - + @@ -110,7 +118,10 @@ - + @@ -130,7 +141,7 @@ ng-model="search['query']" ng-model-options="{ updateOn: 'keyup', debounce: { 'default': 500, 'blur': 0 }}" - ng-change="ctx.parameters['q'] = search['query'];" /> + ng-change="ctx.parameters['q'] = search['query'];"/>
    PM10 Heatmap" ng-click="activemaplayer = 'PM10'; ctx.parameters['refine.measurements_parameter'] = 'PM10';"> - +
    - +
    + color="#45423E" picto="ods-connected_temp" show-marker="false" display="auto" shape-opacity="0.5" + point-opacity="1" border-color="#FFFFFF" border-opacity="1" border-size="1" + border-pattern="solid" + caption="false" caption-picto-color="#E5E5E5" title="Air Quality measurements" size="5" + size-min="2" size-max="6" size-function="linear">
    • {{ record.fields.location }}
    • {{ record.fields.measurements_lastupdated | date:'medium'}}
    • -
    • {{ record.fields.measurements_parameter }}: {{ record.fields.measurements_value }} {{ record.fields.measurements_unit }}
    • +
    • {{ record.fields.measurements_parameter }}: {{ record.fields.measurements_value }} {{ record.fields.measurements_unit }} +
    • (source: {{ record.fields.measurements_sourcename }})
    + color-gradient="{'1':'#FFFFFF','0.3':'#FF0000','0.6':'#FFFF00'}" picto="ods-connected_temp" + show-marker="false" display="heatmap" radius="1" function="AVG" expression="measurements_value" + shape-opacity="0.5" point-opacity="1" border-color="#FFFFFF" border-opacity="1" border-size="1" + border-pattern="solid" + caption="false" caption-picto-color="#E5E5E5" title="PM10 Heatmap" + size-function="log"> + color-gradient="{'1':'#00FAFA','0.2':'#000000','0.4':'#183567','0.6':'#2E649E','0.8':'#17ADCB'}" + picto="ods-connected_temp" show-marker="false" display="heatmap" radius="1" function="AVG" + expression="measurements_value" shape-opacity="0.5" point-opacity="1" border-color="#FFFFFF" + border-opacity="1" border-size="1" border-pattern="solid" + caption="false" caption-picto-color="#E5E5E5" title="O3 Heatmap" + size-function="log"> diff --git a/public/page-templates/fullscreen-map/index.html b/public/page-templates/fullscreen-map/index.html index 6f33b8714..103b2e4ed 100644 --- a/public/page-templates/fullscreen-map/index.html +++ b/public/page-templates/fullscreen-map/index.html @@ -39,9 +39,7 @@ - - - + @@ -73,69 +71,88 @@
    - @@ -179,7 +196,7 @@