diff --git a/about/index.html b/about/index.html index 9d60ab10..5d0995f6 100644 --- a/about/index.html +++ b/about/index.html @@ -1 +1 @@ - About | TotalDebug
Home About
About
Cancel

About

Hi, Im Steve a Full Stack Systems Engineer from Leeds, UK.

I created this website to provide a location where I could share articles related to my interests / findings when working as a Developer / Sys Admin / Solution Architect.

My interest in IT started when I was very young, my Uncle worked for a large IT company and I was always fascinated by his work. I would build my own computers with him and eventually built them for friends and family too.

I started my career in IT straight from high school where I had an apprenticeship with Kodak working in one of their datacenters, I then moved on to working for small IT Resellers, and then on to a small Leeds based data center and hosting provider where I honed my skills and continue to expand my knowledge.

Now working for one of the worlds largest service providers, I spends this time working on projects to ensure the business runs in the most efficient ways possible by implementing automation tooling and improving processes.

The world always seems brighter when you’ve just made something that wasn’t there before. Neil Gaiman

As a hobby, I likes to spend time on home automation & 3D printing projects and of course spending time with my beautiful wife and children.

Thank You for reading!

Key Skills

Workfow Optimisation

90%

System & Product Architecture

80%

Project Management

50%

People Leader

40%

Programming Skills

HTML5/CSS3

90%

Python

75%

Typescript / Javascript

60%

Certifications

Full Stack Systems Engineer III

2020 — present @ Rackspace Technology

Responsible for the design, function and future of the business products and support tooling. Working closely within functional team and with external stakeholders qualifying and documenting new products, both hardware and software.

Identifying areas of improvement both within the team and the larger organization. Designing, engineering, architecture, and integration of tooling to reduce total cost, to support customers and minimize human error.

Role:
  • Identify areas of improvement for existing or new tooling
  • Manage approved projects and implement within assigned timelines
  • Provide support and guidance to other engineers
  • Point of escalation for support teams and Full Stack Systems Engineers
Technologies: Python, Powershell, Go, Bootstrap, Github Actions / CICD, Jira project management

Full Stack Systems Engineer II

2019 — 2020 @ Rackspace Technology

A small team of engineers setup to help standardise, train and implement new ways workflows or applications to improve efficiency within the business. Also an escalation point for support teams.

Role:
  • Improve business workflows and tooling to provide more efficient service
  • Independently manage assigned tasks and communicate with task stakeholders
Technologies: Python, Powershell, Go, Bootstrap, Github Actions / CICD, Jira project management

Technical Support, Team Leader

2017 — 2019 @ Rackspace Technology

Responsible for leading a team of 13 Windows Engineers, providing 3rd line support to our customer base.

Role:
  • Management of Windows Engineering team, including performance reviews and 1-to-1
  • Planning of on-call rotas and shift patterns
  • Ticket queue reporting and ensuring SLAs are adhered to
Technologies: InfluxDB, Grafana, ServiceNow

Technical Lead

2015 — 2017 @ Datapipe (Acquired by Rackspace Technology)

Adapt was a Managed Service Provider, also providing Co-Location and internet circuits to customers.

Role:
  • Overall technical responsibility for a number of large enterprise businesses.
  • Work closely with the Account Director and Service Manager to co-ordinate teams and deliver the best possible service.
  • Track and progress problems and projects to enable continued improvement.
Achieved:
  • Worked with the companies two largest customers to ensure retention after a period of issues, one customer ended up expanding their contract and adding additional £1.2m due to this effort.
  • Provided a full CMDB device and relationship mapping to allow enhanced support and impact analysis.
  • Executed monthly usage analysis to provide feedback on potential savings or performance bottlenecks. This resulted in a major bottleneck being found with part of the infrastructure and mitigation being implemented.
  • Implemented a billing audit to ensure devices were being billed accurately each month.
  • Resolved some major problems that were causing poor customer performance.
Technologies: VMware vSphere, VMware vRealize, ServiceNow

Senior Hosting Engineer

2014 — 2015 @ Adapt (Acquired by Datapipe)

Adapt was a Managed Service Provider, also providing Co-Location and internet circuits to customers.

Role:
  • Architect and project manage deployment of customer environments.
  • Act as an escalation point for Junior engineers.
  • Improve technical documentation and procedures.
Achieved:
  • Architected a repeatable VMware environment with DR capabilities if required.
  • Fully automated deployment of environment to enable the most efficient use of engineers time.
  • Continued development of internal IPAM for asset tracking and IP Management.
Technologies: Juniper, VMware vSphere, Xen Server, NetApp, Windows Server, Linux (CentOS / Ubuntu), DNS, PHP, MySQL

Hosting Engineer

2013 — 2014 @ Sleek Networks (Acquired by Adapt)

Sleek Networks were a Data Center and Managed Service Provider, Hosting services for SME businesses across the UK. Later acquired by Adapt.

Role:
  • Provide assistance in maintaining the data center, including failover testing for generators and mains power.
  • Provisioning of new cabinets with power, cabling and switching gear.
  • 1st and 2nd line helpdesk support for any customer queries or issues.
Technologies: Juniper SRX and EX, VMware vSphere, Xen Server, NetApp Storage & Backup, Windows Server, Linux (CentOS / Ubuntu), DNS

Senior IT Consultant

2007 — 2013 @ Galtec Solutions

A small Managed Service Provider. Providing IT Support, project management & hardware / software sales to our customers.

Role:
  • Architect environments for SME customers.
  • Deploy Virtualisation and Windows infrastructures.
  • Evolve the internal & customer products offered.
Achieved:
  • Designed & Implemented the first Cloud hosted Bloxx appliance in partnership with Bloxx.
  • Designed & Implemented an off-site backup solution for our managed customers.
  • Designed & Implemented custom Sharepoint sites for businesses.
  • Implemented Microsoft Dynamics CRM.
Technologies: VMware vSphere, Veeam Backup & Replication, Windows Server 2003 / 2008, Windows Deployment Services, ManageEngine ServiceDesk Plus
+ About | TotalDebug
Home About
About
Cancel

About

Hi, Im Steve a Full Stack Systems Engineer from Leeds, UK.

I created this website to provide a location where I could share articles related to my interests / findings when working as a Developer / Sys Admin / Solution Architect.

My interest in IT started when I was very young, my Uncle worked for a large IT company and I was always fascinated by his work. I would build my own computers with him and eventually built them for friends and family too.

I started my career in IT straight from high school where I had an apprenticeship with Kodak working in one of their datacenters, I then moved on to working for small IT Resellers, and then on to a small Leeds based data center and hosting provider where I honed my skills and continue to expand my knowledge.

Now working for one of the worlds largest service providers, I spends this time working on projects to ensure the business runs in the most efficient ways possible by implementing automation tooling and improving processes.

The world always seems brighter when you’ve just made something that wasn’t there before. Neil Gaiman

As a hobby, I likes to spend time on home automation & 3D printing projects and of course spending time with my beautiful wife and children.

Thank You for reading!

Key Skills

Workfow Optimisation

90%

System & Product Architecture

80%

Project Management

50%

People Leader

40%

Programming Skills

HTML5/CSS3

90%

Python

75%

Typescript / Javascript

60%

Certifications

Full Stack Systems Engineer III

2020 — present @ Rackspace Technology

Responsible for the design, function and future of the business products and support tooling. Working closely within functional team and with external stakeholders qualifying and documenting new products, both hardware and software.

Identifying areas of improvement both within the team and the larger organization. Designing, engineering, architecture, and integration of tooling to reduce total cost, to support customers and minimize human error.

Role:
  • Identify areas of improvement for existing or new tooling
  • Manage approved projects and implement within assigned timelines
  • Provide support and guidance to other engineers
  • Point of escalation for support teams and Full Stack Systems Engineers
Technologies: Python, Powershell, Go, Bootstrap, Github Actions / CICD, Jira project management

Full Stack Systems Engineer II

2019 — 2020 @ Rackspace Technology

A small team of engineers setup to help standardise, train and implement new ways workflows or applications to improve efficiency within the business. Also an escalation point for support teams.

Role:
  • Improve business workflows and tooling to provide more efficient service
  • Independently manage assigned tasks and communicate with task stakeholders
Technologies: Python, Powershell, Go, Bootstrap, Github Actions / CICD, Jira project management

Technical Support, Team Leader

2017 — 2019 @ Rackspace Technology

Responsible for leading a team of 13 Windows Engineers, providing 3rd line support to our customer base.

Role:
  • Management of Windows Engineering team, including performance reviews and 1-to-1
  • Planning of on-call rotas and shift patterns
  • Ticket queue reporting and ensuring SLAs are adhered to
Technologies: InfluxDB, Grafana, ServiceNow

Technical Lead

2015 — 2017 @ Datapipe (Acquired by Rackspace Technology)

Adapt was a Managed Service Provider, also providing Co-Location and internet circuits to customers.

Role:
  • Overall technical responsibility for a number of large enterprise businesses.
  • Work closely with the Account Director and Service Manager to co-ordinate teams and deliver the best possible service.
  • Track and progress problems and projects to enable continued improvement.
Achieved:
  • Worked with the companies two largest customers to ensure retention after a period of issues, one customer ended up expanding their contract and adding additional £1.2m due to this effort.
  • Provided a full CMDB device and relationship mapping to allow enhanced support and impact analysis.
  • Executed monthly usage analysis to provide feedback on potential savings or performance bottlenecks. This resulted in a major bottleneck being found with part of the infrastructure and mitigation being implemented.
  • Implemented a billing audit to ensure devices were being billed accurately each month.
  • Resolved some major problems that were causing poor customer performance.
Technologies: VMware vSphere, VMware vRealize, ServiceNow

Senior Hosting Engineer

2014 — 2015 @ Adapt (Acquired by Datapipe)

Adapt was a Managed Service Provider, also providing Co-Location and internet circuits to customers.

Role:
  • Architect and project manage deployment of customer environments.
  • Act as an escalation point for Junior engineers.
  • Improve technical documentation and procedures.
Achieved:
  • Architected a repeatable VMware environment with DR capabilities if required.
  • Fully automated deployment of environment to enable the most efficient use of engineers time.
  • Continued development of internal IPAM for asset tracking and IP Management.
Technologies: Juniper, VMware vSphere, Xen Server, NetApp, Windows Server, Linux (CentOS / Ubuntu), DNS, PHP, MySQL

Hosting Engineer

2013 — 2014 @ Sleek Networks (Acquired by Adapt)

Sleek Networks were a Data Center and Managed Service Provider, Hosting services for SME businesses across the UK. Later acquired by Adapt.

Role:
  • Provide assistance in maintaining the data center, including failover testing for generators and mains power.
  • Provisioning of new cabinets with power, cabling and switching gear.
  • 1st and 2nd line helpdesk support for any customer queries or issues.
Technologies: Juniper SRX and EX, VMware vSphere, Xen Server, NetApp Storage & Backup, Windows Server, Linux (CentOS / Ubuntu), DNS

Senior IT Consultant

2007 — 2013 @ Galtec Solutions

A small Managed Service Provider. Providing IT Support, project management & hardware / software sales to our customers.

Role:
  • Architect environments for SME customers.
  • Deploy Virtualisation and Windows infrastructures.
  • Evolve the internal & customer products offered.
Achieved:
  • Designed & Implemented the first Cloud hosted Bloxx appliance in partnership with Bloxx.
  • Designed & Implemented an off-site backup solution for our managed customers.
  • Designed & Implemented custom Sharepoint sites for businesses.
  • Implemented Microsoft Dynamics CRM.
Technologies: VMware vSphere, Veeam Backup & Replication, Windows Server 2003 / 2008, Windows Deployment Services, ManageEngine ServiceDesk Plus
diff --git a/archives/index.html b/archives/index.html index 7a1d187c..56945e98 100644 --- a/archives/index.html +++ b/archives/index.html @@ -1 +1 @@ - Archives | TotalDebug
Home Archives
Archives
Cancel

Archives

2023
2022
2021
2020
2019
2018
2017
2016
2015
2014
2012
2011
+ Archives | TotalDebug
Home Archives
Archives
Cancel

Archives

2023
2022
2021
2020
2019
2018
2017
2016
2015
2014
2012
2011
diff --git a/assets/css/style.css.map b/assets/css/style.css.map index 15006d66..bed6c8dc 100644 --- a/assets/css/style.css.map +++ b/assets/css/style.css.map @@ -3,25 +3,25 @@ "file": "style.css", "sources": [ "style.scss", - "../../../../../tmp/jekyll-remote-theme-20230808-1746-22nyfo/_sass/jekyll-theme-chirpy.scss", - "../../../../../tmp/jekyll-remote-theme-20230808-1746-22nyfo/_sass/colors/light-typography.scss", - "../../../../../tmp/jekyll-remote-theme-20230808-1746-22nyfo/_sass/colors/dark-typography.scss", - "../../../../../tmp/jekyll-remote-theme-20230808-1746-22nyfo/_sass/addon/variables.scss", - "../../../../../tmp/jekyll-remote-theme-20230808-1746-22nyfo/_sass/variables-hook.scss", - "../../../../../tmp/jekyll-remote-theme-20230808-1746-22nyfo/_sass/addon/module.scss", - "../../../../../tmp/jekyll-remote-theme-20230808-1746-22nyfo/_sass/addon/syntax.scss", - "../../../../../tmp/jekyll-remote-theme-20230808-1746-22nyfo/_sass/colors/light-syntax.scss", - "../../../../../tmp/jekyll-remote-theme-20230808-1746-22nyfo/_sass/colors/dark-syntax.scss", - "../../../../../tmp/jekyll-remote-theme-20230808-1746-22nyfo/_sass/addon/commons.scss", - "../../../../../tmp/jekyll-remote-theme-20230808-1746-22nyfo/_sass/layout/home.scss", - "../../../../../tmp/jekyll-remote-theme-20230808-1746-22nyfo/_sass/layout/post.scss", - "../../../../../tmp/jekyll-remote-theme-20230808-1746-22nyfo/_sass/layout/tags.scss", - "../../../../../tmp/jekyll-remote-theme-20230808-1746-22nyfo/_sass/layout/archives.scss", - "../../../../../tmp/jekyll-remote-theme-20230808-1746-22nyfo/_sass/layout/categories.scss", - "../../../../../tmp/jekyll-remote-theme-20230808-1746-22nyfo/_sass/layout/category-tag.scss", - "../../../../../tmp/jekyll-remote-theme-20230808-1746-22nyfo/_sass/layout/works.scss", - "../../../../../tmp/jekyll-remote-theme-20230808-1746-22nyfo/_sass/elements/skills.scss", - "../../../../../tmp/jekyll-remote-theme-20230808-1746-22nyfo/_sass/elements/timeline.scss" + "../../../../../tmp/jekyll-remote-theme-20230808-1751-drnfmi/_sass/jekyll-theme-chirpy.scss", + "../../../../../tmp/jekyll-remote-theme-20230808-1751-drnfmi/_sass/colors/light-typography.scss", + "../../../../../tmp/jekyll-remote-theme-20230808-1751-drnfmi/_sass/colors/dark-typography.scss", + "../../../../../tmp/jekyll-remote-theme-20230808-1751-drnfmi/_sass/addon/variables.scss", + "../../../../../tmp/jekyll-remote-theme-20230808-1751-drnfmi/_sass/variables-hook.scss", + "../../../../../tmp/jekyll-remote-theme-20230808-1751-drnfmi/_sass/addon/module.scss", + "../../../../../tmp/jekyll-remote-theme-20230808-1751-drnfmi/_sass/addon/syntax.scss", + "../../../../../tmp/jekyll-remote-theme-20230808-1751-drnfmi/_sass/colors/light-syntax.scss", + "../../../../../tmp/jekyll-remote-theme-20230808-1751-drnfmi/_sass/colors/dark-syntax.scss", + "../../../../../tmp/jekyll-remote-theme-20230808-1751-drnfmi/_sass/addon/commons.scss", + "../../../../../tmp/jekyll-remote-theme-20230808-1751-drnfmi/_sass/layout/home.scss", + "../../../../../tmp/jekyll-remote-theme-20230808-1751-drnfmi/_sass/layout/post.scss", + "../../../../../tmp/jekyll-remote-theme-20230808-1751-drnfmi/_sass/layout/tags.scss", + "../../../../../tmp/jekyll-remote-theme-20230808-1751-drnfmi/_sass/layout/archives.scss", + "../../../../../tmp/jekyll-remote-theme-20230808-1751-drnfmi/_sass/layout/categories.scss", + "../../../../../tmp/jekyll-remote-theme-20230808-1751-drnfmi/_sass/layout/category-tag.scss", + "../../../../../tmp/jekyll-remote-theme-20230808-1751-drnfmi/_sass/layout/works.scss", + "../../../../../tmp/jekyll-remote-theme-20230808-1751-drnfmi/_sass/elements/skills.scss", + "../../../../../tmp/jekyll-remote-theme-20230808-1751-drnfmi/_sass/elements/timeline.scss" ], "sourcesContent": [ "@import 'jekyll-theme-chirpy';\n\n/* append your custom style below */\n", diff --git a/assets/js/dist/categories.min.js.map b/assets/js/dist/categories.min.js.map new file mode 100644 index 00000000..b00ca433 --- /dev/null +++ b/assets/js/dist/categories.min.js.map @@ -0,0 +1 @@ +{"version":3,"file":"categories.min.js","sources":["../../../_javascript/modules/components/back-to-top.js","../../../_javascript/modules/components/tooltip-loader.js","../../../_javascript/modules/layouts/basic.js","../../../_javascript/modules/components/mode-watcher.js","../../../_javascript/modules/components/sidebar.js","../../../_javascript/modules/layouts/sidebar.js","../../../_javascript/modules/components/search-display.js","../../../_javascript/modules/layouts/topbar.js","../../../_javascript/modules/components/category-collapse.js","../../../_javascript/modules/components/clipboard.js","../../../_javascript/categories.js"],"sourcesContent":["/**\n * Reference: https://bootsnipp.com/snippets/featured/link-to-top-page\n */\n\nexport function back2top() {\n const $window = $(window);\n const $btn = $('#back-to-top');\n\n $window.on('scroll', () => {\n if ($window.scrollTop() > 50) {\n $btn.fadeIn();\n } else {\n $btn.fadeOut();\n }\n });\n\n $btn.on('click', () => {\n $window.scrollTop(0);\n });\n}\n","/**\n * Initial Bootstrap Tooltip.\n */\nexport function loadTooptip() {\n const tooltipTriggerList = document.querySelectorAll(\n '[data-bs-toggle=\"tooltip\"]'\n );\n\n [...tooltipTriggerList].map(\n (tooltipTriggerEl) => new bootstrap.Tooltip(tooltipTriggerEl)\n );\n}\n","import { back2top } from '../components/back-to-top';\nimport { loadTooptip } from '../components/tooltip-loader';\n\nexport function basic() {\n back2top();\n loadTooptip();\n}\n","/**\n * Add listener for theme mode toggle\n */\nconst $toggleElem = $('.mode-toggle');\n\nexport function modeWatcher() {\n if ($toggleElem.length === 0) {\n return;\n }\n\n $toggleElem.off().on('click', (e) => {\n const $target = $(e.target);\n let $btn =\n $target.prop('tagName') === 'button'.toUpperCase()\n ? $target\n : $target.parent();\n\n modeToggle.flipMode(); // modeToggle: `_includes/mode-toggle.html`\n $btn.trigger('blur'); // remove the clicking outline\n });\n}\n","/**\n * Expand or close the sidebar in mobile screens.\n */\n\nconst $body = $('body');\nconst ATTR_DISPLAY = 'sidebar-display';\n\nclass SidebarUtil {\n static isExpanded = false;\n\n static toggle() {\n if (SidebarUtil.isExpanded === false) {\n $body.attr(ATTR_DISPLAY, '');\n } else {\n $body.removeAttr(ATTR_DISPLAY);\n }\n\n SidebarUtil.isExpanded = !SidebarUtil.isExpanded;\n }\n}\n\nexport function sidebarExpand() {\n $('#sidebar-trigger').on('click', SidebarUtil.toggle);\n $('#mask').on('click', SidebarUtil.toggle);\n}\n","import { modeWatcher } from '../components/mode-watcher';\nimport { sidebarExpand } from '../components/sidebar';\n\nexport function initSidebar() {\n modeWatcher();\n sidebarExpand();\n}\n","/**\n * This script make #search-result-wrapper switch to unloaded or shown automatically.\n */\nconst $btnSbTrigger = $('#sidebar-trigger');\nconst $btnSearchTrigger = $('#search-trigger');\nconst $btnCancel = $('#search-cancel');\nconst $content = $('#main>.row');\nconst $topbarTitle = $('#topbar-title');\nconst $searchWrapper = $('#search-wrapper');\nconst $resultWrapper = $('#search-result-wrapper');\nconst $results = $('#search-results');\nconst $input = $('#search-input');\nconst $hints = $('#search-hints');\nconst $viewport = $('html,body');\n\n// class names\nconst C_LOADED = 'loaded';\nconst C_UNLOADED = 'unloaded';\nconst C_FOCUS = 'input-focus';\nconst C_FLEX = 'd-flex';\n\nclass ScrollBlocker {\n static offset = 0;\n static resultVisible = false;\n\n static on() {\n ScrollBlocker.offset = window.scrollY;\n $viewport.scrollTop(0);\n }\n\n static off() {\n $viewport.scrollTop(ScrollBlocker.offset);\n }\n}\n\n/*--- Actions in mobile screens (Sidebar hidden) ---*/\nclass MobileSearchBar {\n static on() {\n $btnSbTrigger.addClass(C_UNLOADED);\n $topbarTitle.addClass(C_UNLOADED);\n $btnSearchTrigger.addClass(C_UNLOADED);\n $searchWrapper.addClass(C_FLEX);\n $btnCancel.addClass(C_LOADED);\n }\n\n static off() {\n $btnCancel.removeClass(C_LOADED);\n $searchWrapper.removeClass(C_FLEX);\n $btnSbTrigger.removeClass(C_UNLOADED);\n $topbarTitle.removeClass(C_UNLOADED);\n $btnSearchTrigger.removeClass(C_UNLOADED);\n }\n}\n\nclass ResultSwitch {\n static on() {\n if (!ScrollBlocker.resultVisible) {\n // the block method must be called before $(#main) unloaded.\n ScrollBlocker.on();\n $resultWrapper.removeClass(C_UNLOADED);\n $content.addClass(C_UNLOADED);\n ScrollBlocker.resultVisible = true;\n }\n }\n\n static off() {\n if (ScrollBlocker.resultVisible) {\n $results.empty();\n if ($hints.hasClass(C_UNLOADED)) {\n $hints.removeClass(C_UNLOADED);\n }\n $resultWrapper.addClass(C_UNLOADED);\n $content.removeClass(C_UNLOADED);\n\n // now the release method must be called after $(#main) display\n ScrollBlocker.off();\n\n $input.val('');\n ScrollBlocker.resultVisible = false;\n }\n }\n}\n\nfunction isMobileView() {\n return $btnCancel.hasClass(C_LOADED);\n}\n\nexport function displaySearch() {\n $btnSearchTrigger.on('click', function () {\n MobileSearchBar.on();\n ResultSwitch.on();\n $input.trigger('focus');\n });\n\n $btnCancel.on('click', function () {\n MobileSearchBar.off();\n ResultSwitch.off();\n });\n\n $input.on('focus', function () {\n $searchWrapper.addClass(C_FOCUS);\n });\n\n $input.on('focusout', function () {\n $searchWrapper.removeClass(C_FOCUS);\n });\n\n $input.on('input', () => {\n if ($input.val() === '') {\n if (isMobileView()) {\n $hints.removeClass(C_UNLOADED);\n } else {\n ResultSwitch.off();\n }\n } else {\n ResultSwitch.on();\n if (isMobileView()) {\n $hints.addClass(C_UNLOADED);\n }\n }\n });\n}\n","import { displaySearch } from '../components/search-display';\n\nexport function initTopbar() {\n displaySearch();\n}\n","/**\n * Tab 'Categories' expand/close effect.\n */\nconst childPrefix = 'l_';\nconst parentPrefix = 'h_';\nconst collapse = $('.collapse');\n\nexport function categoryCollapse() {\n /* close up top-category */\n collapse.on('hide.bs.collapse', function () {\n /* Bootstrap collapse events. */ const parentId =\n parentPrefix + $(this).attr('id').substring(childPrefix.length);\n if (parentId) {\n $(`#${parentId} .bi.bi-folder2-open`).attr(\n 'class',\n 'bi bi-folder'\n );\n $(`#${parentId} i.bi`).addClass('rotate');\n $(`#${parentId}`).removeClass('hide-border-bottom');\n }\n });\n\n /* expand the top category */\n collapse.on('show.bs.collapse', function () {\n const parentId =\n parentPrefix + $(this).attr('id').substring(childPrefix.length);\n if (parentId) {\n $(`#${parentId} .bi.bi-folder`).attr(\n 'class',\n 'bi bi-folder2-open'\n );\n $(`#${parentId} i.bi`).removeClass('rotate');\n $(`#${parentId}`).addClass('hide-border-bottom');\n }\n });\n}\n","/**\n * Clipboard functions\n *\n * Dependencies:\n * - popper.js (https://github.com/popperjs/popper-core)\n * - clipboard.js (https://github.com/zenorocha/clipboard.js)\n */\n\nconst clipboardSelector = '.code-header>button';\nconst ICON_SUCCESS = 'bi bi-check';\nconst ATTR_TIMEOUT = 'timeout';\nconst ATTR_TITLE_SUCCEED = 'data-title-succeed';\nconst ATTR_TITLE_ORIGIN = 'data-bs-original-title';\nconst TIMEOUT = 2000; // in milliseconds\n\nfunction isLocked(node) {\n if ($(node)[0].hasAttribute(ATTR_TIMEOUT)) {\n let timeout = $(node).attr(ATTR_TIMEOUT);\n if (Number(timeout) > Date.now()) {\n return true;\n }\n }\n return false;\n}\n\nfunction lock(node) {\n $(node).attr(ATTR_TIMEOUT, Date.now() + TIMEOUT);\n}\n\nfunction unlock(node) {\n $(node).removeAttr(ATTR_TIMEOUT);\n}\n\nfunction getIcon(btn) {\n let iconNode = $(btn).children();\n return iconNode.attr('class');\n}\n\nconst ICON_DEFAULT = getIcon(clipboardSelector);\n\nfunction showTooltip(btn) {\n const succeedTitle = $(btn).attr(ATTR_TITLE_SUCCEED);\n $(btn).attr(ATTR_TITLE_ORIGIN, succeedTitle).tooltip('show');\n}\n\nfunction hideTooltip(btn) {\n $(btn).tooltip('hide').removeAttr(ATTR_TITLE_ORIGIN);\n}\n\nfunction setSuccessIcon(btn) {\n let btnNode = $(btn);\n let iconNode = btnNode.children();\n iconNode.attr('class', ICON_SUCCESS);\n}\n\nfunction resumeIcon(btn) {\n let btnNode = $(btn);\n let iconNode = btnNode.children();\n iconNode.attr('class', ICON_DEFAULT);\n}\n\nexport function initClipboard() {\n // Initial the clipboard.js object\n if ($(clipboardSelector).length) {\n const clipboard = new ClipboardJS(clipboardSelector, {\n target(trigger) {\n let codeBlock = trigger.parentNode.nextElementSibling;\n return codeBlock.querySelector('code .rouge-code');\n }\n });\n\n const clipboardList = document.querySelectorAll(clipboardSelector);\n [...clipboardList].map(\n (elem) =>\n new bootstrap.Tooltip(elem, {\n placement: 'left'\n })\n );\n\n clipboard.on('success', (e) => {\n e.clearSelection();\n\n const trigger = e.trigger;\n if (isLocked(trigger)) {\n return;\n }\n\n setSuccessIcon(trigger);\n showTooltip(trigger);\n lock(trigger);\n\n setTimeout(() => {\n hideTooltip(trigger);\n resumeIcon(trigger);\n unlock(trigger);\n }, TIMEOUT);\n });\n }\n\n /* --- Post link sharing --- */\n\n const btnCopyLink = $('#copy-link');\n\n btnCopyLink.on('click', (e) => {\n let target = $(e.target);\n\n if (isLocked(target)) {\n return;\n }\n\n // Copy URL to clipboard\n navigator.clipboard.writeText(window.location.href).then(() => {\n const defaultTitle = target.attr(ATTR_TITLE_ORIGIN);\n const succeedTitle = target.attr(ATTR_TITLE_SUCCEED);\n // Switch tooltip title\n target.attr(ATTR_TITLE_ORIGIN, succeedTitle).tooltip('show');\n lock(target);\n\n setTimeout(() => {\n target.attr(ATTR_TITLE_ORIGIN, defaultTitle);\n unlock(target);\n }, TIMEOUT);\n });\n });\n\n btnCopyLink.on('mouseleave', function (e) {\n const target = $(e.target);\n target.tooltip('hide');\n console.log('mouse leave...');\n });\n}\n","import { basic, initSidebar, initTopbar } from './modules/layouts';\nimport { categoryCollapse } from './modules/plugins';\n\nbasic();\ninitSidebar();\ninitTopbar();\ncategoryCollapse();\n"],"names":["back2top","$window","$","window","$btn","on","scrollTop","fadeIn","fadeOut","loadTooptip","tooltipTriggerList","document","querySelectorAll","_toConsumableArray","map","tooltipTriggerEl","bootstrap","Tooltip","basic","$toggleElem","modeWatcher","length","off","e","$target","target","prop","toUpperCase","parent","modeToggle","flipMode","trigger","$body","ATTR_DISPLAY","SidebarUtil","_classCallCheck","_createClass","key","value","toggle","isExpanded","attr","removeAttr","_defineProperty","sidebarExpand","initSidebar","$btnSbTrigger","$btnSearchTrigger","$btnCancel","$content","$topbarTitle","$searchWrapper","$resultWrapper","$results","$input","$hints","$viewport","C_LOADED","C_UNLOADED","C_FOCUS","C_FLEX","ScrollBlocker","offset","scrollY","MobileSearchBar","addClass","removeClass","ResultSwitch","resultVisible","empty","hasClass","val","isMobileView","displaySearch","initTopbar","childPrefix","parentPrefix","collapse","categoryCollapse","parentId","substring","concat","clipboardSelector","getIcon","btn","iconNode","children"],"mappings":";;;;;;;;;AAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA;;AAEO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASA,QAAQA,CAAG,CAAA,CAAA,CAAA;AACzB,CAAA,CAAA,CAAA,CAAA,IAAMC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGC,CAAC,CAACC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAAC,CAAA;AACzB,CAAA,CAAA,CAAA,CAAA,IAAMC,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGF,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc,CAAC,CAAA;AAE9BD,CAAAA,CAAAA,CAAAA,CAAAA,OAAO,CAACI,CAAAA,CAAE,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,EAAE,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACzB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAIJ,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACK,SAAS,CAAE,CAAA,CAAA,CAAA,CAAG,EAAE,CAAE,CAAA,CAAA;QAC5BF,CAAI,CAAA,CAAA,CAAA,CAACG,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAA;AACf,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;QACLH,CAAI,CAAA,CAAA,CAAA,CAACI,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAA;EAChB,CAAA,CAAA,CAAA,CAAA,CAAA;AACF,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;AAEFJ,CAAAA,CAAAA,CAAAA,CAAAA,IAAI,CAACC,CAAAA,CAAE,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,EAAE,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACrBJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,OAAO,CAACK,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CAAC,CAAC,CAAC,CAAA;AACtB,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;AACJ,CAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACnBA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA;AACO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASG,WAAWA,CAAG,CAAA,CAAA,CAAA;EAC5B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMC,kBAAkB,CAAGC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAACC,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAClD,CAA4B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAC7B,CAAA;EAEDC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAIH,CAAkB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAEI,CAAG,CAAA,CAAA,CACzB,CAACC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgB,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,IAAIC,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACC,OAAO,CAACF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgB,CAAC,CAAA;KAC9D,CAAA,CAAA;AACH,CAAA,CAAA,CAAA;;ACRO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASG,KAAKA,CAAG,CAAA,CAAA,CAAA;EACtBlB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,EAAE,CAAA;EACVS,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,EAAE,CAAA;AACf,CAAA,CAAA,CAAA;;ACNA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMU,WAAW,CAAGjB,CAAAA,CAAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc,CAAC,CAAA;AAE9B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASkB,WAAWA,CAAG,CAAA,CAAA,CAAA;AAC5B,CAAA,CAAA,CAAA,CAAA,IAAID,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACE,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAE,CAAA,CAAA;AAC5B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACF,CAAA,CAAA,CAAA;GAEAF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAACG,CAAAA,CAAAA,CAAG,CAAE,CAAA,CAACjB,CAAE,CAAA,CAAC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAACkB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAC,CAAK,CAAA,CAAA;EACnC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMC,OAAO,CAAGtB,CAAAA,CAAAA,CAAC,CAACqB,CAAC,CAACE,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;EAC3B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIrB,IAAI,CACNoB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAACE,CAAI,CAAA,CAAA,CAAA,CAAC,SAAS,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,QAAQ,CAACC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,EAAE,CAC9CH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,GACPA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACI,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAA;AAEtBC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACtB1B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IAAI,CAAC2B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACvB,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;AACJ,CAAA,CAAA,CAAA;;ACpBA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA;;AAEA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMC,KAAK,CAAG9B,CAAAA,CAAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC,CAAA;EACvB,CAAM+B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAiB,CAAA;EAAC,CAEjCC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,gBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,WAAA,CAAA,CAAA,CAAA,CAAA;AAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,eAAA,MAAAD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA;AAAAE,CAAAA,CAAAA,CAAAA,CAAAA,YAAA,CAAAF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;GAAAG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;MAAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAGf,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgB,CAAA,CAAA,CAAA;AACd,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAIL,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACM,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,KAAK,CAAE,CAAA,CAAA;EACpCR,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAACS,CAAI,CAAA,CAAA,CAAA,CAACR,YAAY,CAAE,CAAA,CAAA,CAAE,CAAC,CAAA;AAC9B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACLD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,KAAK,CAACU,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAACT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAC,CAAA;EAChC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAEAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAACM,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAACN,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACM,UAAU,CAAA;EAClD,CAAA,CAAA,CAAA,CAAA,CAAA;EAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAN,WAAA,CAAA;AAAA,CAAA,CAAA,CAAA,EAAA,CAAA;AAAAS,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAXGT,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,YAAA,CACK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA;AAapB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASU,aAAaA,CAAG,CAAA,CAAA,CAAA;IAC9B1C,CAAC,CAAC,CAAkB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAACG,CAAAA,CAAE,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAE6B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAACK,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAAC,CAAA;IACrDrC,CAAC,CAAC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAACG,CAAAA,CAAE,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAE6B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAACK,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAAC,CAAA;AAC5C,CAAA,CAAA,CAAA;;ACrBO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASM,WAAWA,CAAG,CAAA,CAAA,CAAA;EAC5BzB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,EAAE,CAAA;EACbwB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,EAAE,CAAA;AACjB,CAAA,CAAA,CAAA;;ACNA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAME,aAAa,CAAG5C,CAAAA,CAAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAkB,CAAC,CAAA;AAC3C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM6C,iBAAiB,CAAG7C,CAAAA,CAAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAiB,CAAC,CAAA;AAC9C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM8C,UAAU,CAAG9C,CAAAA,CAAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAC,CAAA;AACtC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM+C,QAAQ,CAAG/C,CAAAA,CAAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAC,CAAA;AAChC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMgD,YAAY,CAAGhD,CAAAA,CAAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,CAAC,CAAA;AACvC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMiD,cAAc,CAAGjD,CAAAA,CAAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAiB,CAAC,CAAA;AAC3C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMkD,cAAc,CAAGlD,CAAAA,CAAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAwB,CAAC,CAAA;AAClD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMmD,QAAQ,CAAGnD,CAAAA,CAAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAiB,CAAC,CAAA;AACrC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMoD,MAAM,CAAGpD,CAAAA,CAAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,CAAC,CAAA;AACjC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMqD,MAAM,CAAGrD,CAAAA,CAAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,CAAC,CAAA;AACjC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMsD,SAAS,CAAGtD,CAAAA,CAAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,CAAC,CAAA;;AAEhC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACA,CAAMuD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA;EACzB,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA;EAC7B,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAA;EAC7B,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA;EAAC,CAElBC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,gBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,aAAA,CAAA,CAAA,CAAA,CAAA;AAAA1B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,eAAA,MAAA0B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA;AAAAzB,CAAAA,CAAAA,CAAAA,CAAAA,YAAA,CAAAyB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;GAAAxB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;MAAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAIjB,CAAAjC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAA,CAAA,CAAA;AACVwD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,aAAa,CAACC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,GAAG3D,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC4D,OAAO,CAAA;AACrCP,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,SAAS,CAAClD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CAAC,CAAC,CAAC,CAAA;EACxB,CAAA,CAAA,CAAA,CAAA,CAAA;AAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;GAAA+B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;MAAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAED,CAAAhB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CAAA,CAAA,CAAA;EACXkC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CAAClD,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACuD,aAAa,CAACC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAAC,CAAA;EAC3C,CAAA,CAAA,CAAA,CAAA,CAAA;EAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAD,aAAA,CAAA;AAAA,CAAA,CAAA,CAAA,EAAA,CAAA;AAGH,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAAlB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAdMkB,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,QAAA,CACD,CAAA,CAAC,CAAA,CAAA;AAAAlB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CADbkB,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,eAAA,CAEM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA;EAAA,CAaxBG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAe,gBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,eAAA,CAAA,CAAA,CAAA,CAAA;AAAA7B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,eAAA,MAAA6B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA;AAAA5B,CAAAA,CAAAA,CAAAA,CAAAA,YAAA,CAAA4B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;GAAA3B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;MAAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACnB,CAAAjC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAA,CAAA,CAAA;AACVyC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,aAAa,CAACmB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAACP,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAC,CAAA;AAClCR,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,YAAY,CAACe,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAACP,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAC,CAAA;AACjCX,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,iBAAiB,CAACkB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAACP,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAC,CAAA;AACtCP,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,cAAc,CAACc,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAACL,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAAC,CAAA;AAC/BZ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,UAAU,CAACiB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAACR,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAAC,CAAA;EAC/B,CAAA,CAAA,CAAA,CAAA,CAAA;AAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;GAAApB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;MAAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAED,CAAAhB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CAAA,CAAA,CAAA;AACX0B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,UAAU,CAACkB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAACT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAAC,CAAA;AAChCN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,cAAc,CAACe,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAACN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAAC,CAAA;AAClCd,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,aAAa,CAACoB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAACR,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAC,CAAA;AACrCR,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,YAAY,CAACgB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAACR,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAC,CAAA;AACpCX,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,iBAAiB,CAACmB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAACR,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAC,CAAA;EAC3C,CAAA,CAAA,CAAA,CAAA,CAAA;EAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAM,eAAA,CAAA;AAAA,CAAA,CAAA,CAAA,EAAA,CAAA;EAAA,CAGGG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,gBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,YAAA,CAAA,CAAA,CAAA,CAAA;AAAAhC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,eAAA,MAAAgC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA;AAAA/B,CAAAA,CAAAA,CAAAA,CAAAA,YAAA,CAAA+B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;GAAA9B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;MAAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAChB,CAAAjC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAA,CAAA,CAAA;AACV,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAACwD,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACO,aAAa,CAAE,CAAA,CAAA;AAChC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;UACAP,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACxD,CAAE,CAAA,CAAA,CAAE,CAAA;AAClB+C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,cAAc,CAACc,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAACR,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAC,CAAA;AACtCT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,QAAQ,CAACgB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAACP,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAC,CAAA;UAC7BG,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACO,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,IAAI,CAAA;EACpC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACF,CAAA,CAAA,CAAA,CAAA,CAAA;AAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;GAAA/B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;MAAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAED,CAAAhB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CAAA,CAAA,CAAA;QACX,CAAIuC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CAACO,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CAAE,CAAA,CAAA;UAC/Bf,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACgB,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAA;AAChB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAId,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAACe,QAAQ,CAACZ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAC,CAAE,CAAA,CAAA;AAC/BH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,MAAM,CAACW,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAACR,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAC,CAAA;EAChC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACAN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,cAAc,CAACa,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAACP,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAC,CAAA;AACnCT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,QAAQ,CAACiB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAACR,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAC,CAAA;;AAEhC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;UACAG,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACvC,CAAG,CAAA,CAAA,CAAA,CAAE,CAAA;AAEnBgC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,MAAM,CAACiB,CAAAA,CAAAA,CAAG,CAAC,CAAA,CAAE,CAAC,CAAA;UACdV,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACO,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,KAAK,CAAA;EACrC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACF,CAAA,CAAA,CAAA,CAAA,CAAA;EAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAD,YAAA,CAAA;AAAA,CAAA,CAAA,CAAA,EAAA,CAAA;AAGH,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASK,YAAYA,CAAG,CAAA,CAAA,CAAA;AACtB,CAAA,CAAA,CAAA,CAAA,OAAOxB,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACsB,QAAQ,CAACb,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAAC,CAAA;EACtC,CAAA;AAEO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASgB,aAAaA,CAAG,CAAA,CAAA,CAAA;AAC9B1B,CAAAA,CAAAA,CAAAA,CAAAA,iBAAiB,CAAC1C,CAAAA,CAAE,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,EAAE,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;MACxC2D,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC3D,CAAE,CAAA,CAAA,CAAE,CAAA;MACpB8D,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC9D,CAAE,CAAA,CAAA,CAAE,CAAA;AACjBiD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,MAAM,CAACvB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAC,CAAA;AACzB,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;AAEFiB,CAAAA,CAAAA,CAAAA,CAAAA,UAAU,CAAC3C,CAAAA,CAAE,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,EAAE,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;MACjC2D,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC1C,CAAG,CAAA,CAAA,CAAA,CAAE,CAAA;MACrB6C,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC7C,CAAG,CAAA,CAAA,CAAA,CAAE,CAAA;AACpB,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;AAEFgC,CAAAA,CAAAA,CAAAA,CAAAA,MAAM,CAACjD,CAAAA,CAAE,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,EAAE,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAC7B8C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,cAAc,CAACc,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAACN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAC,CAAA;AAClC,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;AAEFL,CAAAA,CAAAA,CAAAA,CAAAA,MAAM,CAACjD,CAAAA,CAAE,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,EAAE,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAChC8C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,cAAc,CAACe,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAACP,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAC,CAAA;AACrC,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;AAEFL,CAAAA,CAAAA,CAAAA,CAAAA,MAAM,CAACjD,CAAAA,CAAE,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,EAAE,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACvB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAIiD,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAACiB,GAAG,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,EAAE,CAAE,CAAA,CAAA;GACvB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIC,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAE,CAAA,CAAA;AAClBjB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,MAAM,CAACW,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAACR,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAC,CAAA;AAChC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;UACLS,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC7C,CAAG,CAAA,CAAA,CAAA,CAAE,CAAA;EACpB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;QACL6C,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC9D,CAAE,CAAA,CAAA,CAAE,CAAA;GACjB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAImE,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAE,CAAA,CAAA;AAClBjB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,MAAM,CAACU,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAACP,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAC,CAAA;EAC7B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACF,CAAA,CAAA,CAAA,CAAA,CAAA;AACF,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;AACJ,CAAA,CAAA,CAAA;;ACvHO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASgB,UAAUA,CAAG,CAAA,CAAA,CAAA;EAC3BD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,EAAE,CAAA;AACjB,CAAA,CAAA,CAAA;;ACJA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA;EACA,CAAME,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAA;EACxB,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAA;AACzB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMC,QAAQ,CAAG3E,CAAAA,CAAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,CAAC,CAAA;AAExB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS4E,gBAAgBA,CAAG,CAAA,CAAA,CAAA;AACjC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACAD,CAAAA,CAAAA,CAAAA,CAAAA,QAAQ,CAACxE,CAAAA,CAAE,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAkB,EAAE,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;GACT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM0E,QAAQ,CAC7CH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,GAAG1E,CAAC,CAAC,IAAI,CAAC,CAACuC,IAAI,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAACuC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CAACL,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACtD,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;EACjE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI0D,QAAQ,CAAE,CAAA,CAAA;QACZ7E,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA+E,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAKF,QAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAuB,CAACtC,CAAI,CAAA,CAAA,CAAA,CACxC,OAAO,CACP,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc,CACf,CAAA;QACDvC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA+E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAKF,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,UAAQ,CAACd,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAC,CAAA;QACzC/D,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA+E,MAAA,CAAKF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,EAAG,CAACb,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAoB,CAAC,CAAA;EACrD,CAAA,CAAA,CAAA,CAAA,CAAA;AACF,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;;AAEF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACAW,CAAAA,CAAAA,CAAAA,CAAAA,QAAQ,CAACxE,CAAAA,CAAE,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAkB,EAAE,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAC1C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM0E,QAAQ,CACZH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,GAAG1E,CAAC,CAAC,IAAI,CAAC,CAACuC,IAAI,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAACuC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CAACL,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACtD,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;EACjE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI0D,QAAQ,CAAE,CAAA,CAAA;QACZ7E,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA+E,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAKF,QAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAiB,CAACtC,CAAI,CAAA,CAAA,CAAA,CAClC,OAAO,CACP,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAoB,CACrB,CAAA;QACDvC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA+E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAKF,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,UAAQ,CAACb,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAC,CAAA;QAC5ChE,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA+E,MAAA,CAAKF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,EAAG,CAACd,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAoB,CAAC,CAAA;EAClD,CAAA,CAAA,CAAA,CAAA,CAAA;AACF,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;AACJ,CAAA,CAAA,CAAA;;ACnCA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA;;EAEA,CAAMiB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAqB,CAAA;EAyB/C,CAASC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOA,CAACC,CAAAA,CAAAA,CAAG,CAAE,CAAA,CAAA;GACpB,CAAA,CAAA,CAAA,CAAA,CAAIC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGnF,CAAC,CAACkF,GAAG,CAAC,CAACE,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAA;AAChC,CAAA,CAAA,CAAA,CAAA,OAAOD,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC5C,IAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAC,CAAA;EAC/B,CAAA;AAEqB0C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAACD,CAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;;ACnC9ChE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,EAAE,CAAA;AACP2B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,EAAE,CAAA;AACb6B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,EAAE,CAAA;AACZI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgB,CAAE,CAAA,CAAA;;"} \ No newline at end of file diff --git a/assets/js/dist/commons.min.js.map b/assets/js/dist/commons.min.js.map new file mode 100644 index 00000000..3786fde7 --- /dev/null +++ b/assets/js/dist/commons.min.js.map @@ -0,0 +1 @@ +{"version":3,"file":"commons.min.js","sources":["../../../_javascript/modules/components/back-to-top.js","../../../_javascript/modules/components/tooltip-loader.js","../../../_javascript/modules/layouts/basic.js","../../../_javascript/modules/components/mode-watcher.js","../../../_javascript/modules/components/sidebar.js","../../../_javascript/modules/layouts/sidebar.js","../../../_javascript/modules/components/search-display.js","../../../_javascript/modules/layouts/topbar.js","../../../_javascript/commons.js"],"sourcesContent":["/**\n * Reference: https://bootsnipp.com/snippets/featured/link-to-top-page\n */\n\nexport function back2top() {\n const $window = $(window);\n const $btn = $('#back-to-top');\n\n $window.on('scroll', () => {\n if ($window.scrollTop() > 50) {\n $btn.fadeIn();\n } else {\n $btn.fadeOut();\n }\n });\n\n $btn.on('click', () => {\n $window.scrollTop(0);\n });\n}\n","/**\n * Initial Bootstrap Tooltip.\n */\nexport function loadTooptip() {\n const tooltipTriggerList = document.querySelectorAll(\n '[data-bs-toggle=\"tooltip\"]'\n );\n\n [...tooltipTriggerList].map(\n (tooltipTriggerEl) => new bootstrap.Tooltip(tooltipTriggerEl)\n );\n}\n","import { back2top } from '../components/back-to-top';\nimport { loadTooptip } from '../components/tooltip-loader';\n\nexport function basic() {\n back2top();\n loadTooptip();\n}\n","/**\n * Add listener for theme mode toggle\n */\nconst $toggleElem = $('.mode-toggle');\n\nexport function modeWatcher() {\n if ($toggleElem.length === 0) {\n return;\n }\n\n $toggleElem.off().on('click', (e) => {\n const $target = $(e.target);\n let $btn =\n $target.prop('tagName') === 'button'.toUpperCase()\n ? $target\n : $target.parent();\n\n modeToggle.flipMode(); // modeToggle: `_includes/mode-toggle.html`\n $btn.trigger('blur'); // remove the clicking outline\n });\n}\n","/**\n * Expand or close the sidebar in mobile screens.\n */\n\nconst $body = $('body');\nconst ATTR_DISPLAY = 'sidebar-display';\n\nclass SidebarUtil {\n static isExpanded = false;\n\n static toggle() {\n if (SidebarUtil.isExpanded === false) {\n $body.attr(ATTR_DISPLAY, '');\n } else {\n $body.removeAttr(ATTR_DISPLAY);\n }\n\n SidebarUtil.isExpanded = !SidebarUtil.isExpanded;\n }\n}\n\nexport function sidebarExpand() {\n $('#sidebar-trigger').on('click', SidebarUtil.toggle);\n $('#mask').on('click', SidebarUtil.toggle);\n}\n","import { modeWatcher } from '../components/mode-watcher';\nimport { sidebarExpand } from '../components/sidebar';\n\nexport function initSidebar() {\n modeWatcher();\n sidebarExpand();\n}\n","/**\n * This script make #search-result-wrapper switch to unloaded or shown automatically.\n */\nconst $btnSbTrigger = $('#sidebar-trigger');\nconst $btnSearchTrigger = $('#search-trigger');\nconst $btnCancel = $('#search-cancel');\nconst $content = $('#main>.row');\nconst $topbarTitle = $('#topbar-title');\nconst $searchWrapper = $('#search-wrapper');\nconst $resultWrapper = $('#search-result-wrapper');\nconst $results = $('#search-results');\nconst $input = $('#search-input');\nconst $hints = $('#search-hints');\nconst $viewport = $('html,body');\n\n// class names\nconst C_LOADED = 'loaded';\nconst C_UNLOADED = 'unloaded';\nconst C_FOCUS = 'input-focus';\nconst C_FLEX = 'd-flex';\n\nclass ScrollBlocker {\n static offset = 0;\n static resultVisible = false;\n\n static on() {\n ScrollBlocker.offset = window.scrollY;\n $viewport.scrollTop(0);\n }\n\n static off() {\n $viewport.scrollTop(ScrollBlocker.offset);\n }\n}\n\n/*--- Actions in mobile screens (Sidebar hidden) ---*/\nclass MobileSearchBar {\n static on() {\n $btnSbTrigger.addClass(C_UNLOADED);\n $topbarTitle.addClass(C_UNLOADED);\n $btnSearchTrigger.addClass(C_UNLOADED);\n $searchWrapper.addClass(C_FLEX);\n $btnCancel.addClass(C_LOADED);\n }\n\n static off() {\n $btnCancel.removeClass(C_LOADED);\n $searchWrapper.removeClass(C_FLEX);\n $btnSbTrigger.removeClass(C_UNLOADED);\n $topbarTitle.removeClass(C_UNLOADED);\n $btnSearchTrigger.removeClass(C_UNLOADED);\n }\n}\n\nclass ResultSwitch {\n static on() {\n if (!ScrollBlocker.resultVisible) {\n // the block method must be called before $(#main) unloaded.\n ScrollBlocker.on();\n $resultWrapper.removeClass(C_UNLOADED);\n $content.addClass(C_UNLOADED);\n ScrollBlocker.resultVisible = true;\n }\n }\n\n static off() {\n if (ScrollBlocker.resultVisible) {\n $results.empty();\n if ($hints.hasClass(C_UNLOADED)) {\n $hints.removeClass(C_UNLOADED);\n }\n $resultWrapper.addClass(C_UNLOADED);\n $content.removeClass(C_UNLOADED);\n\n // now the release method must be called after $(#main) display\n ScrollBlocker.off();\n\n $input.val('');\n ScrollBlocker.resultVisible = false;\n }\n }\n}\n\nfunction isMobileView() {\n return $btnCancel.hasClass(C_LOADED);\n}\n\nexport function displaySearch() {\n $btnSearchTrigger.on('click', function () {\n MobileSearchBar.on();\n ResultSwitch.on();\n $input.trigger('focus');\n });\n\n $btnCancel.on('click', function () {\n MobileSearchBar.off();\n ResultSwitch.off();\n });\n\n $input.on('focus', function () {\n $searchWrapper.addClass(C_FOCUS);\n });\n\n $input.on('focusout', function () {\n $searchWrapper.removeClass(C_FOCUS);\n });\n\n $input.on('input', () => {\n if ($input.val() === '') {\n if (isMobileView()) {\n $hints.removeClass(C_UNLOADED);\n } else {\n ResultSwitch.off();\n }\n } else {\n ResultSwitch.on();\n if (isMobileView()) {\n $hints.addClass(C_UNLOADED);\n }\n }\n });\n}\n","import { displaySearch } from '../components/search-display';\n\nexport function initTopbar() {\n displaySearch();\n}\n","import { basic, initSidebar, initTopbar } from './modules/layouts';\n\nbasic();\ninitSidebar();\ninitTopbar();\n"],"names":["back2top","$window","$","window","$btn","on","scrollTop","fadeIn","fadeOut","loadTooptip","tooltipTriggerList","document","querySelectorAll","_toConsumableArray","map","tooltipTriggerEl","bootstrap","Tooltip","basic","$toggleElem","modeWatcher","length","off","e","$target","target","prop","toUpperCase","parent","modeToggle","flipMode","trigger","$body","ATTR_DISPLAY","SidebarUtil","_classCallCheck","_createClass","key","value","toggle","isExpanded","attr","removeAttr","_defineProperty","sidebarExpand","initSidebar","$btnSbTrigger","$btnSearchTrigger","$btnCancel","$content","$topbarTitle","$searchWrapper","$resultWrapper","$results","$input","$hints","$viewport","C_LOADED","C_UNLOADED","C_FOCUS","C_FLEX","ScrollBlocker","offset","scrollY","MobileSearchBar","addClass","removeClass","ResultSwitch","resultVisible","empty","hasClass","val","isMobileView","displaySearch","initTopbar"],"mappings":"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"} \ No newline at end of file diff --git a/assets/js/dist/home.min.js b/assets/js/dist/home.min.js new file mode 100644 index 00000000..9b077110 --- /dev/null +++ b/assets/js/dist/home.min.js @@ -0,0 +1,422 @@ +/*! + * Chirpy v6.1.0 (https://github.com/cotes2020/jekyll-theme-chirpy/) + * © 2019 Cotes Chung + * MIT Licensed + */ + +(function () { + 'use strict'; + + /** + * Reference: https://bootsnipp.com/snippets/featured/link-to-top-page + */ + + function back2top() { + var $window = $(window); + var $btn = $('#back-to-top'); + $window.on('scroll', function () { + if ($window.scrollTop() > 50) { + $btn.fadeIn(); + } else { + $btn.fadeOut(); + } + }); + $btn.on('click', function () { + $window.scrollTop(0); + }); + } + + function _classCallCheck(instance, Constructor) { + if (!(instance instanceof Constructor)) { + throw new TypeError("Cannot call a class as a function"); + } + } + function _defineProperties(target, props) { + for (var i = 0; i < props.length; i++) { + var descriptor = props[i]; + descriptor.enumerable = descriptor.enumerable || false; + descriptor.configurable = true; + if ("value" in descriptor) descriptor.writable = true; + Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); + } + } + function _createClass(Constructor, protoProps, staticProps) { + if (protoProps) _defineProperties(Constructor.prototype, protoProps); + if (staticProps) _defineProperties(Constructor, staticProps); + Object.defineProperty(Constructor, "prototype", { + writable: false + }); + return Constructor; + } + function _defineProperty(obj, key, value) { + key = _toPropertyKey(key); + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + return obj; + } + function _toConsumableArray(arr) { + return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); + } + function _arrayWithoutHoles(arr) { + if (Array.isArray(arr)) return _arrayLikeToArray(arr); + } + function _iterableToArray(iter) { + if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); + } + function _unsupportedIterableToArray(o, minLen) { + if (!o) return; + if (typeof o === "string") return _arrayLikeToArray(o, minLen); + var n = Object.prototype.toString.call(o).slice(8, -1); + if (n === "Object" && o.constructor) n = o.constructor.name; + if (n === "Map" || n === "Set") return Array.from(o); + if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); + } + function _arrayLikeToArray(arr, len) { + if (len == null || len > arr.length) len = arr.length; + for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; + return arr2; + } + function _nonIterableSpread() { + throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); + } + function _toPrimitive(input, hint) { + if (typeof input !== "object" || input === null) return input; + var prim = input[Symbol.toPrimitive]; + if (prim !== undefined) { + var res = prim.call(input, hint || "default"); + if (typeof res !== "object") return res; + throw new TypeError("@@toPrimitive must return a primitive value."); + } + return (hint === "string" ? String : Number)(input); + } + function _toPropertyKey(arg) { + var key = _toPrimitive(arg, "string"); + return typeof key === "symbol" ? key : String(key); + } + + /** + * Initial Bootstrap Tooltip. + */ + function loadTooptip() { + var tooltipTriggerList = document.querySelectorAll('[data-bs-toggle="tooltip"]'); + _toConsumableArray(tooltipTriggerList).map(function (tooltipTriggerEl) { + return new bootstrap.Tooltip(tooltipTriggerEl); + }); + } + + function basic() { + back2top(); + loadTooptip(); + } + + /** + * Add listener for theme mode toggle + */ + var $toggleElem = $('.mode-toggle'); + function modeWatcher() { + if ($toggleElem.length === 0) { + return; + } + $toggleElem.off().on('click', function (e) { + var $target = $(e.target); + var $btn = $target.prop('tagName') === 'button'.toUpperCase() ? $target : $target.parent(); + modeToggle.flipMode(); // modeToggle: `_includes/mode-toggle.html` + $btn.trigger('blur'); // remove the clicking outline + }); + } + + /** + * Expand or close the sidebar in mobile screens. + */ + + var $body = $('body'); + var ATTR_DISPLAY = 'sidebar-display'; + var SidebarUtil = /*#__PURE__*/function () { + function SidebarUtil() { + _classCallCheck(this, SidebarUtil); + } + _createClass(SidebarUtil, null, [{ + key: "toggle", + value: function toggle() { + if (SidebarUtil.isExpanded === false) { + $body.attr(ATTR_DISPLAY, ''); + } else { + $body.removeAttr(ATTR_DISPLAY); + } + SidebarUtil.isExpanded = !SidebarUtil.isExpanded; + } + }]); + return SidebarUtil; + }(); + _defineProperty(SidebarUtil, "isExpanded", false); + function sidebarExpand() { + $('#sidebar-trigger').on('click', SidebarUtil.toggle); + $('#mask').on('click', SidebarUtil.toggle); + } + + function initSidebar() { + modeWatcher(); + sidebarExpand(); + } + + /** + * This script make #search-result-wrapper switch to unloaded or shown automatically. + */ + var $btnSbTrigger = $('#sidebar-trigger'); + var $btnSearchTrigger = $('#search-trigger'); + var $btnCancel = $('#search-cancel'); + var $content = $('#main>.row'); + var $topbarTitle = $('#topbar-title'); + var $searchWrapper = $('#search-wrapper'); + var $resultWrapper = $('#search-result-wrapper'); + var $results = $('#search-results'); + var $input = $('#search-input'); + var $hints = $('#search-hints'); + var $viewport = $('html,body'); + + // class names + var C_LOADED = 'loaded'; + var C_UNLOADED = 'unloaded'; + var C_FOCUS = 'input-focus'; + var C_FLEX = 'd-flex'; + var ScrollBlocker = /*#__PURE__*/function () { + function ScrollBlocker() { + _classCallCheck(this, ScrollBlocker); + } + _createClass(ScrollBlocker, null, [{ + key: "on", + value: function on() { + ScrollBlocker.offset = window.scrollY; + $viewport.scrollTop(0); + } + }, { + key: "off", + value: function off() { + $viewport.scrollTop(ScrollBlocker.offset); + } + }]); + return ScrollBlocker; + }(); + /*--- Actions in mobile screens (Sidebar hidden) ---*/ + _defineProperty(ScrollBlocker, "offset", 0); + _defineProperty(ScrollBlocker, "resultVisible", false); + var MobileSearchBar = /*#__PURE__*/function () { + function MobileSearchBar() { + _classCallCheck(this, MobileSearchBar); + } + _createClass(MobileSearchBar, null, [{ + key: "on", + value: function on() { + $btnSbTrigger.addClass(C_UNLOADED); + $topbarTitle.addClass(C_UNLOADED); + $btnSearchTrigger.addClass(C_UNLOADED); + $searchWrapper.addClass(C_FLEX); + $btnCancel.addClass(C_LOADED); + } + }, { + key: "off", + value: function off() { + $btnCancel.removeClass(C_LOADED); + $searchWrapper.removeClass(C_FLEX); + $btnSbTrigger.removeClass(C_UNLOADED); + $topbarTitle.removeClass(C_UNLOADED); + $btnSearchTrigger.removeClass(C_UNLOADED); + } + }]); + return MobileSearchBar; + }(); + var ResultSwitch = /*#__PURE__*/function () { + function ResultSwitch() { + _classCallCheck(this, ResultSwitch); + } + _createClass(ResultSwitch, null, [{ + key: "on", + value: function on() { + if (!ScrollBlocker.resultVisible) { + // the block method must be called before $(#main) unloaded. + ScrollBlocker.on(); + $resultWrapper.removeClass(C_UNLOADED); + $content.addClass(C_UNLOADED); + ScrollBlocker.resultVisible = true; + } + } + }, { + key: "off", + value: function off() { + if (ScrollBlocker.resultVisible) { + $results.empty(); + if ($hints.hasClass(C_UNLOADED)) { + $hints.removeClass(C_UNLOADED); + } + $resultWrapper.addClass(C_UNLOADED); + $content.removeClass(C_UNLOADED); + + // now the release method must be called after $(#main) display + ScrollBlocker.off(); + $input.val(''); + ScrollBlocker.resultVisible = false; + } + } + }]); + return ResultSwitch; + }(); + function isMobileView() { + return $btnCancel.hasClass(C_LOADED); + } + function displaySearch() { + $btnSearchTrigger.on('click', function () { + MobileSearchBar.on(); + ResultSwitch.on(); + $input.trigger('focus'); + }); + $btnCancel.on('click', function () { + MobileSearchBar.off(); + ResultSwitch.off(); + }); + $input.on('focus', function () { + $searchWrapper.addClass(C_FOCUS); + }); + $input.on('focusout', function () { + $searchWrapper.removeClass(C_FOCUS); + }); + $input.on('input', function () { + if ($input.val() === '') { + if (isMobileView()) { + $hints.removeClass(C_UNLOADED); + } else { + ResultSwitch.off(); + } + } else { + ResultSwitch.on(); + if (isMobileView()) { + $hints.addClass(C_UNLOADED); + } + } + }); + } + + function initTopbar() { + displaySearch(); + } + + /** + * Tab 'Categories' expand/close effect. + */ + $('.collapse'); + + /** + * Clipboard functions + * + * Dependencies: + * - popper.js (https://github.com/popperjs/popper-core) + * - clipboard.js (https://github.com/zenorocha/clipboard.js) + */ + + var clipboardSelector = '.code-header>button'; + function getIcon(btn) { + var iconNode = $(btn).children(); + return iconNode.attr('class'); + } + getIcon(clipboardSelector); + + /** + * Set up image lazy-load + */ + + function stopShimmer($node) { + $node.parent().removeClass('shimmer'); + } + function imgLazy() { + var $images = $('#core-wrapper img[data-src]'); + if ($images.length <= 0) { + return; + } + + /* Stop shimmer when image loaded */ + document.addEventListener('lazyloaded', function (e) { + stopShimmer($(e.target)); + }); + + /* Stop shimmer from cached images */ + $images.each(function () { + if ($(this).hasClass('ls-is-cached')) { + stopShimmer($(this)); + } + }); + } + + /** + * Update month/day to locale datetime + * + * Requirement: + */ + /* A tool for locale datetime */ + var LocaleHelper = /*#__PURE__*/function () { + function LocaleHelper() { + _classCallCheck(this, LocaleHelper); + } + _createClass(LocaleHelper, null, [{ + key: "attrTimestamp", + get: function get() { + return 'data-ts'; + } + }, { + key: "attrDateFormat", + get: function get() { + return 'data-df'; + } + }, { + key: "locale", + get: function get() { + return $('html').attr('lang').substring(0, 2); + } + }, { + key: "getTimestamp", + value: function getTimestamp(elem) { + return Number(elem.attr(LocaleHelper.attrTimestamp)); // unix timestamp + } + }, { + key: "getDateFormat", + value: function getDateFormat(elem) { + return elem.attr(LocaleHelper.attrDateFormat); + } + }]); + return LocaleHelper; + }(); + function initLocaleDatetime() { + dayjs.locale(LocaleHelper.locale); + dayjs.extend(window.dayjs_plugin_localizedFormat); + $("[".concat(LocaleHelper.attrTimestamp, "]")).each(function () { + var date = dayjs.unix(LocaleHelper.getTimestamp($(this))); + var text = date.format(LocaleHelper.getDateFormat($(this))); + $(this).text(text); + $(this).removeAttr(LocaleHelper.attrTimestamp); + $(this).removeAttr(LocaleHelper.attrDateFormat); + + // setup tooltips + var tooltip = $(this).attr('data-bs-toggle'); + if (typeof tooltip === 'undefined' || tooltip !== 'tooltip') { + return; + } + var tooltipText = date.format('llll'); // see: https://day.js.org/docs/en/display/format#list-of-localized-formats + $(this).attr('data-bs-title', tooltipText); + new bootstrap.Tooltip($(this)); + }); + } + + basic(); + initSidebar(); + initTopbar(); + initLocaleDatetime(); + imgLazy(); + +})(); +//# sourceMappingURL=home.min.js.map diff --git a/assets/js/dist/home.min.js.map b/assets/js/dist/home.min.js.map new file mode 100644 index 00000000..ee6bbee8 --- /dev/null +++ b/assets/js/dist/home.min.js.map @@ -0,0 +1 @@ +{"version":3,"file":"home.min.js","sources":["../../../_javascript/modules/components/back-to-top.js","../../../_javascript/modules/components/tooltip-loader.js","../../../_javascript/modules/layouts/basic.js","../../../_javascript/modules/components/mode-watcher.js","../../../_javascript/modules/components/sidebar.js","../../../_javascript/modules/layouts/sidebar.js","../../../_javascript/modules/components/search-display.js","../../../_javascript/modules/layouts/topbar.js","../../../_javascript/modules/components/category-collapse.js","../../../_javascript/modules/components/clipboard.js","../../../_javascript/modules/components/img-lazyload.js","../../../_javascript/modules/components/locale-datetime.js","../../../_javascript/home.js"],"sourcesContent":["/**\n * Reference: https://bootsnipp.com/snippets/featured/link-to-top-page\n */\n\nexport function back2top() {\n const $window = $(window);\n const $btn = $('#back-to-top');\n\n $window.on('scroll', () => {\n if ($window.scrollTop() > 50) {\n $btn.fadeIn();\n } else {\n $btn.fadeOut();\n }\n });\n\n $btn.on('click', () => {\n $window.scrollTop(0);\n });\n}\n","/**\n * Initial Bootstrap Tooltip.\n */\nexport function loadTooptip() {\n const tooltipTriggerList = document.querySelectorAll(\n '[data-bs-toggle=\"tooltip\"]'\n );\n\n [...tooltipTriggerList].map(\n (tooltipTriggerEl) => new bootstrap.Tooltip(tooltipTriggerEl)\n );\n}\n","import { back2top } from '../components/back-to-top';\nimport { loadTooptip } from '../components/tooltip-loader';\n\nexport function basic() {\n back2top();\n loadTooptip();\n}\n","/**\n * Add listener for theme mode toggle\n */\nconst $toggleElem = $('.mode-toggle');\n\nexport function modeWatcher() {\n if ($toggleElem.length === 0) {\n return;\n }\n\n $toggleElem.off().on('click', (e) => {\n const $target = $(e.target);\n let $btn =\n $target.prop('tagName') === 'button'.toUpperCase()\n ? $target\n : $target.parent();\n\n modeToggle.flipMode(); // modeToggle: `_includes/mode-toggle.html`\n $btn.trigger('blur'); // remove the clicking outline\n });\n}\n","/**\n * Expand or close the sidebar in mobile screens.\n */\n\nconst $body = $('body');\nconst ATTR_DISPLAY = 'sidebar-display';\n\nclass SidebarUtil {\n static isExpanded = false;\n\n static toggle() {\n if (SidebarUtil.isExpanded === false) {\n $body.attr(ATTR_DISPLAY, '');\n } else {\n $body.removeAttr(ATTR_DISPLAY);\n }\n\n SidebarUtil.isExpanded = !SidebarUtil.isExpanded;\n }\n}\n\nexport function sidebarExpand() {\n $('#sidebar-trigger').on('click', SidebarUtil.toggle);\n $('#mask').on('click', SidebarUtil.toggle);\n}\n","import { modeWatcher } from '../components/mode-watcher';\nimport { sidebarExpand } from '../components/sidebar';\n\nexport function initSidebar() {\n modeWatcher();\n sidebarExpand();\n}\n","/**\n * This script make #search-result-wrapper switch to unloaded or shown automatically.\n */\nconst $btnSbTrigger = $('#sidebar-trigger');\nconst $btnSearchTrigger = $('#search-trigger');\nconst $btnCancel = $('#search-cancel');\nconst $content = $('#main>.row');\nconst $topbarTitle = $('#topbar-title');\nconst $searchWrapper = $('#search-wrapper');\nconst $resultWrapper = $('#search-result-wrapper');\nconst $results = $('#search-results');\nconst $input = $('#search-input');\nconst $hints = $('#search-hints');\nconst $viewport = $('html,body');\n\n// class names\nconst C_LOADED = 'loaded';\nconst C_UNLOADED = 'unloaded';\nconst C_FOCUS = 'input-focus';\nconst C_FLEX = 'd-flex';\n\nclass ScrollBlocker {\n static offset = 0;\n static resultVisible = false;\n\n static on() {\n ScrollBlocker.offset = window.scrollY;\n $viewport.scrollTop(0);\n }\n\n static off() {\n $viewport.scrollTop(ScrollBlocker.offset);\n }\n}\n\n/*--- Actions in mobile screens (Sidebar hidden) ---*/\nclass MobileSearchBar {\n static on() {\n $btnSbTrigger.addClass(C_UNLOADED);\n $topbarTitle.addClass(C_UNLOADED);\n $btnSearchTrigger.addClass(C_UNLOADED);\n $searchWrapper.addClass(C_FLEX);\n $btnCancel.addClass(C_LOADED);\n }\n\n static off() {\n $btnCancel.removeClass(C_LOADED);\n $searchWrapper.removeClass(C_FLEX);\n $btnSbTrigger.removeClass(C_UNLOADED);\n $topbarTitle.removeClass(C_UNLOADED);\n $btnSearchTrigger.removeClass(C_UNLOADED);\n }\n}\n\nclass ResultSwitch {\n static on() {\n if (!ScrollBlocker.resultVisible) {\n // the block method must be called before $(#main) unloaded.\n ScrollBlocker.on();\n $resultWrapper.removeClass(C_UNLOADED);\n $content.addClass(C_UNLOADED);\n ScrollBlocker.resultVisible = true;\n }\n }\n\n static off() {\n if (ScrollBlocker.resultVisible) {\n $results.empty();\n if ($hints.hasClass(C_UNLOADED)) {\n $hints.removeClass(C_UNLOADED);\n }\n $resultWrapper.addClass(C_UNLOADED);\n $content.removeClass(C_UNLOADED);\n\n // now the release method must be called after $(#main) display\n ScrollBlocker.off();\n\n $input.val('');\n ScrollBlocker.resultVisible = false;\n }\n }\n}\n\nfunction isMobileView() {\n return $btnCancel.hasClass(C_LOADED);\n}\n\nexport function displaySearch() {\n $btnSearchTrigger.on('click', function () {\n MobileSearchBar.on();\n ResultSwitch.on();\n $input.trigger('focus');\n });\n\n $btnCancel.on('click', function () {\n MobileSearchBar.off();\n ResultSwitch.off();\n });\n\n $input.on('focus', function () {\n $searchWrapper.addClass(C_FOCUS);\n });\n\n $input.on('focusout', function () {\n $searchWrapper.removeClass(C_FOCUS);\n });\n\n $input.on('input', () => {\n if ($input.val() === '') {\n if (isMobileView()) {\n $hints.removeClass(C_UNLOADED);\n } else {\n ResultSwitch.off();\n }\n } else {\n ResultSwitch.on();\n if (isMobileView()) {\n $hints.addClass(C_UNLOADED);\n }\n }\n });\n}\n","import { displaySearch } from '../components/search-display';\n\nexport function initTopbar() {\n displaySearch();\n}\n","/**\n * Tab 'Categories' expand/close effect.\n */\nconst childPrefix = 'l_';\nconst parentPrefix = 'h_';\nconst collapse = $('.collapse');\n\nexport function categoryCollapse() {\n /* close up top-category */\n collapse.on('hide.bs.collapse', function () {\n /* Bootstrap collapse events. */ const parentId =\n parentPrefix + $(this).attr('id').substring(childPrefix.length);\n if (parentId) {\n $(`#${parentId} .bi.bi-folder2-open`).attr(\n 'class',\n 'bi bi-folder'\n );\n $(`#${parentId} i.bi`).addClass('rotate');\n $(`#${parentId}`).removeClass('hide-border-bottom');\n }\n });\n\n /* expand the top category */\n collapse.on('show.bs.collapse', function () {\n const parentId =\n parentPrefix + $(this).attr('id').substring(childPrefix.length);\n if (parentId) {\n $(`#${parentId} .bi.bi-folder`).attr(\n 'class',\n 'bi bi-folder2-open'\n );\n $(`#${parentId} i.bi`).removeClass('rotate');\n $(`#${parentId}`).addClass('hide-border-bottom');\n }\n });\n}\n","/**\n * Clipboard functions\n *\n * Dependencies:\n * - popper.js (https://github.com/popperjs/popper-core)\n * - clipboard.js (https://github.com/zenorocha/clipboard.js)\n */\n\nconst clipboardSelector = '.code-header>button';\nconst ICON_SUCCESS = 'bi bi-check';\nconst ATTR_TIMEOUT = 'timeout';\nconst ATTR_TITLE_SUCCEED = 'data-title-succeed';\nconst ATTR_TITLE_ORIGIN = 'data-bs-original-title';\nconst TIMEOUT = 2000; // in milliseconds\n\nfunction isLocked(node) {\n if ($(node)[0].hasAttribute(ATTR_TIMEOUT)) {\n let timeout = $(node).attr(ATTR_TIMEOUT);\n if (Number(timeout) > Date.now()) {\n return true;\n }\n }\n return false;\n}\n\nfunction lock(node) {\n $(node).attr(ATTR_TIMEOUT, Date.now() + TIMEOUT);\n}\n\nfunction unlock(node) {\n $(node).removeAttr(ATTR_TIMEOUT);\n}\n\nfunction getIcon(btn) {\n let iconNode = $(btn).children();\n return iconNode.attr('class');\n}\n\nconst ICON_DEFAULT = getIcon(clipboardSelector);\n\nfunction showTooltip(btn) {\n const succeedTitle = $(btn).attr(ATTR_TITLE_SUCCEED);\n $(btn).attr(ATTR_TITLE_ORIGIN, succeedTitle).tooltip('show');\n}\n\nfunction hideTooltip(btn) {\n $(btn).tooltip('hide').removeAttr(ATTR_TITLE_ORIGIN);\n}\n\nfunction setSuccessIcon(btn) {\n let btnNode = $(btn);\n let iconNode = btnNode.children();\n iconNode.attr('class', ICON_SUCCESS);\n}\n\nfunction resumeIcon(btn) {\n let btnNode = $(btn);\n let iconNode = btnNode.children();\n iconNode.attr('class', ICON_DEFAULT);\n}\n\nexport function initClipboard() {\n // Initial the clipboard.js object\n if ($(clipboardSelector).length) {\n const clipboard = new ClipboardJS(clipboardSelector, {\n target(trigger) {\n let codeBlock = trigger.parentNode.nextElementSibling;\n return codeBlock.querySelector('code .rouge-code');\n }\n });\n\n const clipboardList = document.querySelectorAll(clipboardSelector);\n [...clipboardList].map(\n (elem) =>\n new bootstrap.Tooltip(elem, {\n placement: 'left'\n })\n );\n\n clipboard.on('success', (e) => {\n e.clearSelection();\n\n const trigger = e.trigger;\n if (isLocked(trigger)) {\n return;\n }\n\n setSuccessIcon(trigger);\n showTooltip(trigger);\n lock(trigger);\n\n setTimeout(() => {\n hideTooltip(trigger);\n resumeIcon(trigger);\n unlock(trigger);\n }, TIMEOUT);\n });\n }\n\n /* --- Post link sharing --- */\n\n const btnCopyLink = $('#copy-link');\n\n btnCopyLink.on('click', (e) => {\n let target = $(e.target);\n\n if (isLocked(target)) {\n return;\n }\n\n // Copy URL to clipboard\n navigator.clipboard.writeText(window.location.href).then(() => {\n const defaultTitle = target.attr(ATTR_TITLE_ORIGIN);\n const succeedTitle = target.attr(ATTR_TITLE_SUCCEED);\n // Switch tooltip title\n target.attr(ATTR_TITLE_ORIGIN, succeedTitle).tooltip('show');\n lock(target);\n\n setTimeout(() => {\n target.attr(ATTR_TITLE_ORIGIN, defaultTitle);\n unlock(target);\n }, TIMEOUT);\n });\n });\n\n btnCopyLink.on('mouseleave', function (e) {\n const target = $(e.target);\n target.tooltip('hide');\n console.log('mouse leave...');\n });\n}\n","/**\n * Set up image lazy-load\n */\n\nfunction stopShimmer($node) {\n $node.parent().removeClass('shimmer');\n}\n\nexport function imgLazy() {\n const $images = $('#core-wrapper img[data-src]');\n\n if ($images.length <= 0) {\n return;\n }\n\n /* Stop shimmer when image loaded */\n document.addEventListener('lazyloaded', function (e) {\n stopShimmer($(e.target));\n });\n\n /* Stop shimmer from cached images */\n $images.each(function () {\n if ($(this).hasClass('ls-is-cached')) {\n stopShimmer($(this));\n }\n });\n}\n","/**\n * Update month/day to locale datetime\n *\n * Requirement: \n */\n\n/* A tool for locale datetime */\nclass LocaleHelper {\n static get attrTimestamp() {\n return 'data-ts';\n }\n\n static get attrDateFormat() {\n return 'data-df';\n }\n\n static get locale() {\n return $('html').attr('lang').substring(0, 2);\n }\n\n static getTimestamp(elem) {\n return Number(elem.attr(LocaleHelper.attrTimestamp)); // unix timestamp\n }\n\n static getDateFormat(elem) {\n return elem.attr(LocaleHelper.attrDateFormat);\n }\n}\n\nexport function initLocaleDatetime() {\n dayjs.locale(LocaleHelper.locale);\n dayjs.extend(window.dayjs_plugin_localizedFormat);\n\n $(`[${LocaleHelper.attrTimestamp}]`).each(function () {\n const date = dayjs.unix(LocaleHelper.getTimestamp($(this)));\n const text = date.format(LocaleHelper.getDateFormat($(this)));\n $(this).text(text);\n $(this).removeAttr(LocaleHelper.attrTimestamp);\n $(this).removeAttr(LocaleHelper.attrDateFormat);\n\n // setup tooltips\n const tooltip = $(this).attr('data-bs-toggle');\n if (typeof tooltip === 'undefined' || tooltip !== 'tooltip') {\n return;\n }\n\n const tooltipText = date.format('llll'); // see: https://day.js.org/docs/en/display/format#list-of-localized-formats\n $(this).attr('data-bs-title', tooltipText);\n new bootstrap.Tooltip($(this));\n });\n}\n","import { basic, initSidebar, initTopbar } from './modules/layouts';\nimport { initLocaleDatetime, imgLazy } from './modules/plugins';\n\nbasic();\ninitSidebar();\ninitTopbar();\ninitLocaleDatetime();\nimgLazy();\n"],"names":["back2top","$window","$","window","$btn","on","scrollTop","fadeIn","fadeOut","loadTooptip","tooltipTriggerList","document","querySelectorAll","_toConsumableArray","map","tooltipTriggerEl","bootstrap","Tooltip","basic","$toggleElem","modeWatcher","length","off","e","$target","target","prop","toUpperCase","parent","modeToggle","flipMode","trigger","$body","ATTR_DISPLAY","SidebarUtil","_classCallCheck","_createClass","key","value","toggle","isExpanded","attr","removeAttr","_defineProperty","sidebarExpand","initSidebar","$btnSbTrigger","$btnSearchTrigger","$btnCancel","$content","$topbarTitle","$searchWrapper","$resultWrapper","$results","$input","$hints","$viewport","C_LOADED","C_UNLOADED","C_FOCUS","C_FLEX","ScrollBlocker","offset","scrollY","MobileSearchBar","addClass","removeClass","ResultSwitch","resultVisible","empty","hasClass","val","isMobileView","displaySearch","initTopbar","clipboardSelector","getIcon","btn","iconNode","children","stopShimmer","$node","imgLazy","$images","addEventListener","each","LocaleHelper","get","substring","getTimestamp","elem","Number","attrTimestamp","getDateFormat","attrDateFormat","initLocaleDatetime","dayjs","locale","extend","dayjs_plugin_localizedFormat","concat","date","unix","text","format","tooltip","tooltipText"],"mappings":"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CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,EAAE,CAAA;AACjB,CAAA,CAAA,CAAA;;ACJA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA;AAGiBvE,CAAAA,CAAAA,CAAC,CAAC,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;;ACL9B,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,C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"} \ No newline at end of file diff --git a/assets/js/dist/misc.min.js.map b/assets/js/dist/misc.min.js.map new file mode 100644 index 00000000..e770a7a1 --- /dev/null +++ b/assets/js/dist/misc.min.js.map @@ -0,0 +1 @@ +{"version":3,"file":"misc.min.js","sources":["../../../_javascript/modules/components/back-to-top.js","../../../_javascript/modules/components/tooltip-loader.js","../../../_javascript/modules/layouts/basic.js","../../../_javascript/modules/components/mode-watcher.js","../../../_javascript/modules/components/sidebar.js","../../../_javascript/modules/layouts/sidebar.js","../../../_javascript/modules/components/search-display.js","../../../_javascript/modules/layouts/topbar.js","../../../_javascript/modules/components/category-collapse.js","../../../_javascript/modules/components/clipboard.js","../../../_javascript/modules/components/locale-datetime.js","../../../_javascript/misc.js"],"sourcesContent":["/**\n * Reference: https://bootsnipp.com/snippets/featured/link-to-top-page\n */\n\nexport function back2top() {\n const $window = $(window);\n const $btn = $('#back-to-top');\n\n $window.on('scroll', () => {\n if ($window.scrollTop() > 50) {\n $btn.fadeIn();\n } else {\n $btn.fadeOut();\n }\n });\n\n $btn.on('click', () => {\n $window.scrollTop(0);\n });\n}\n","/**\n * Initial Bootstrap Tooltip.\n */\nexport function loadTooptip() {\n const tooltipTriggerList = document.querySelectorAll(\n '[data-bs-toggle=\"tooltip\"]'\n );\n\n [...tooltipTriggerList].map(\n (tooltipTriggerEl) => new bootstrap.Tooltip(tooltipTriggerEl)\n );\n}\n","import { back2top } from '../components/back-to-top';\nimport { loadTooptip } from '../components/tooltip-loader';\n\nexport function basic() {\n back2top();\n loadTooptip();\n}\n","/**\n * Add listener for theme mode toggle\n */\nconst $toggleElem = $('.mode-toggle');\n\nexport function modeWatcher() {\n if ($toggleElem.length === 0) {\n return;\n }\n\n $toggleElem.off().on('click', (e) => {\n const $target = $(e.target);\n let $btn =\n $target.prop('tagName') === 'button'.toUpperCase()\n ? $target\n : $target.parent();\n\n modeToggle.flipMode(); // modeToggle: `_includes/mode-toggle.html`\n $btn.trigger('blur'); // remove the clicking outline\n });\n}\n","/**\n * Expand or close the sidebar in mobile screens.\n */\n\nconst $body = $('body');\nconst ATTR_DISPLAY = 'sidebar-display';\n\nclass SidebarUtil {\n static isExpanded = false;\n\n static toggle() {\n if (SidebarUtil.isExpanded === false) {\n $body.attr(ATTR_DISPLAY, '');\n } else {\n $body.removeAttr(ATTR_DISPLAY);\n }\n\n SidebarUtil.isExpanded = !SidebarUtil.isExpanded;\n }\n}\n\nexport function sidebarExpand() {\n $('#sidebar-trigger').on('click', SidebarUtil.toggle);\n $('#mask').on('click', SidebarUtil.toggle);\n}\n","import { modeWatcher } from '../components/mode-watcher';\nimport { sidebarExpand } from '../components/sidebar';\n\nexport function initSidebar() {\n modeWatcher();\n sidebarExpand();\n}\n","/**\n * This script make #search-result-wrapper switch to unloaded or shown automatically.\n */\nconst $btnSbTrigger = $('#sidebar-trigger');\nconst $btnSearchTrigger = $('#search-trigger');\nconst $btnCancel = $('#search-cancel');\nconst $content = $('#main>.row');\nconst $topbarTitle = $('#topbar-title');\nconst $searchWrapper = $('#search-wrapper');\nconst $resultWrapper = $('#search-result-wrapper');\nconst $results = $('#search-results');\nconst $input = $('#search-input');\nconst $hints = $('#search-hints');\nconst $viewport = $('html,body');\n\n// class names\nconst C_LOADED = 'loaded';\nconst C_UNLOADED = 'unloaded';\nconst C_FOCUS = 'input-focus';\nconst C_FLEX = 'd-flex';\n\nclass ScrollBlocker {\n static offset = 0;\n static resultVisible = false;\n\n static on() {\n ScrollBlocker.offset = window.scrollY;\n $viewport.scrollTop(0);\n }\n\n static off() {\n $viewport.scrollTop(ScrollBlocker.offset);\n }\n}\n\n/*--- Actions in mobile screens (Sidebar hidden) ---*/\nclass MobileSearchBar {\n static on() {\n $btnSbTrigger.addClass(C_UNLOADED);\n $topbarTitle.addClass(C_UNLOADED);\n $btnSearchTrigger.addClass(C_UNLOADED);\n $searchWrapper.addClass(C_FLEX);\n $btnCancel.addClass(C_LOADED);\n }\n\n static off() {\n $btnCancel.removeClass(C_LOADED);\n $searchWrapper.removeClass(C_FLEX);\n $btnSbTrigger.removeClass(C_UNLOADED);\n $topbarTitle.removeClass(C_UNLOADED);\n $btnSearchTrigger.removeClass(C_UNLOADED);\n }\n}\n\nclass ResultSwitch {\n static on() {\n if (!ScrollBlocker.resultVisible) {\n // the block method must be called before $(#main) unloaded.\n ScrollBlocker.on();\n $resultWrapper.removeClass(C_UNLOADED);\n $content.addClass(C_UNLOADED);\n ScrollBlocker.resultVisible = true;\n }\n }\n\n static off() {\n if (ScrollBlocker.resultVisible) {\n $results.empty();\n if ($hints.hasClass(C_UNLOADED)) {\n $hints.removeClass(C_UNLOADED);\n }\n $resultWrapper.addClass(C_UNLOADED);\n $content.removeClass(C_UNLOADED);\n\n // now the release method must be called after $(#main) display\n ScrollBlocker.off();\n\n $input.val('');\n ScrollBlocker.resultVisible = false;\n }\n }\n}\n\nfunction isMobileView() {\n return $btnCancel.hasClass(C_LOADED);\n}\n\nexport function displaySearch() {\n $btnSearchTrigger.on('click', function () {\n MobileSearchBar.on();\n ResultSwitch.on();\n $input.trigger('focus');\n });\n\n $btnCancel.on('click', function () {\n MobileSearchBar.off();\n ResultSwitch.off();\n });\n\n $input.on('focus', function () {\n $searchWrapper.addClass(C_FOCUS);\n });\n\n $input.on('focusout', function () {\n $searchWrapper.removeClass(C_FOCUS);\n });\n\n $input.on('input', () => {\n if ($input.val() === '') {\n if (isMobileView()) {\n $hints.removeClass(C_UNLOADED);\n } else {\n ResultSwitch.off();\n }\n } else {\n ResultSwitch.on();\n if (isMobileView()) {\n $hints.addClass(C_UNLOADED);\n }\n }\n });\n}\n","import { displaySearch } from '../components/search-display';\n\nexport function initTopbar() {\n displaySearch();\n}\n","/**\n * Tab 'Categories' expand/close effect.\n */\nconst childPrefix = 'l_';\nconst parentPrefix = 'h_';\nconst collapse = $('.collapse');\n\nexport function categoryCollapse() {\n /* close up top-category */\n collapse.on('hide.bs.collapse', function () {\n /* Bootstrap collapse events. */ const parentId =\n parentPrefix + $(this).attr('id').substring(childPrefix.length);\n if (parentId) {\n $(`#${parentId} .bi.bi-folder2-open`).attr(\n 'class',\n 'bi bi-folder'\n );\n $(`#${parentId} i.bi`).addClass('rotate');\n $(`#${parentId}`).removeClass('hide-border-bottom');\n }\n });\n\n /* expand the top category */\n collapse.on('show.bs.collapse', function () {\n const parentId =\n parentPrefix + $(this).attr('id').substring(childPrefix.length);\n if (parentId) {\n $(`#${parentId} .bi.bi-folder`).attr(\n 'class',\n 'bi bi-folder2-open'\n );\n $(`#${parentId} i.bi`).removeClass('rotate');\n $(`#${parentId}`).addClass('hide-border-bottom');\n }\n });\n}\n","/**\n * Clipboard functions\n *\n * Dependencies:\n * - popper.js (https://github.com/popperjs/popper-core)\n * - clipboard.js (https://github.com/zenorocha/clipboard.js)\n */\n\nconst clipboardSelector = '.code-header>button';\nconst ICON_SUCCESS = 'bi bi-check';\nconst ATTR_TIMEOUT = 'timeout';\nconst ATTR_TITLE_SUCCEED = 'data-title-succeed';\nconst ATTR_TITLE_ORIGIN = 'data-bs-original-title';\nconst TIMEOUT = 2000; // in milliseconds\n\nfunction isLocked(node) {\n if ($(node)[0].hasAttribute(ATTR_TIMEOUT)) {\n let timeout = $(node).attr(ATTR_TIMEOUT);\n if (Number(timeout) > Date.now()) {\n return true;\n }\n }\n return false;\n}\n\nfunction lock(node) {\n $(node).attr(ATTR_TIMEOUT, Date.now() + TIMEOUT);\n}\n\nfunction unlock(node) {\n $(node).removeAttr(ATTR_TIMEOUT);\n}\n\nfunction getIcon(btn) {\n let iconNode = $(btn).children();\n return iconNode.attr('class');\n}\n\nconst ICON_DEFAULT = getIcon(clipboardSelector);\n\nfunction showTooltip(btn) {\n const succeedTitle = $(btn).attr(ATTR_TITLE_SUCCEED);\n $(btn).attr(ATTR_TITLE_ORIGIN, succeedTitle).tooltip('show');\n}\n\nfunction hideTooltip(btn) {\n $(btn).tooltip('hide').removeAttr(ATTR_TITLE_ORIGIN);\n}\n\nfunction setSuccessIcon(btn) {\n let btnNode = $(btn);\n let iconNode = btnNode.children();\n iconNode.attr('class', ICON_SUCCESS);\n}\n\nfunction resumeIcon(btn) {\n let btnNode = $(btn);\n let iconNode = btnNode.children();\n iconNode.attr('class', ICON_DEFAULT);\n}\n\nexport function initClipboard() {\n // Initial the clipboard.js object\n if ($(clipboardSelector).length) {\n const clipboard = new ClipboardJS(clipboardSelector, {\n target(trigger) {\n let codeBlock = trigger.parentNode.nextElementSibling;\n return codeBlock.querySelector('code .rouge-code');\n }\n });\n\n const clipboardList = document.querySelectorAll(clipboardSelector);\n [...clipboardList].map(\n (elem) =>\n new bootstrap.Tooltip(elem, {\n placement: 'left'\n })\n );\n\n clipboard.on('success', (e) => {\n e.clearSelection();\n\n const trigger = e.trigger;\n if (isLocked(trigger)) {\n return;\n }\n\n setSuccessIcon(trigger);\n showTooltip(trigger);\n lock(trigger);\n\n setTimeout(() => {\n hideTooltip(trigger);\n resumeIcon(trigger);\n unlock(trigger);\n }, TIMEOUT);\n });\n }\n\n /* --- Post link sharing --- */\n\n const btnCopyLink = $('#copy-link');\n\n btnCopyLink.on('click', (e) => {\n let target = $(e.target);\n\n if (isLocked(target)) {\n return;\n }\n\n // Copy URL to clipboard\n navigator.clipboard.writeText(window.location.href).then(() => {\n const defaultTitle = target.attr(ATTR_TITLE_ORIGIN);\n const succeedTitle = target.attr(ATTR_TITLE_SUCCEED);\n // Switch tooltip title\n target.attr(ATTR_TITLE_ORIGIN, succeedTitle).tooltip('show');\n lock(target);\n\n setTimeout(() => {\n target.attr(ATTR_TITLE_ORIGIN, defaultTitle);\n unlock(target);\n }, TIMEOUT);\n });\n });\n\n btnCopyLink.on('mouseleave', function (e) {\n const target = $(e.target);\n target.tooltip('hide');\n console.log('mouse leave...');\n });\n}\n","/**\n * Update month/day to locale datetime\n *\n * Requirement: \n */\n\n/* A tool for locale datetime */\nclass LocaleHelper {\n static get attrTimestamp() {\n return 'data-ts';\n }\n\n static get attrDateFormat() {\n return 'data-df';\n }\n\n static get locale() {\n return $('html').attr('lang').substring(0, 2);\n }\n\n static getTimestamp(elem) {\n return Number(elem.attr(LocaleHelper.attrTimestamp)); // unix timestamp\n }\n\n static getDateFormat(elem) {\n return elem.attr(LocaleHelper.attrDateFormat);\n }\n}\n\nexport function initLocaleDatetime() {\n dayjs.locale(LocaleHelper.locale);\n dayjs.extend(window.dayjs_plugin_localizedFormat);\n\n $(`[${LocaleHelper.attrTimestamp}]`).each(function () {\n const date = dayjs.unix(LocaleHelper.getTimestamp($(this)));\n const text = date.format(LocaleHelper.getDateFormat($(this)));\n $(this).text(text);\n $(this).removeAttr(LocaleHelper.attrTimestamp);\n $(this).removeAttr(LocaleHelper.attrDateFormat);\n\n // setup tooltips\n const tooltip = $(this).attr('data-bs-toggle');\n if (typeof tooltip === 'undefined' || tooltip !== 'tooltip') {\n return;\n }\n\n const tooltipText = date.format('llll'); // see: https://day.js.org/docs/en/display/format#list-of-localized-formats\n $(this).attr('data-bs-title', tooltipText);\n new bootstrap.Tooltip($(this));\n });\n}\n","import { basic, initSidebar, initTopbar } from './modules/layouts';\nimport { initLocaleDatetime } from './modules/plugins';\n\nbasic();\ninitSidebar();\ninitTopbar();\ninitLocaleDatetime();\n"],"names":["back2top","$window","$","window","$btn","on","scrollTop","fadeIn","fadeOut","loadTooptip","tooltipTriggerList","document","querySelectorAll","_toConsumableArray","map","tooltipTriggerEl","bootstrap","Tooltip","basic","$toggleElem","modeWatcher","length","off","e","$target","target","prop","toUpperCase","parent","modeToggle","flipMode","trigger","$body","ATTR_DISPLAY","SidebarUtil","_classCallCheck","_createClass","key","value","toggle","isExpanded","attr","removeAttr","_defineProperty","sidebarExpand","initSidebar","$btnSbTrigger","$btnSearchTrigger","$btnCancel","$content","$topbarTitle","$searchWrapper","$resultWrapper","$results","$input","$hints","$viewport","C_LOADED","C_UNLOADED","C_FOCUS","C_FLEX","ScrollBlocker","offset","scrollY","MobileSearchBar","addClass","removeClass","ResultSwitch","resultVisible","empty","hasClass","val","isMobileView","displaySearch","initTopbar","clipboardSelector","getIcon","btn","iconNode","children","LocaleHelper","get","substring","getTimestamp","elem","Number","attrTimestamp","getDateFormat","attrDateFormat","initLocaleDatetime","dayjs","locale","extend","dayjs_plugin_localizedFormat","concat","each","date","unix","text","format","tooltip","tooltipText"],"mappings":"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CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,EAAE,CAAA;AACjB,CAAA,CAAA,CAAA;;ACJA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA;AAGiBvE,CAAAA,CAAAA,CAAC,CAAC,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;;ACL9B,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA;;EAEA,CAAMyE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAqB,CAAA;EAyB/C,CAASC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOA,CAACC,CAAAA,CAAAA,CAAG,CAAE,CAAA,CAAA;GACpB,CAAA,CAAA,CAAA,CAAA,CAAIC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG5E,CAAC,CAAC2E,GAAG,CAAC,CAACE,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAA;AAChC,CAAA,CAAA,CAAA,CAAA,OAAOD,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACrC,IAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAC,CAAA;EAC/B,CAAA;AAEqBmC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAACD,CAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;;ACtC9C,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA;AAEA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAA,CACMK,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,gBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,YAAA,CAAA,CAAA,CAAA,CAAA;AAAA7C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,eAAA,MAAA6C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA;AAAA5C,CAAAA,CAAAA,CAAAA,CAAAA,YAAA,CAAA4C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;GAAA3C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;MAAA4C,CAAA,CAAA,CAAA,CAAA,CAChB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAA2B,CAAA,CAAA,CAAA;EACzB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,SAAS,CAAA;EAClB,CAAA,CAAA,CAAA,CAAA,CAAA;AAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;GAAA5C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;MAAA4C,CAAA,CAAA,CAAA,CAAA,CAED,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAA4B,CAAA,CAAA,CAAA;EAC1B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,SAAS,CAAA;EAClB,CAAA,CAAA,CAAA,CAAA,CAAA;AAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;GAAA5C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;MAAA4C,CAAA,CAAA,CAAA,CAAA,CAED,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAoB,CAAA,CAAA,CAAA;AAClB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAO/E,CAAC,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAACuC,CAAI,CAAA,CAAA,CAAA,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAACyC,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAE,CAAA,CAAC,CAAC,CAAA;EAC/C,CAAA,CAAA,CAAA,CAAA,CAAA;AAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;GAAA7C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,KAAA,CAED,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA6C,CAAoBC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IAAI,CAAE,CAAA,CAAA;AACxB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAACD,CAAAA,CAAAA,CAAAA,CAAI,CAAC3C,CAAAA,CAAAA,CAAAA,CAAI,CAACuC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAACM,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CAAC,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACvD,CAAA,CAAA,CAAA,CAAA,CAAA;AAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;GAAAjD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,KAAA,CAED,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAiD,CAAqBH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IAAI,CAAE,CAAA,CAAA;EACzB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOA,IAAI,CAAC3C,CAAAA,CAAAA,CAAAA,CAAI,CAACuC,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACQ,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;EAC/C,CAAA,CAAA,CAAA,CAAA,CAAA;EAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAR,YAAA,CAAA;AAAA,CAAA,CAAA,CAAA,EAAA,CAAA;AAGI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASS,kBAAkBA,CAAG,CAAA,CAAA,CAAA;EACnCC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAACC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAACX,YAAY,CAACW,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAAC,CAAA;EACjCD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAACE,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAACzF,MAAM,CAAC0F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAA4B,CAAC,CAAA;IAEjD3F,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA4F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAKd,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACM,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,GAAA,CAAA,CAAA,CAACS,CAAAA,CAAAA,CAAAA,CAAI,CAAC,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACpD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAMC,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGN,CAAK,CAAA,CAAA,CAAA,CAAA,CAACO,IAAI,CAACjB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAACG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAACjF,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AAC3D,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAMgG,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGF,CAAI,CAAA,CAAA,CAAA,CAACG,MAAM,CAACnB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAACO,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CAACrF,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;EAC7DA,CAAAA,CAAAA,CAAAA,CAAAA,CAAC,CAAC,CAAI,CAAA,CAAA,CAAA,CAAC,CAACgG,CAAI,CAAA,CAAA,CAAA,CAACA,CAAI,CAAA,CAAA,CAAA,CAAC,CAAA;GAClBhG,CAAAA,CAAAA,CAAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAACwC,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACsC,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACM,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;GAC9CpF,CAAAA,CAAAA,CAAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAACwC,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACsC,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACQ,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;;AAE/C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;MACA,CAAMY,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAGlG,CAAAA,CAAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAACuC,CAAI,CAAA,CAAA,CAAA,CAAC,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;GAC9C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,OAAO2D,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,WAAW,CAAIA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAE,CAAA,CAAA;AAC3D,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACF,CAAA,CAAA,CAAA,CAAA,CAAA;GAEA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMC,WAAW,CAAGL,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,CAACG,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;GACxCjG,CAAAA,CAAAA,CAAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAACuC,CAAI,CAAA,CAAA,CAAA,CAAC,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE4D,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;GAC1C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIrF,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACf,CAAC,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAC,CAAA;AAChC,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;AACJ,CAAA,CAAA,CAAA;;AC/CAgB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,EAAE,CAAA;AACP2B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,EAAE,CAAA;AACb6B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,EAAE,CAAA;AACZe,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAkB,CAAE,CAAA,CAAA;;"} \ No newline at end of file diff --git a/assets/js/dist/page.min.js.map b/assets/js/dist/page.min.js.map new file mode 100644 index 00000000..6d09405d --- /dev/null +++ b/assets/js/dist/page.min.js.map @@ -0,0 +1 @@ +{"version":3,"file":"page.min.js","sources":["../../../_javascript/modules/components/back-to-top.js","../../../_javascript/modules/components/tooltip-loader.js","../../../_javascript/modules/layouts/basic.js","../../../_javascript/modules/components/mode-watcher.js","../../../_javascript/modules/components/sidebar.js","../../../_javascript/modules/layouts/sidebar.js","../../../_javascript/modules/components/search-display.js","../../../_javascript/modules/layouts/topbar.js","../../../_javascript/modules/components/category-collapse.js","../../../_javascript/modules/components/clipboard.js","../../../_javascript/modules/components/img-lazyload.js","../../../_javascript/modules/components/img-popup.js","../../../_javascript/page.js"],"sourcesContent":["/**\n * Reference: https://bootsnipp.com/snippets/featured/link-to-top-page\n */\n\nexport function back2top() {\n const $window = $(window);\n const $btn = $('#back-to-top');\n\n $window.on('scroll', () => {\n if ($window.scrollTop() > 50) {\n $btn.fadeIn();\n } else {\n $btn.fadeOut();\n }\n });\n\n $btn.on('click', () => {\n $window.scrollTop(0);\n });\n}\n","/**\n * Initial Bootstrap Tooltip.\n */\nexport function loadTooptip() {\n const tooltipTriggerList = document.querySelectorAll(\n '[data-bs-toggle=\"tooltip\"]'\n );\n\n [...tooltipTriggerList].map(\n (tooltipTriggerEl) => new bootstrap.Tooltip(tooltipTriggerEl)\n );\n}\n","import { back2top } from '../components/back-to-top';\nimport { loadTooptip } from '../components/tooltip-loader';\n\nexport function basic() {\n back2top();\n loadTooptip();\n}\n","/**\n * Add listener for theme mode toggle\n */\nconst $toggleElem = $('.mode-toggle');\n\nexport function modeWatcher() {\n if ($toggleElem.length === 0) {\n return;\n }\n\n $toggleElem.off().on('click', (e) => {\n const $target = $(e.target);\n let $btn =\n $target.prop('tagName') === 'button'.toUpperCase()\n ? $target\n : $target.parent();\n\n modeToggle.flipMode(); // modeToggle: `_includes/mode-toggle.html`\n $btn.trigger('blur'); // remove the clicking outline\n });\n}\n","/**\n * Expand or close the sidebar in mobile screens.\n */\n\nconst $body = $('body');\nconst ATTR_DISPLAY = 'sidebar-display';\n\nclass SidebarUtil {\n static isExpanded = false;\n\n static toggle() {\n if (SidebarUtil.isExpanded === false) {\n $body.attr(ATTR_DISPLAY, '');\n } else {\n $body.removeAttr(ATTR_DISPLAY);\n }\n\n SidebarUtil.isExpanded = !SidebarUtil.isExpanded;\n }\n}\n\nexport function sidebarExpand() {\n $('#sidebar-trigger').on('click', SidebarUtil.toggle);\n $('#mask').on('click', SidebarUtil.toggle);\n}\n","import { modeWatcher } from '../components/mode-watcher';\nimport { sidebarExpand } from '../components/sidebar';\n\nexport function initSidebar() {\n modeWatcher();\n sidebarExpand();\n}\n","/**\n * This script make #search-result-wrapper switch to unloaded or shown automatically.\n */\nconst $btnSbTrigger = $('#sidebar-trigger');\nconst $btnSearchTrigger = $('#search-trigger');\nconst $btnCancel = $('#search-cancel');\nconst $content = $('#main>.row');\nconst $topbarTitle = $('#topbar-title');\nconst $searchWrapper = $('#search-wrapper');\nconst $resultWrapper = $('#search-result-wrapper');\nconst $results = $('#search-results');\nconst $input = $('#search-input');\nconst $hints = $('#search-hints');\nconst $viewport = $('html,body');\n\n// class names\nconst C_LOADED = 'loaded';\nconst C_UNLOADED = 'unloaded';\nconst C_FOCUS = 'input-focus';\nconst C_FLEX = 'd-flex';\n\nclass ScrollBlocker {\n static offset = 0;\n static resultVisible = false;\n\n static on() {\n ScrollBlocker.offset = window.scrollY;\n $viewport.scrollTop(0);\n }\n\n static off() {\n $viewport.scrollTop(ScrollBlocker.offset);\n }\n}\n\n/*--- Actions in mobile screens (Sidebar hidden) ---*/\nclass MobileSearchBar {\n static on() {\n $btnSbTrigger.addClass(C_UNLOADED);\n $topbarTitle.addClass(C_UNLOADED);\n $btnSearchTrigger.addClass(C_UNLOADED);\n $searchWrapper.addClass(C_FLEX);\n $btnCancel.addClass(C_LOADED);\n }\n\n static off() {\n $btnCancel.removeClass(C_LOADED);\n $searchWrapper.removeClass(C_FLEX);\n $btnSbTrigger.removeClass(C_UNLOADED);\n $topbarTitle.removeClass(C_UNLOADED);\n $btnSearchTrigger.removeClass(C_UNLOADED);\n }\n}\n\nclass ResultSwitch {\n static on() {\n if (!ScrollBlocker.resultVisible) {\n // the block method must be called before $(#main) unloaded.\n ScrollBlocker.on();\n $resultWrapper.removeClass(C_UNLOADED);\n $content.addClass(C_UNLOADED);\n ScrollBlocker.resultVisible = true;\n }\n }\n\n static off() {\n if (ScrollBlocker.resultVisible) {\n $results.empty();\n if ($hints.hasClass(C_UNLOADED)) {\n $hints.removeClass(C_UNLOADED);\n }\n $resultWrapper.addClass(C_UNLOADED);\n $content.removeClass(C_UNLOADED);\n\n // now the release method must be called after $(#main) display\n ScrollBlocker.off();\n\n $input.val('');\n ScrollBlocker.resultVisible = false;\n }\n }\n}\n\nfunction isMobileView() {\n return $btnCancel.hasClass(C_LOADED);\n}\n\nexport function displaySearch() {\n $btnSearchTrigger.on('click', function () {\n MobileSearchBar.on();\n ResultSwitch.on();\n $input.trigger('focus');\n });\n\n $btnCancel.on('click', function () {\n MobileSearchBar.off();\n ResultSwitch.off();\n });\n\n $input.on('focus', function () {\n $searchWrapper.addClass(C_FOCUS);\n });\n\n $input.on('focusout', function () {\n $searchWrapper.removeClass(C_FOCUS);\n });\n\n $input.on('input', () => {\n if ($input.val() === '') {\n if (isMobileView()) {\n $hints.removeClass(C_UNLOADED);\n } else {\n ResultSwitch.off();\n }\n } else {\n ResultSwitch.on();\n if (isMobileView()) {\n $hints.addClass(C_UNLOADED);\n }\n }\n });\n}\n","import { displaySearch } from '../components/search-display';\n\nexport function initTopbar() {\n displaySearch();\n}\n","/**\n * Tab 'Categories' expand/close effect.\n */\nconst childPrefix = 'l_';\nconst parentPrefix = 'h_';\nconst collapse = $('.collapse');\n\nexport function categoryCollapse() {\n /* close up top-category */\n collapse.on('hide.bs.collapse', function () {\n /* Bootstrap collapse events. */ const parentId =\n parentPrefix + $(this).attr('id').substring(childPrefix.length);\n if (parentId) {\n $(`#${parentId} .bi.bi-folder2-open`).attr(\n 'class',\n 'bi bi-folder'\n );\n $(`#${parentId} i.bi`).addClass('rotate');\n $(`#${parentId}`).removeClass('hide-border-bottom');\n }\n });\n\n /* expand the top category */\n collapse.on('show.bs.collapse', function () {\n const parentId =\n parentPrefix + $(this).attr('id').substring(childPrefix.length);\n if (parentId) {\n $(`#${parentId} .bi.bi-folder`).attr(\n 'class',\n 'bi bi-folder2-open'\n );\n $(`#${parentId} i.bi`).removeClass('rotate');\n $(`#${parentId}`).addClass('hide-border-bottom');\n }\n });\n}\n","/**\n * Clipboard functions\n *\n * Dependencies:\n * - popper.js (https://github.com/popperjs/popper-core)\n * - clipboard.js (https://github.com/zenorocha/clipboard.js)\n */\n\nconst clipboardSelector = '.code-header>button';\nconst ICON_SUCCESS = 'bi bi-check';\nconst ATTR_TIMEOUT = 'timeout';\nconst ATTR_TITLE_SUCCEED = 'data-title-succeed';\nconst ATTR_TITLE_ORIGIN = 'data-bs-original-title';\nconst TIMEOUT = 2000; // in milliseconds\n\nfunction isLocked(node) {\n if ($(node)[0].hasAttribute(ATTR_TIMEOUT)) {\n let timeout = $(node).attr(ATTR_TIMEOUT);\n if (Number(timeout) > Date.now()) {\n return true;\n }\n }\n return false;\n}\n\nfunction lock(node) {\n $(node).attr(ATTR_TIMEOUT, Date.now() + TIMEOUT);\n}\n\nfunction unlock(node) {\n $(node).removeAttr(ATTR_TIMEOUT);\n}\n\nfunction getIcon(btn) {\n let iconNode = $(btn).children();\n return iconNode.attr('class');\n}\n\nconst ICON_DEFAULT = getIcon(clipboardSelector);\n\nfunction showTooltip(btn) {\n const succeedTitle = $(btn).attr(ATTR_TITLE_SUCCEED);\n $(btn).attr(ATTR_TITLE_ORIGIN, succeedTitle).tooltip('show');\n}\n\nfunction hideTooltip(btn) {\n $(btn).tooltip('hide').removeAttr(ATTR_TITLE_ORIGIN);\n}\n\nfunction setSuccessIcon(btn) {\n let btnNode = $(btn);\n let iconNode = btnNode.children();\n iconNode.attr('class', ICON_SUCCESS);\n}\n\nfunction resumeIcon(btn) {\n let btnNode = $(btn);\n let iconNode = btnNode.children();\n iconNode.attr('class', ICON_DEFAULT);\n}\n\nexport function initClipboard() {\n // Initial the clipboard.js object\n if ($(clipboardSelector).length) {\n const clipboard = new ClipboardJS(clipboardSelector, {\n target(trigger) {\n let codeBlock = trigger.parentNode.nextElementSibling;\n return codeBlock.querySelector('code .rouge-code');\n }\n });\n\n const clipboardList = document.querySelectorAll(clipboardSelector);\n [...clipboardList].map(\n (elem) =>\n new bootstrap.Tooltip(elem, {\n placement: 'left'\n })\n );\n\n clipboard.on('success', (e) => {\n e.clearSelection();\n\n const trigger = e.trigger;\n if (isLocked(trigger)) {\n return;\n }\n\n setSuccessIcon(trigger);\n showTooltip(trigger);\n lock(trigger);\n\n setTimeout(() => {\n hideTooltip(trigger);\n resumeIcon(trigger);\n unlock(trigger);\n }, TIMEOUT);\n });\n }\n\n /* --- Post link sharing --- */\n\n const btnCopyLink = $('#copy-link');\n\n btnCopyLink.on('click', (e) => {\n let target = $(e.target);\n\n if (isLocked(target)) {\n return;\n }\n\n // Copy URL to clipboard\n navigator.clipboard.writeText(window.location.href).then(() => {\n const defaultTitle = target.attr(ATTR_TITLE_ORIGIN);\n const succeedTitle = target.attr(ATTR_TITLE_SUCCEED);\n // Switch tooltip title\n target.attr(ATTR_TITLE_ORIGIN, succeedTitle).tooltip('show');\n lock(target);\n\n setTimeout(() => {\n target.attr(ATTR_TITLE_ORIGIN, defaultTitle);\n unlock(target);\n }, TIMEOUT);\n });\n });\n\n btnCopyLink.on('mouseleave', function (e) {\n const target = $(e.target);\n target.tooltip('hide');\n console.log('mouse leave...');\n });\n}\n","/**\n * Set up image lazy-load\n */\n\nfunction stopShimmer($node) {\n $node.parent().removeClass('shimmer');\n}\n\nexport function imgLazy() {\n const $images = $('#core-wrapper img[data-src]');\n\n if ($images.length <= 0) {\n return;\n }\n\n /* Stop shimmer when image loaded */\n document.addEventListener('lazyloaded', function (e) {\n stopShimmer($(e.target));\n });\n\n /* Stop shimmer from cached images */\n $images.each(function () {\n if ($(this).hasClass('ls-is-cached')) {\n stopShimmer($(this));\n }\n });\n}\n","/**\n * Set up image popup\n *\n * See: https://github.com/dimsemenov/Magnific-Popup\n */\n\nexport function imgPopup() {\n if ($('.popup') <= 0) {\n return;\n }\n\n $('.popup').magnificPopup({\n type: 'image',\n closeOnContentClick: true,\n showCloseBtn: false,\n zoom: {\n enabled: true,\n duration: 300,\n easing: 'ease-in-out'\n }\n });\n}\n","import { basic, initSidebar, initTopbar } from './modules/layouts';\nimport { imgLazy, imgPopup, initClipboard } from './modules/plugins';\n\nbasic();\ninitSidebar();\ninitTopbar();\nimgLazy();\nimgPopup();\ninitClipboard();\n"],"names":["back2top","$window","$","window","$btn","on","scrollTop","fadeIn","fadeOut","loadTooptip","tooltipTriggerList","document","querySelectorAll","_toConsumableArray","map","tooltipTriggerEl","bootstrap","Tooltip","basic","$toggleElem","modeWatcher","length","off","e","$target","target","prop","toUpperCase","parent","modeToggle","flipMode","trigger","$body","ATTR_DISPLAY","SidebarUtil","_classCallCheck","_createClass","key","value","toggle","isExpanded","attr","removeAttr","_defineProperty","sidebarExpand","initSidebar","$btnSbTrigger","$btnSearchTrigger","$btnCancel","$content","$topbarTitle","$searchWrapper","$resultWrapper","$results","$input","$hints","$viewport","C_LOADED","C_UNLOADED","C_FOCUS","C_FLEX","ScrollBlocker","offset","scrollY","MobileSearchBar","addClass","removeClass","ResultSwitch","resultVisible","empty","hasClass","val","isMobileView","displaySearch","initTopbar","clipboardSelector","ICON_SUCCESS","ATTR_TIMEOUT","ATTR_TITLE_SUCCEED","ATTR_TITLE_ORIGIN","TIMEOUT","isLocked","node","hasAttribute","timeout","Number","Date","now","lock","unlock","getIcon","btn","iconNode","children","ICON_DEFAULT","showTooltip","succeedTitle","tooltip","hideTooltip","setSuccessIcon","btnNode","resumeIcon","initClipboard","clipboard","ClipboardJS","codeBlock","parentNode","nextElementSibling","querySelector","clipboardList","elem","placement","clearSelection","setTimeout","btnCopyLink","navigator","writeText","location","href","then","defaultTitle","console","log","stopShimmer","$node","imgLazy","$images","addEventListener","each","imgPopup","magnificPopup","type","closeOnContentClick","showCloseBtn","zoom","enabled","duration","easing"],"mappings":"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CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,EAAE,CAAA;AACjB,CAAA,CAAA,CAAA;;ACJA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA;AAGiBvE,CAAAA,CAAAA,CAAC,CAAC,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;;ACL9B,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA;;EAEA,CAAMyE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAqB,CAAA;EAC/C,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAA;EAClC,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA;EAC9B,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAkB,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAoB,CAAA;EAC/C,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAwB,CAAA;EAClD,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;;EAErB,CAASC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQA,CAACC,CAAAA,CAAAA,CAAAA,CAAI,CAAE,CAAA,CAAA;AACtB,CAAA,CAAA,CAAA,CAAA,CAAIhF,CAAAA,CAAAA,CAAAA,CAAC,CAACgF,CAAAA,CAAAA,CAAAA,CAAI,CAAC,CAAC,CAAC,CAAC,CAACC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAACN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAC,CAAE,CAAA,CAAA;MACzC,CAAIO,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAGlF,CAAAA,CAAAA,CAAC,CAACgF,CAAAA,CAAAA,CAAAA,CAAI,CAAC,CAACzC,CAAI,CAAA,CAAA,CAAA,CAACoC,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;GACxC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIQ,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAACD,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,GAAGE,CAAI,CAAA,CAAA,CAAA,CAACC,CAAG,CAAA,CAAA,CAAA,CAAE,CAAE,CAAA,CAAA;EAChC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,IAAI,CAAA;EACb,CAAA,CAAA,CAAA,CAAA,CAAA;EACF,CAAA,CAAA,CAAA;EACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,KAAK,CAAA;EACd,CAAA;EAEA,CAASC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIA,CAACN,CAAAA,CAAAA,CAAAA,CAAI,CAAE,CAAA,CAAA;AAClBhF,CAAAA,CAAAA,CAAAA,CAAAA,CAAC,CAACgF,CAAAA,CAAAA,CAAAA,CAAI,CAAC,CAACzC,IAAI,CAACoC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAES,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,CAACC,CAAG,CAAA,CAAA,CAAA,CAAE,CAAGP,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAC,CAAA;EAClD,CAAA;EAEA,CAASS,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAMA,CAACP,CAAAA,CAAAA,CAAAA,CAAI,CAAE,CAAA,CAAA;EACpBhF,CAAAA,CAAAA,CAAC,CAACgF,CAAI,CAAA,CAAA,CAAA,CAAC,CAACxC,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACmC,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;EAClC,CAAA;EAEA,CAASa,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOA,CAACC,CAAAA,CAAAA,CAAG,CAAE,CAAA,CAAA;GACpB,CAAA,CAAA,CAAA,CAAA,CAAIC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG1F,CAAC,CAACyF,GAAG,CAAC,CAACE,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAA;AAChC,CAAA,CAAA,CAAA,CAAA,OAAOD,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACnD,IAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAC,CAAA;EAC/B,CAAA;AAEA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMqD,YAAY,CAAGJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAACf,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,CAAC,CAAA;EAE/C,CAASoB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAWA,CAACJ,CAAAA,CAAAA,CAAG,CAAE,CAAA,CAAA;IACxB,CAAMK,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAG9F,CAAAA,CAAAA,CAAC,CAACyF,CAAAA,CAAAA,CAAG,CAAC,CAAClD,CAAI,CAAA,CAAA,CAAA,CAACqC,CAAkB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;AACpD5E,CAAAA,CAAAA,CAAAA,CAAAA,CAAC,CAACyF,CAAAA,CAAAA,CAAG,CAAC,CAAClD,IAAI,CAACsC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,CAAEiB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAC,CAACC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC,CAAA;EAC9D,CAAA;EAEA,CAASC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAWA,CAACP,CAAAA,CAAAA,CAAG,CAAE,CAAA,CAAA;AACxBzF,CAAAA,CAAAA,CAAAA,CAAAA,CAAC,CAACyF,CAAG,CAAA,CAAA,CAAC,CAACM,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAACvD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAACqC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,CAAC,CAAA;EACtD,CAAA;EAEA,CAASoB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAcA,CAACR,CAAAA,CAAAA,CAAG,CAAE,CAAA,CAAA;AAC3B,CAAA,CAAA,CAAA,CAAA,IAAIS,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGlG,CAAC,CAACyF,CAAAA,CAAAA,CAAG,CAAC,CAAA;AACpB,CAAA,CAAA,CAAA,CAAA,IAAIC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGQ,OAAO,CAACP,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,EAAE,CAAA;EACjCD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAACnD,CAAI,CAAA,CAAA,CAAA,CAAC,OAAO,CAAEmC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAC,CAAA;EACtC,CAAA;EAEA,CAASyB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAUA,CAACV,CAAAA,CAAAA,CAAG,CAAE,CAAA,CAAA;AACvB,CAAA,CAAA,CAAA,CAAA,IAAIS,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGlG,CAAC,CAACyF,CAAAA,CAAAA,CAAG,CAAC,CAAA;AACpB,CAAA,CAAA,CAAA,CAAA,IAAIC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGQ,OAAO,CAACP,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,EAAE,CAAA;EACjCD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAACnD,CAAI,CAAA,CAAA,CAAA,CAAC,OAAO,CAAEqD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAC,CAAA;EACtC,CAAA;AAEO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASQ,aAAaA,CAAG,CAAA,CAAA,CAAA;AAC9B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,IAAIpG,CAAC,CAACyE,iBAAiB,CAAC,CAACtD,MAAM,CAAE,CAAA,CAAA;AAC/B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAMkF,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,IAAIC,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC7B,iBAAiB,CAAE,CAAA,CAAA;QACnDlD,MAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,CAACM,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,OAAO,CAAE,CAAA,CAAA;EACd,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI0E,SAAS,CAAG1E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAC2E,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACC,kBAAkB,CAAA;AACrD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAOF,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACG,aAAa,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAkB,CAAC,CAAA;EACpD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;EAEF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMC,aAAa,CAAGlG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAACC,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC+D,CAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;EAClE9D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAIgG,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE/F,CAAG,CAAA,CAAA,CACpB,CAACgG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OACH,CAAI9F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CAACC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC6F,IAAI,CAAE,CAAA,CAAA;EAC1BC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,EAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACb,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;OACL,CAAA,CAAA;EAEDR,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CAAClG,CAAE,CAAA,CAAC,SAAS,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACkB,CAAC,CAAK,CAAA,CAAA;QAC7BA,CAAC,CAACyF,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAA;AAElB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAMjF,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGR,CAAC,CAACQ,OAAO,CAAA;AACzB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIkD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAAClD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAC,CAAE,CAAA,CAAA;AACrB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;QAEAoE,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACpE,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;QACvBgE,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAChE,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;QACpByD,CAAI,CAAA,CAAA,CAAA,CAACzD,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;EAEbkF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;UACff,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACnE,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;UACpBsE,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACtE,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;UACnB0D,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC1D,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;GAChB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAEiD,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;AACb,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;EACJ,CAAA,CAAA,CAAA;;AAEA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;;AAEA,CAAA,CAAA,CAAA,CAAA,IAAMkC,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGhH,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAC,CAAA;EAEnCgH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAAC7G,CAAE,CAAA,CAAC,OAAO,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACkB,CAAC,CAAK,CAAA,CAAA;EAC7B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIE,MAAM,CAAGvB,CAAAA,CAAAA,CAAC,CAACqB,CAAC,CAACE,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;AAExB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIwD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAACxD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAAC,CAAE,CAAA,CAAA;AACpB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACF,CAAA,CAAA,CAAA,CAAA,CAAA;;AAEA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA0F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACZ,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACa,SAAS,CAACjH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAACkH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAACC,CAAI,CAAA,CAAA,CAAA,CAAC,CAACC,CAAAA,CAAAA,CAAAA,CAAI,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAC7D,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMC,YAAY,CAAG/F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAACgB,CAAI,CAAA,CAAA,CAAA,CAACsC,CAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;EACnD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMiB,YAAY,CAAGvE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAACgB,CAAI,CAAA,CAAA,CAAA,CAACqC,CAAkB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;AACpD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;QACArD,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAACgB,CAAI,CAAA,CAAA,CAAA,CAACsC,CAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAEiB,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAACC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC,CAAA;QAC5DT,CAAI,CAAA,CAAA,CAAA,CAAC/D,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;EAEZwF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACfxF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAACgB,CAAI,CAAA,CAAA,CAAA,CAACsC,iBAAiB,CAAEyC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAC,CAAA;UAC5C/B,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAChE,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;GACf,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAEuD,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;AACb,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;AACJ,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;EAEFkC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAAC7G,CAAE,CAAA,CAAC,YAAY,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAUkB,CAAC,CAAE,CAAA,CAAA;EACxC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAME,MAAM,CAAGvB,CAAAA,CAAAA,CAAC,CAACqB,CAAC,CAACE,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;AAC1BA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,MAAM,CAACwE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC,CAAA;AACtBwB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,OAAO,CAACC,CAAAA,CAAAA,CAAG,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAC,CAAA;AAC/B,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;AACJ,CAAA,CAAA,CAAA;;AClIA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA;;EAEA,CAASC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAWA,CAACC,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAAE,CAAA,CAAA;EAC1BA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAAChG,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAACsC,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;EACvC,CAAA;AAEO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS2D,OAAOA,CAAG,CAAA,CAAA,CAAA;AACxB,CAAA,CAAA,CAAA,CAAA,IAAMC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG5H,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA6B,CAAC,CAAA;AAEhD,CAAA,CAAA,CAAA,CAAA,IAAI4H,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACzG,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAE,CAAA,CAAA;AACvB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACF,CAAA,CAAA,CAAA;;AAEA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACAV,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAACoH,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,YAAY,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAUxG,CAAC,CAAE,CAAA,CAAA;EACnDoG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAACzH,CAAC,CAACqB,CAAC,CAACE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAAC,CAAC,CAAA;AAC1B,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;;AAEF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;IACAqG,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACE,CAAI,CAAA,CAAA,CAAA,CAAC,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;GACvB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI9H,CAAC,CAAC,CAAI,CAAA,CAAA,CAAA,CAAC,CAACoE,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAE,CAAA,CAAA;AACpCqD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,WAAW,CAACzH,CAAC,CAAC,CAAI,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;EACtB,CAAA,CAAA,CAAA,CAAA,CAAA;AACF,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;AACJ,CAAA,CAAA,CAAA;;AC1BA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA;;AAEO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS+H,QAAQA,CAAG,CAAA,CAAA,CAAA;AACzB,CAAA,CAAA,CAAA,CAAA,IAAI/H,CAAC,CAAC,QAAQ,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAE,CAAA,CAAA;AACpB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACF,CAAA,CAAA,CAAA;AAEAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAC,CAACgI,aAAa,CAAC,CAAA;EACxBC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,EAAE,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACbC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAmB,EAAE,CAAI,CAAA,CAAA,CAAA,CAAA;EACzBC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,EAAE,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA;AACnBC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IAAI,CAAE,CAAA,CAAA;EACJC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,EAAE,CAAI,CAAA,CAAA,CAAA,CAAA;EACbC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,EAAE,CAAG,CAAA,CAAA,CAAA;EACbC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,EAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACV,CAAA,CAAA,CAAA,CAAA,CAAA;AACF,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;AACJ,CAAA,CAAA,CAAA;;AClBAvH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,EAAE,CAAA;AACP2B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,EAAE,CAAA;AACb6B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,EAAE,CAAA;AACZmD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,EAAE,CAAA;AACTI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,EAAE,CAAA;AACV3B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CAAE,CAAA,CAAA;;"} \ No newline at end of file diff --git a/assets/js/dist/post.min.js.map b/assets/js/dist/post.min.js.map new file mode 100644 index 00000000..6f820639 --- /dev/null +++ b/assets/js/dist/post.min.js.map @@ -0,0 +1 @@ +{"version":3,"file":"post.min.js","sources":["../../../_javascript/modules/components/back-to-top.js","../../../_javascript/modules/components/tooltip-loader.js","../../../_javascript/modules/layouts/basic.js","../../../_javascript/modules/components/mode-watcher.js","../../../_javascript/modules/components/sidebar.js","../../../_javascript/modules/layouts/sidebar.js","../../../_javascript/modules/components/search-display.js","../../../_javascript/modules/layouts/topbar.js","../../../_javascript/modules/components/category-collapse.js","../../../_javascript/modules/components/clipboard.js","../../../_javascript/modules/components/img-lazyload.js","../../../_javascript/modules/components/img-popup.js","../../../_javascript/modules/components/locale-datetime.js","../../../_javascript/modules/components/toc.js","../../../_javascript/modules/components/post-age-notification.js","../../../_javascript/post.js"],"sourcesContent":["/**\n * Reference: https://bootsnipp.com/snippets/featured/link-to-top-page\n */\n\nexport function back2top() {\n const $window = $(window);\n const $btn = $('#back-to-top');\n\n $window.on('scroll', () => {\n if ($window.scrollTop() > 50) {\n $btn.fadeIn();\n } else {\n $btn.fadeOut();\n }\n });\n\n $btn.on('click', () => {\n $window.scrollTop(0);\n });\n}\n","/**\n * Initial Bootstrap Tooltip.\n */\nexport function loadTooptip() {\n const tooltipTriggerList = document.querySelectorAll(\n '[data-bs-toggle=\"tooltip\"]'\n );\n\n [...tooltipTriggerList].map(\n (tooltipTriggerEl) => new bootstrap.Tooltip(tooltipTriggerEl)\n );\n}\n","import { back2top } from '../components/back-to-top';\nimport { loadTooptip } from '../components/tooltip-loader';\n\nexport function basic() {\n back2top();\n loadTooptip();\n}\n","/**\n * Add listener for theme mode toggle\n */\nconst $toggleElem = $('.mode-toggle');\n\nexport function modeWatcher() {\n if ($toggleElem.length === 0) {\n return;\n }\n\n $toggleElem.off().on('click', (e) => {\n const $target = $(e.target);\n let $btn =\n $target.prop('tagName') === 'button'.toUpperCase()\n ? $target\n : $target.parent();\n\n modeToggle.flipMode(); // modeToggle: `_includes/mode-toggle.html`\n $btn.trigger('blur'); // remove the clicking outline\n });\n}\n","/**\n * Expand or close the sidebar in mobile screens.\n */\n\nconst $body = $('body');\nconst ATTR_DISPLAY = 'sidebar-display';\n\nclass SidebarUtil {\n static isExpanded = false;\n\n static toggle() {\n if (SidebarUtil.isExpanded === false) {\n $body.attr(ATTR_DISPLAY, '');\n } else {\n $body.removeAttr(ATTR_DISPLAY);\n }\n\n SidebarUtil.isExpanded = !SidebarUtil.isExpanded;\n }\n}\n\nexport function sidebarExpand() {\n $('#sidebar-trigger').on('click', SidebarUtil.toggle);\n $('#mask').on('click', SidebarUtil.toggle);\n}\n","import { modeWatcher } from '../components/mode-watcher';\nimport { sidebarExpand } from '../components/sidebar';\n\nexport function initSidebar() {\n modeWatcher();\n sidebarExpand();\n}\n","/**\n * This script make #search-result-wrapper switch to unloaded or shown automatically.\n */\nconst $btnSbTrigger = $('#sidebar-trigger');\nconst $btnSearchTrigger = $('#search-trigger');\nconst $btnCancel = $('#search-cancel');\nconst $content = $('#main>.row');\nconst $topbarTitle = $('#topbar-title');\nconst $searchWrapper = $('#search-wrapper');\nconst $resultWrapper = $('#search-result-wrapper');\nconst $results = $('#search-results');\nconst $input = $('#search-input');\nconst $hints = $('#search-hints');\nconst $viewport = $('html,body');\n\n// class names\nconst C_LOADED = 'loaded';\nconst C_UNLOADED = 'unloaded';\nconst C_FOCUS = 'input-focus';\nconst C_FLEX = 'd-flex';\n\nclass ScrollBlocker {\n static offset = 0;\n static resultVisible = false;\n\n static on() {\n ScrollBlocker.offset = window.scrollY;\n $viewport.scrollTop(0);\n }\n\n static off() {\n $viewport.scrollTop(ScrollBlocker.offset);\n }\n}\n\n/*--- Actions in mobile screens (Sidebar hidden) ---*/\nclass MobileSearchBar {\n static on() {\n $btnSbTrigger.addClass(C_UNLOADED);\n $topbarTitle.addClass(C_UNLOADED);\n $btnSearchTrigger.addClass(C_UNLOADED);\n $searchWrapper.addClass(C_FLEX);\n $btnCancel.addClass(C_LOADED);\n }\n\n static off() {\n $btnCancel.removeClass(C_LOADED);\n $searchWrapper.removeClass(C_FLEX);\n $btnSbTrigger.removeClass(C_UNLOADED);\n $topbarTitle.removeClass(C_UNLOADED);\n $btnSearchTrigger.removeClass(C_UNLOADED);\n }\n}\n\nclass ResultSwitch {\n static on() {\n if (!ScrollBlocker.resultVisible) {\n // the block method must be called before $(#main) unloaded.\n ScrollBlocker.on();\n $resultWrapper.removeClass(C_UNLOADED);\n $content.addClass(C_UNLOADED);\n ScrollBlocker.resultVisible = true;\n }\n }\n\n static off() {\n if (ScrollBlocker.resultVisible) {\n $results.empty();\n if ($hints.hasClass(C_UNLOADED)) {\n $hints.removeClass(C_UNLOADED);\n }\n $resultWrapper.addClass(C_UNLOADED);\n $content.removeClass(C_UNLOADED);\n\n // now the release method must be called after $(#main) display\n ScrollBlocker.off();\n\n $input.val('');\n ScrollBlocker.resultVisible = false;\n }\n }\n}\n\nfunction isMobileView() {\n return $btnCancel.hasClass(C_LOADED);\n}\n\nexport function displaySearch() {\n $btnSearchTrigger.on('click', function () {\n MobileSearchBar.on();\n ResultSwitch.on();\n $input.trigger('focus');\n });\n\n $btnCancel.on('click', function () {\n MobileSearchBar.off();\n ResultSwitch.off();\n });\n\n $input.on('focus', function () {\n $searchWrapper.addClass(C_FOCUS);\n });\n\n $input.on('focusout', function () {\n $searchWrapper.removeClass(C_FOCUS);\n });\n\n $input.on('input', () => {\n if ($input.val() === '') {\n if (isMobileView()) {\n $hints.removeClass(C_UNLOADED);\n } else {\n ResultSwitch.off();\n }\n } else {\n ResultSwitch.on();\n if (isMobileView()) {\n $hints.addClass(C_UNLOADED);\n }\n }\n });\n}\n","import { displaySearch } from '../components/search-display';\n\nexport function initTopbar() {\n displaySearch();\n}\n","/**\n * Tab 'Categories' expand/close effect.\n */\nconst childPrefix = 'l_';\nconst parentPrefix = 'h_';\nconst collapse = $('.collapse');\n\nexport function categoryCollapse() {\n /* close up top-category */\n collapse.on('hide.bs.collapse', function () {\n /* Bootstrap collapse events. */ const parentId =\n parentPrefix + $(this).attr('id').substring(childPrefix.length);\n if (parentId) {\n $(`#${parentId} .bi.bi-folder2-open`).attr(\n 'class',\n 'bi bi-folder'\n );\n $(`#${parentId} i.bi`).addClass('rotate');\n $(`#${parentId}`).removeClass('hide-border-bottom');\n }\n });\n\n /* expand the top category */\n collapse.on('show.bs.collapse', function () {\n const parentId =\n parentPrefix + $(this).attr('id').substring(childPrefix.length);\n if (parentId) {\n $(`#${parentId} .bi.bi-folder`).attr(\n 'class',\n 'bi bi-folder2-open'\n );\n $(`#${parentId} i.bi`).removeClass('rotate');\n $(`#${parentId}`).addClass('hide-border-bottom');\n }\n });\n}\n","/**\n * Clipboard functions\n *\n * Dependencies:\n * - popper.js (https://github.com/popperjs/popper-core)\n * - clipboard.js (https://github.com/zenorocha/clipboard.js)\n */\n\nconst clipboardSelector = '.code-header>button';\nconst ICON_SUCCESS = 'bi bi-check';\nconst ATTR_TIMEOUT = 'timeout';\nconst ATTR_TITLE_SUCCEED = 'data-title-succeed';\nconst ATTR_TITLE_ORIGIN = 'data-bs-original-title';\nconst TIMEOUT = 2000; // in milliseconds\n\nfunction isLocked(node) {\n if ($(node)[0].hasAttribute(ATTR_TIMEOUT)) {\n let timeout = $(node).attr(ATTR_TIMEOUT);\n if (Number(timeout) > Date.now()) {\n return true;\n }\n }\n return false;\n}\n\nfunction lock(node) {\n $(node).attr(ATTR_TIMEOUT, Date.now() + TIMEOUT);\n}\n\nfunction unlock(node) {\n $(node).removeAttr(ATTR_TIMEOUT);\n}\n\nfunction getIcon(btn) {\n let iconNode = $(btn).children();\n return iconNode.attr('class');\n}\n\nconst ICON_DEFAULT = getIcon(clipboardSelector);\n\nfunction showTooltip(btn) {\n const succeedTitle = $(btn).attr(ATTR_TITLE_SUCCEED);\n $(btn).attr(ATTR_TITLE_ORIGIN, succeedTitle).tooltip('show');\n}\n\nfunction hideTooltip(btn) {\n $(btn).tooltip('hide').removeAttr(ATTR_TITLE_ORIGIN);\n}\n\nfunction setSuccessIcon(btn) {\n let btnNode = $(btn);\n let iconNode = btnNode.children();\n iconNode.attr('class', ICON_SUCCESS);\n}\n\nfunction resumeIcon(btn) {\n let btnNode = $(btn);\n let iconNode = btnNode.children();\n iconNode.attr('class', ICON_DEFAULT);\n}\n\nexport function initClipboard() {\n // Initial the clipboard.js object\n if ($(clipboardSelector).length) {\n const clipboard = new ClipboardJS(clipboardSelector, {\n target(trigger) {\n let codeBlock = trigger.parentNode.nextElementSibling;\n return codeBlock.querySelector('code .rouge-code');\n }\n });\n\n const clipboardList = document.querySelectorAll(clipboardSelector);\n [...clipboardList].map(\n (elem) =>\n new bootstrap.Tooltip(elem, {\n placement: 'left'\n })\n );\n\n clipboard.on('success', (e) => {\n e.clearSelection();\n\n const trigger = e.trigger;\n if (isLocked(trigger)) {\n return;\n }\n\n setSuccessIcon(trigger);\n showTooltip(trigger);\n lock(trigger);\n\n setTimeout(() => {\n hideTooltip(trigger);\n resumeIcon(trigger);\n unlock(trigger);\n }, TIMEOUT);\n });\n }\n\n /* --- Post link sharing --- */\n\n const btnCopyLink = $('#copy-link');\n\n btnCopyLink.on('click', (e) => {\n let target = $(e.target);\n\n if (isLocked(target)) {\n return;\n }\n\n // Copy URL to clipboard\n navigator.clipboard.writeText(window.location.href).then(() => {\n const defaultTitle = target.attr(ATTR_TITLE_ORIGIN);\n const succeedTitle = target.attr(ATTR_TITLE_SUCCEED);\n // Switch tooltip title\n target.attr(ATTR_TITLE_ORIGIN, succeedTitle).tooltip('show');\n lock(target);\n\n setTimeout(() => {\n target.attr(ATTR_TITLE_ORIGIN, defaultTitle);\n unlock(target);\n }, TIMEOUT);\n });\n });\n\n btnCopyLink.on('mouseleave', function (e) {\n const target = $(e.target);\n target.tooltip('hide');\n console.log('mouse leave...');\n });\n}\n","/**\n * Set up image lazy-load\n */\n\nfunction stopShimmer($node) {\n $node.parent().removeClass('shimmer');\n}\n\nexport function imgLazy() {\n const $images = $('#core-wrapper img[data-src]');\n\n if ($images.length <= 0) {\n return;\n }\n\n /* Stop shimmer when image loaded */\n document.addEventListener('lazyloaded', function (e) {\n stopShimmer($(e.target));\n });\n\n /* Stop shimmer from cached images */\n $images.each(function () {\n if ($(this).hasClass('ls-is-cached')) {\n stopShimmer($(this));\n }\n });\n}\n","/**\n * Set up image popup\n *\n * See: https://github.com/dimsemenov/Magnific-Popup\n */\n\nexport function imgPopup() {\n if ($('.popup') <= 0) {\n return;\n }\n\n $('.popup').magnificPopup({\n type: 'image',\n closeOnContentClick: true,\n showCloseBtn: false,\n zoom: {\n enabled: true,\n duration: 300,\n easing: 'ease-in-out'\n }\n });\n}\n","/**\n * Update month/day to locale datetime\n *\n * Requirement: \n */\n\n/* A tool for locale datetime */\nclass LocaleHelper {\n static get attrTimestamp() {\n return 'data-ts';\n }\n\n static get attrDateFormat() {\n return 'data-df';\n }\n\n static get locale() {\n return $('html').attr('lang').substring(0, 2);\n }\n\n static getTimestamp(elem) {\n return Number(elem.attr(LocaleHelper.attrTimestamp)); // unix timestamp\n }\n\n static getDateFormat(elem) {\n return elem.attr(LocaleHelper.attrDateFormat);\n }\n}\n\nexport function initLocaleDatetime() {\n dayjs.locale(LocaleHelper.locale);\n dayjs.extend(window.dayjs_plugin_localizedFormat);\n\n $(`[${LocaleHelper.attrTimestamp}]`).each(function () {\n const date = dayjs.unix(LocaleHelper.getTimestamp($(this)));\n const text = date.format(LocaleHelper.getDateFormat($(this)));\n $(this).text(text);\n $(this).removeAttr(LocaleHelper.attrTimestamp);\n $(this).removeAttr(LocaleHelper.attrDateFormat);\n\n // setup tooltips\n const tooltip = $(this).attr('data-bs-toggle');\n if (typeof tooltip === 'undefined' || tooltip !== 'tooltip') {\n return;\n }\n\n const tooltipText = date.format('llll'); // see: https://day.js.org/docs/en/display/format#list-of-localized-formats\n $(this).attr('data-bs-title', tooltipText);\n new bootstrap.Tooltip($(this));\n });\n}\n","export function toc() {\n if (document.querySelector('#core-wrapper h2,#core-wrapper h3')) {\n // see: https://github.com/tscanlin/tocbot#usage\n tocbot.init({\n tocSelector: '#toc',\n contentSelector: '.post-content',\n ignoreSelector: '[data-toc-skip]',\n headingSelector: 'h2, h3',\n orderedList: false,\n scrollSmooth: false\n });\n }\n}\n","const ATTR_POSTED_DATE = 'posted-date';\nconst ATTR_UPDATED_DATE = 'updated-date';\n\nexport function postAgeNotification() {\n\n // Assign the target node containing the HTML message to a variable\n let postNotification = document.getElementById('post-age-notification');\n\n // Read the contents of the 'div' containing the posted date\n let postDate = Number(document.getElementById(ATTR_POSTED_DATE).innerHTML);\n\n // Read the contents of the 'div' containing the post's last update date\n let updatedDate = Number(document.getElementById(ATTR_UPDATED_DATE).innerHTML);\n\n // Check if the updated date is newer than the posted date\n // if it is then use the updated date, else use the postDate\n let postCheckDate = updatedDate > postDate ? updatedDate : postDate;\n\n // Get the current age of the post by subtracting the post's timestamp from the current UNIX timestamp when the page is loaded, i.e. right now\n let postAge = Math.floor(new Date().getTime() / 1000.0) - postCheckDate;\n\n // Calculate the age in months by dividing the post's age by the number of seconds in a month, and rounding it down to an integer\n let postAgeMonths = Math.floor(postAge / 2629746);\n\n\n // If the post age (in months) is greater than 6 (months), then remove the hidden CSS class from the target node, and insert the HTML message\n if (postAgeMonths > 6) {\n postNotification.classList.remove('d-none');\n postNotification.innerHTML = `This post is ${postAgeMonths} months old. Some information may be outdated or inaccurate.
If any updates are required please comment at the bottom of the page.`;\n }\n}\n","import { basic, initSidebar, initTopbar } from './modules/layouts';\nimport {\n imgLazy,\n imgPopup,\n initLocaleDatetime,\n initClipboard,\n toc,\n postAgeNotification\n} from './modules/plugins';\n\nbasic();\ninitSidebar();\ninitTopbar();\nimgLazy();\nimgPopup();\ninitLocaleDatetime();\ninitClipboard();\ntoc();\npostAgeNotification();\n"],"names":["back2top","$window","$","window","$btn","on","scrollTop","fadeIn","fadeOut","loadTooptip","tooltipTriggerList","document","querySelectorAll","_toConsumableArray","map","tooltipTriggerEl","bootstrap","Tooltip","basic","$toggleElem","modeWatcher","length","off","e","$target","target","prop","toUpperCase","parent","modeToggle","flipMode","trigger","$body","ATTR_DISPLAY","SidebarUtil","_classCallCheck","_createClass","key","value","toggle","isExpanded","attr","removeAttr","_defineProperty","sidebarExpand","initSidebar","$btnSbTrigger","$btnSearchTrigger","$btnCancel","$content","$topbarTitle","$searchWrapper","$resultWrapper","$results","$input","$hints","$viewport","C_LOADED","C_UNLOADED","C_FOCUS","C_FLEX","ScrollBlocker","offset","scrollY","MobileSearchBar","addClass","removeClass","ResultSwitch","resultVisible","empty","hasClass","val","isMobileView","displaySearch","initTopbar","clipboardSelector","ICON_SUCCESS","ATTR_TIMEOUT","ATTR_TITLE_SUCCEED","ATTR_TITLE_ORIGIN","TIMEOUT","isLocked","node","hasAttribute","timeout","Number","Date","now","lock","unlock","getIcon","btn","iconNode","children","ICON_DEFAULT","showTooltip","succeedTitle","tooltip","hideTooltip","setSuccessIcon","btnNode","resumeIcon","initClipboard","clipboard","ClipboardJS","codeBlock","parentNode","nextElementSibling","querySelector","clipboardList","elem","placement","clearSelection","setTimeout","btnCopyLink","navigator","writeText","location","href","then","defaultTitle","console","log","stopShimmer","$node","imgLazy","$images","addEventListener","each","imgPopup","magnificPopup","type","closeOnContentClick","showCloseBtn","zoom","enabled","duration","easing","LocaleHelper","get","substring","getTimestamp","attrTimestamp","getDateFormat","attrDateFormat","initLocaleDatetime","dayjs","locale","extend","dayjs_plugin_localizedFormat","concat","date","unix","text","format","tooltipText","toc","tocbot","init","tocSelector","contentSelector","ignoreSelector","headingSelector","orderedList","scrollSmooth","ATTR_POSTED_DATE","ATTR_UPDATED_DATE","postAgeNotification","postNotification","getElementById","postDate","innerHTML","updatedDate","postCheckDate","postAge","Math","floor","getTime","postAgeMonths","classList","remove"],"mappings":"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CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,EAAE,CAAA;AACjB,CAAA,CAAA,CAAA;;ACJA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA;AAGiBvE,CAAAA,CAAAA,CAAC,CAAC,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;;ACL9B,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,C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"} \ No newline at end of file diff --git a/categories/index.html b/categories/index.html index 5332a7ea..b75c5774 100644 --- a/categories/index.html +++ b/categories/index.html @@ -1 +1 @@ - Categories | TotalDebug
Home Categories
Categories
Cancel

Categories

3D Printer 2 categories , 2 posts
Automation 1 category , 4 posts
Containers 1 category , 3 posts
Database 1 category , 1 post
Development 1 category , 1 post
Docker 2 categories , 2 posts
Git 1 post
Home Automation 1 category , 2 posts
Linux 6 categories , 11 posts
Microsoft 2 categories , 8 posts
Musings 2 posts
PHP 2 posts
Python 1 category , 3 posts
Ubiquiti 1 post
Virtualisation 2 categories , 5 posts
Website 2 posts
how-to 1 post
+ Categories | TotalDebug
Home Categories
Categories
Cancel

Categories

3D Printer 2 categories , 2 posts
Automation 1 category , 4 posts
Containers 1 category , 3 posts
Database 1 category , 1 post
Development 1 category , 1 post
Docker 2 categories , 2 posts
Git 1 post
Home Automation 1 category , 2 posts
Linux 6 categories , 11 posts
Microsoft 2 categories , 8 posts
Musings 2 posts
PHP 2 posts
Python 1 category , 3 posts
Ubiquiti 1 post
Virtualisation 2 categories , 5 posts
Website 2 posts
how-to 1 post
diff --git a/feed.xml b/feed.xml index df685eed..7e636c32 100644 --- a/feed.xml +++ b/feed.xml @@ -1 +1 @@ - https://totaldebug.uk/TotalDebugSteven Marks. Dev blog. Linux, workflow optimisation, programming, software development, Python, Typescript. 2023-08-08T09:20:52+01:00 Steven Marks https://totaldebug.uk/ Jekyll © 2023 Steven Marks /assets/img/favicons/favicon.ico /assets/img/favicons/favicon-96x96.png Add series links to Jekyll posts2023-06-09T09:06:40+01:00 2023-08-08T09:20:30+01:00 https://totaldebug.uk/posts/jekyll-post-series-links/ Steven Marks Creating blog posts for my website I sometimes find that I want top create multiple articles as part of a series, usually because I have done some research and got to a stage that makes sense to have an article to itself, something like my recent post on Proxmox Template with Cloud Image and Cloud Init. Rather than having to manually link to other articles related to the series, I thought it w... Last4Solar - My solar nightmare!2023-06-02T22:13:35+01:00 2023-07-29T20:09:20+01:00 https://totaldebug.uk/posts/last4solar-my-solar-nightmare/ Steven Marks At the end of 2022 I came into some inheritance, with the massive energy price increase in the UK I decided to spend this money on a solar and battery installation on my house. With the decreasing price of solar systems and the increase in price, the return on investment is getting smaller and making the option much more reasonable. Choosing a company for the installation I spent a long time... Automating deployments using Terraform with Proxmox and ansible2023-05-06T10:03:29+01:00 2023-08-08T09:20:30+01:00 https://totaldebug.uk/posts/automating-proxmox-with-terraform-ansible/ Steven Marks Over the years my home lab has grown and become more and more difficult to maintain, especially because some servers I build and forget as they function so well. I have found recently though that moving to newer versions of operating systems can be difficult for the servers that I cant easily containerise at the moment. For this reason I have moved over to using Terraform with Proxmox and ans... Use Python pandas NOW for your big datasets2023-03-29T17:00:00+01:00 2023-03-29T17:00:00+01:00 https://totaldebug.uk/posts/use-python-pandas-now/ Steven Marks Over the past few years I have been working on processing large analytical data sets requiring various manipulations to produce statistics for analysis and business improvement. I quickly found that processing data of this size was slow, some taking over 11 hours to process which would only get worse as the data grew. Most of the processing required multiple nested for loops and addition of c... How I host this site2023-02-25T19:22:00+00:00 2023-02-25T21:51:13+00:00 https://totaldebug.uk/posts/how-i-host-this-site/ Steven Marks My site isn’t anything special, but I thought I’d like to share how I create and host things for others who may be interested in sharing their own words with a very simple and easy to maintain structure. Motivation for hosting this site I have hosted a blog site in some form for the past 10+ years. The idea being to share my experience with others and hopefully help others with some of the is... + https://totaldebug.uk/TotalDebugSteven Marks. Dev blog. Linux, workflow optimisation, programming, software development, Python, Typescript. 2023-08-08T09:29:11+01:00 Steven Marks https://totaldebug.uk/ Jekyll © 2023 Steven Marks /assets/img/favicons/favicon.ico /assets/img/favicons/favicon-96x96.png Add series links to Jekyll posts2023-06-09T09:06:40+01:00 2023-08-08T09:20:30+01:00 https://totaldebug.uk/posts/jekyll-post-series-links/ Steven Marks Creating blog posts for my website I sometimes find that I want top create multiple articles as part of a series, usually because I have done some research and got to a stage that makes sense to have an article to itself, something like my recent post on Proxmox Template with Cloud Image and Cloud Init. Rather than having to manually link to other articles related to the series, I thought it w... Last4Solar - My solar nightmare!2023-06-02T22:13:35+01:00 2023-07-29T20:09:20+01:00 https://totaldebug.uk/posts/last4solar-my-solar-nightmare/ Steven Marks At the end of 2022 I came into some inheritance, with the massive energy price increase in the UK I decided to spend this money on a solar and battery installation on my house. With the decreasing price of solar systems and the increase in price, the return on investment is getting smaller and making the option much more reasonable. Choosing a company for the installation I spent a long time... Automating deployments using Terraform with Proxmox and ansible2023-05-06T10:03:29+01:00 2023-08-08T09:20:30+01:00 https://totaldebug.uk/posts/automating-proxmox-with-terraform-ansible/ Steven Marks Over the years my home lab has grown and become more and more difficult to maintain, especially because some servers I build and forget as they function so well. I have found recently though that moving to newer versions of operating systems can be difficult for the servers that I cant easily containerise at the moment. For this reason I have moved over to using Terraform with Proxmox and ans... Use Python pandas NOW for your big datasets2023-03-29T17:00:00+01:00 2023-03-29T17:00:00+01:00 https://totaldebug.uk/posts/use-python-pandas-now/ Steven Marks Over the past few years I have been working on processing large analytical data sets requiring various manipulations to produce statistics for analysis and business improvement. I quickly found that processing data of this size was slow, some taking over 11 hours to process which would only get worse as the data grew. Most of the processing required multiple nested for loops and addition of c... How I host this site2023-02-25T19:22:00+00:00 2023-02-25T21:51:13+00:00 https://totaldebug.uk/posts/how-i-host-this-site/ Steven Marks My site isn’t anything special, but I thought I’d like to share how I create and host things for others who may be interested in sharing their own words with a very simple and easy to maintain structure. Motivation for hosting this site I have hosted a blog site in some form for the past 10+ years. The idea being to share my experience with others and hopefully help others with some of the is... diff --git a/sitemap.xml b/sitemap.xml index 84054347..cb1138ee 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -354,23 +354,23 @@ https://totaldebug.uk/categories/ -2023-08-08T09:20:52+01:00 +2023-08-08T09:29:11+01:00 https://totaldebug.uk/tags/ -2023-08-08T09:20:52+01:00 +2023-08-08T09:29:11+01:00 https://totaldebug.uk/archives/ -2023-08-08T09:20:52+01:00 +2023-08-08T09:29:11+01:00 https://totaldebug.uk/about/ -2023-08-08T09:20:52+01:00 +2023-08-08T09:29:11+01:00 https://totaldebug.uk/works/ -2023-08-08T09:20:52+01:00 +2023-08-08T09:29:11+01:00 https://totaldebug.uk/ diff --git a/sw.js b/sw.js index 67b87886..53d4fd3a 100644 --- a/sw.js +++ b/sw.js @@ -1 +1 @@ -self.importScripts('/assets/js/data/swcache.js'); const cacheName = 'chirpy-20230808.092127'; function verifyDomain(url) { for (const domain of allowedDomains) { const regex = RegExp(`^http(s)?:\/\/${domain}\/`); if (regex.test(url)) { return true; } } return false; } function isExcluded(url) { for (const item of denyUrls) { if (url === item) { return true; } } return false; } self.addEventListener('install', event => { event.waitUntil( caches.open(cacheName).then(cache => { return cache.addAll(resource); }) ); }); self.addEventListener('activate', event => { event.waitUntil( caches.keys().then(keyList => { return Promise.all( keyList.map(key => { if (key !== cacheName) { return caches.delete(key); } }) ); }) ); }); self.addEventListener('message', (event) => { if (event.data === 'SKIP_WAITING') { self.skipWaiting(); } }); self.addEventListener('fetch', event => { event.respondWith( caches.match(event.request).then(response => { if (response) { return response; } return fetch(event.request).then(response => { const url = event.request.url; if (event.request.method !== 'GET' || !verifyDomain(url) || isExcluded(url)) { return response; } /* see: */ let responseToCache = response.clone(); caches.open(cacheName).then(cache => { /* console.log('[sw] Caching new resource: ' + event.request.url); */ cache.put(event.request, responseToCache); }); return response; }); }) ); }); +self.importScripts('/assets/js/data/swcache.js'); const cacheName = 'chirpy-20230808.092952'; function verifyDomain(url) { for (const domain of allowedDomains) { const regex = RegExp(`^http(s)?:\/\/${domain}\/`); if (regex.test(url)) { return true; } } return false; } function isExcluded(url) { for (const item of denyUrls) { if (url === item) { return true; } } return false; } self.addEventListener('install', event => { event.waitUntil( caches.open(cacheName).then(cache => { return cache.addAll(resource); }) ); }); self.addEventListener('activate', event => { event.waitUntil( caches.keys().then(keyList => { return Promise.all( keyList.map(key => { if (key !== cacheName) { return caches.delete(key); } }) ); }) ); }); self.addEventListener('message', (event) => { if (event.data === 'SKIP_WAITING') { self.skipWaiting(); } }); self.addEventListener('fetch', event => { event.respondWith( caches.match(event.request).then(response => { if (response) { return response; } return fetch(event.request).then(response => { const url = event.request.url; if (event.request.method !== 'GET' || !verifyDomain(url) || isExcluded(url)) { return response; } /* see: */ let responseToCache = response.clone(); caches.open(cacheName).then(cache => { /* console.log('[sw] Caching new resource: ' + event.request.url); */ cache.put(event.request, responseToCache); }); return response; }); }) ); }); diff --git a/tags/index.html b/tags/index.html index 1d9df146..f8c67ac8 100644 --- a/tags/index.html +++ b/tags/index.html @@ -1 +1 @@ - Tags | TotalDebug
Home Tags
Tags
Cancel

Tags

+ Tags | TotalDebug
Home Tags
Tags
Cancel

Tags

diff --git a/works/index.html b/works/index.html index 0f691182..d485d50c 100644 --- a/works/index.html +++ b/works/index.html @@ -1 +1 @@ - Works | TotalDebug
+ Works | TotalDebug