Compare commits

...

11 Commits

Author SHA1 Message Date
David Legrand
aaf76c2ec3
Merge 712e670f9d14a409e4b50b7303403f92bb576bfb into c6de4b5b6b1ec04647b0235e9c8b1158b1d58c09 2024-08-24 23:42:51 +02:00
August
c6de4b5b6b
docs: update image examples with Lorem Picsum (#445)
Some checks failed
Deploy Hugo site to Pages / build (push) Has been cancelled
Deploy Hugo site to Pages / deploy (push) Has been cancelled
2024-08-22 10:05:30 +01:00
Xin
66d2bf57ba
docs: additional shortcodes (#441)
Some checks failed
Deploy Hugo site to Pages / build (push) Has been cancelled
Deploy Hugo site to Pages / deploy (push) Has been cancelled
* Create pdf.md

* Update pdf.md

* Escape PDF shortcode examples

* Remove markdown syntax highlight

* chore: update Hugo and Go versions for deployment

* docs: add additional shortcodes

* chore: re-compile

---------

Co-authored-by: Shahar Naveh <50263213+ShaharNaveh@users.noreply.github.com>
2024-08-18 16:34:48 +01:00
Xin
526be88d7b
fix: tabs styling in steps shortcode (#440)
* fix: tabs styling in steps shortcode

* docs: add notes for intended usage
2024-08-18 15:38:06 +01:00
Xin
2863a3a029
fix: remove deprecated site.GoogleAnalytics (#438)
Some checks are pending
Deploy Hugo site to Pages / build (push) Waiting to run
Deploy Hugo site to Pages / deploy (push) Blocked by required conditions
* fix: remove deprecated site.GoogleAnalytics

* ci: bump netlify Hugo version
2024-08-18 14:41:40 +01:00
Erik Skopp
852a07b15e
fix: remove deprecated google analytics reference in head.html (#435)
ERROR deprecated: .Site.GoogleAnalytics was deprecated in Hugo v0.120.0 and will be removed in Hugo 0.133.0. Use .Site.Config.Services.GoogleAnalytics.ID instead.
2024-08-18 12:31:50 +01:00
David Legrand
712e670f9d fix: add hx- prefix to classes 2024-04-04 21:47:57 +02:00
Xin
2df115a195
fix: add missing page context for params access 2024-04-02 21:15:03 +01:00
Xin
365d78da13
chore: remove unused var 2024-04-02 21:09:43 +01:00
David Legrand
f87f19fb74 Fixes after review
- `where` > `location`
- Edit link > in a partial
2024-04-02 12:31:49 +02:00
David Legrand
795755bf9b feat: add configurable edit link position
- Add a `where` parameter to `editURL`
- Allow user to choose between `toc` (default) and `single`
- Add to single through last-updated partial
2024-04-01 12:58:43 +02:00
19 changed files with 136 additions and 67 deletions

View File

@ -1,5 +1,5 @@
/* /*
! tailwindcss v3.4.9 | MIT License | https://tailwindcss.com ! tailwindcss v3.4.10 | MIT License | https://tailwindcss.com
*//* *//*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4) 1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116) 2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)

View File

@ -54,7 +54,7 @@ jobs:
build: build:
runs-on: ubuntu-latest runs-on: ubuntu-latest
env: env:
HUGO_VERSION: 0.121.2 HUGO_VERSION: 0.131.0
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v4 uses: actions/checkout@v4
@ -64,7 +64,7 @@ jobs:
- name: Setup Go - name: Setup Go
uses: actions/setup-go@v5 uses: actions/setup-go@v5
with: with:
go-version: '1.21' go-version: '1.22'
- name: Setup Pages - name: Setup Pages
id: pages id: pages
uses: actions/configure-pages@v4 uses: actions/configure-pages@v4
@ -146,7 +146,7 @@ For more details, check out:
3. If you are not using [hextra-starter-template][hextra-starter-template], configure the following manually: 3. If you are not using [hextra-starter-template][hextra-starter-template], configure the following manually:
- Configure the Build command to `hugo --gc --minify` - Configure the Build command to `hugo --gc --minify`
- Specify the Publish directory to `public` - Specify the Publish directory to `public`
- Add Environment variable `HUGO_VERSION` and set to `0.119.0` - Add Environment variable `HUGO_VERSION` and set to `0.132.2`
4. Deploy! 4. Deploy!
Check [Hugo on Netlify](https://docs.netlify.com/integrations/frameworks/hugo/) for more details. Check [Hugo on Netlify](https://docs.netlify.com/integrations/frameworks/hugo/) for more details.

View File

@ -117,18 +117,18 @@ Hugo از سینتکس [مارک‌داون](https://en.wikipedia.org/wiki/Markd
### عکس‌ها ### عکس‌ها
![landscape](https://source.unsplash.com/featured/800x600?landscape) ![landscape](https://picsum.photos/800/600)
```markdown {filename=Markdown} ```markdown {filename=Markdown}
![landscape](https://source.unsplash.com/featured/800x600?landscape) ![landscape](https://picsum.photos/800/600)
``` ```
با توضیحات: با توضیحات:
![landscape](https://source.unsplash.com/featured/800x600?landscape "یک چشم‌انداز Unsplash") ![landscape](https://picsum.photos/800/600 "یک چشم‌انداز Unsplash")
```markdown {filename=Markdown} ```markdown {filename=Markdown}
![landscape](https://source.unsplash.com/featured/800x600?landscape "یک چشم‌انداز Unsplash") ![landscape](https://picsum.photos/800/600 "یک چشم‌انداز Unsplash")
``` ```
## پیکربندی ## پیکربندی

View File

@ -117,18 +117,18 @@ Tables aren't part of the core Markdown spec, but Hugo supports them out-of-the-
### Images ### Images
![landscape](https://source.unsplash.com/featured/800x600?landscape) ![landscape](https://picsum.photos/800/600)
```markdown {filename=Markdown} ```markdown {filename=Markdown}
![landscape](https://source.unsplash.com/featured/800x600?landscape) ![landscape](https://picsum.photos/800/600)
``` ```
With caption: With caption:
![landscape](https://source.unsplash.com/featured/800x600?landscape "Unsplash Landscape") ![landscape](https://picsum.photos/800/600 "Unsplash Landscape")
```markdown {filename=Markdown} ```markdown {filename=Markdown}
![landscape](https://source.unsplash.com/featured/800x600?landscape "Unsplash Landscape") ![landscape](https://picsum.photos/800/600 "Unsplash Landscape")
``` ```
## Configuration ## Configuration

View File

@ -117,18 +117,18 @@ Hugo 支持 [Markdown](https://en.wikipedia.org/wiki/Markdown) 来书写内容
### 图片 ### 图片
![landscape](https://source.unsplash.com/featured/800x600?landscape) ![landscape](https://picsum.photos/800/600)
```markdown {filename=Markdown} ```markdown {filename=Markdown}
![landscape](https://source.unsplash.com/featured/800x600?landscape) ![landscape](https://picsum.photos/800/600)
``` ```
带有标题: 带有标题:
![landscape](https://source.unsplash.com/featured/800x600?landscape "Unsplash Landscape") ![landscape](https://picsum.photos/800/600 "Unsplash Landscape")
```markdown {filename=Markdown} ```markdown {filename=Markdown}
![landscape](https://source.unsplash.com/featured/800x600?landscape "Unsplash Landscape") ![landscape](https://picsum.photos/800/600 "Unsplash Landscape")
``` ```
## 配置 ## 配置

View File

@ -9,7 +9,6 @@ next: /docs/guide/shortcodes/callout
Hextra provides a collection of beautiful shortcodes to enhance your content. Hextra provides a collection of beautiful shortcodes to enhance your content.
{{< cards >}} {{< cards >}}
{{< card link="callout" title="Callout" icon="warning" >}} {{< card link="callout" title="Callout" icon="warning" >}}
{{< card link="cards" title="Cards" icon="card" >}} {{< card link="cards" title="Cards" icon="card" >}}
@ -19,3 +18,11 @@ Hextra provides a collection of beautiful shortcodes to enhance your content.
{{< card link="steps" title="Steps" icon="one" >}} {{< card link="steps" title="Steps" icon="one" >}}
{{< card link="tabs" title="Tabs" icon="collection" >}} {{< card link="tabs" title="Tabs" icon="collection" >}}
{{< /cards >}} {{< /cards >}}
<div style="padding-top:4rem"></div>
Additional shortcodes provided by Hugo and Hextra:
{{< cards >}}
{{< card link="others" title="Others" icon="view-grid" >}}
{{< /cards >}}

View File

@ -0,0 +1,43 @@
---
title: Other Shortcodes
linkTitle: Others
sidebar:
exclude: true
---
{{< callout emoji="" >}}
Some of these are Hugo built-in shortcodes.
These shortcodes are considered less stable and may be changed anytime.
{{< /callout >}}
## YouTube
Embed a YouTube video.
```
{{</* youtube VIDEO_ID */>}}
```
Result:
{{< youtube id=dQw4w9WgXcQ loading=lazy >}}
For more information, see [Hugo's YouTube Shortcode](https://gohugo.io/content-management/shortcodes/#youtube).
## PDF
With PDF shortcode, you can embed a PDF file in your content.
```
{{</* pdf "https://example.com/sample.pdf" */>}}
```
You can also place the PDF file in your project directory and use the relative path.
```
{{</* pdf "path/to/file.pdf" */>}}
```
Example:
{{< pdf "https://upload.wikimedia.org/wikipedia/commons/1/13/Example.pdf" >}}

View File

@ -25,6 +25,11 @@ This is the third step.
## Usage ## Usage
{{< callout emoji="" >}}
Please note that this shortcode is intended **only for Markdown content**.
If you put HTML content or other shortcodes as step content, it may not render as expected.
{{< /callout >}}
Put Markdown h3 header within `steps` shortcode. Put Markdown h3 header within `steps` shortcode.
``` ```

View File

@ -142,6 +142,7 @@ params:
editURL: editURL:
enable: true enable: true
location: "toc" # single | toc
base: "https://github.com/imfing/hextra/edit/main/exampleSite/content" base: "https://github.com/imfing/hextra/edit/main/exampleSite/content"
blog: blog:

View File

@ -27,6 +27,7 @@
"head", "head",
"hr", "hr",
"html", "html",
"iframe",
"img", "img",
"input", "input",
"kbd", "kbd",
@ -221,6 +222,7 @@
"hextra-filetree", "hextra-filetree",
"hextra-filetree-folder", "hextra-filetree-folder",
"hextra-footer", "hextra-footer",
"hextra-pdf",
"hextra-scrollbar", "hextra-scrollbar",
"hextra-sidebar-collapsible-button", "hextra-sidebar-collapsible-button",
"hextra-tabs-panel", "hextra-tabs-panel",

View File

@ -0,0 +1,28 @@
{{- $editThisPage := (T "editThisPage") | default "Edit this page"}}
{{- $context := .context -}}
{{- $linkClass := "hx-mb-4 hx-block hx-text-xs hx-text-gray-500 ltr:hx-text-right rtl:hx-text-left dark:hx-text-gray-400" -}}
{{- if and (site.Params.editURL.enable) (eq site.Params.editURL.location .source) -}}
{{- $editURL := site.Params.editURL.base | default "" -}}
{{- with $context.Params.editURL -}}
{{/* if `editURL` is set in the front matter */}}
{{- $editURL = . -}}
{{- else -}}
{{- with $context.File -}}
{{/* `.FileInfo.Meta.SourceRoot` is a Hugo internal field, e.g. `/path/to/repo/content/en/` */}}
{{- $sourceDir := replace (strings.TrimPrefix .FileInfo.Meta.BaseDir .FileInfo.Meta.SourceRoot) "\\" "/" -}}
{{- $sourceDir = strings.TrimPrefix "/content" $sourceDir -}}
{{- $path := replace .Path "\\" "/" -}}
{{- $editURL = urls.JoinPath $editURL $sourceDir $path -}}
{{- end -}}
{{- end -}}
{{- if eq site.Params.editURL.location "toc" -}}
{{- $linkClass = "hx-text-xs hx-font-medium hx-text-gray-500 hover:hx-text-gray-900 dark:hx-text-gray-400 dark:hover:hx-text-gray-100 contrast-more:hx-text-gray-800 contrast-more:dark:hx-text-gray-50" -}}
{{- end -}}
<a class="{{ $linkClass }}" href="{{ $editURL }}" target="_blank" rel="noreferer">{{ $editThisPage }}</a>
{{- end -}}

View File

@ -1,9 +1,12 @@
{{- $lastUpdated := (T "lastUpdated") | default "Last updated on" -}} {{- $lastUpdated := (T "lastUpdated") | default "Last updated on" -}}
{{- if site.Params.displayUpdatedDate -}} {{- if site.Params.displayUpdatedDate -}}
<div class="hx-mt-12 hx-mb-8 hx-block hx-text-xs hx-text-gray-500 ltr:hx-text-right rtl:hx-text-left dark:hx-text-gray-400">
{{ partial "components/edit-url.html" (dict "source" "single" "context" .) }}
{{- with .Lastmod -}} {{- with .Lastmod -}}
{{ $datetime := (time.Format "2006-01-02T15:04:05.000Z" .) }} {{ $datetime := (time.Format "2006-01-02T15:04:05.000Z" .) }}
<div class="hx-mt-12 hx-mb-8 hx-block hx-text-xs hx-text-gray-500 ltr:hx-text-right rtl:hx-text-left dark:hx-text-gray-400">{{ $lastUpdated }} <time datetime="{{ $datetime }}">{{ partial "utils/format-date" . }}</time></div> <div class="hx-mt-4">{{ $lastUpdated }} <time datetime="{{ $datetime }}">{{ partial "utils/format-date" . }}</time></div>
</div>
{{- else -}} {{- else -}}
<div class="hx-mt-16"></div> <div class="hx-mt-16"></div>
{{- end -}} {{- end -}}

View File

@ -1,10 +1,4 @@
{{/* site.GoogleAnalytics is deprecated in Hugo v0.120.0 */}} {{- with site.Config.Services.GoogleAnalytics.ID }}
{{/* it will be removed in a future version */}}
{{- $gtagID := "" -}}
{{- with site.GoogleAnalytics -}}{{ $gtagID = . }}{{- end -}}
{{- with site.Config.Services.GoogleAnalytics.ID -}}{{ $gtagID = . }}{{- end -}}
{{- with $gtagID }}
<!-- Global site tag (gtag.js) - Google Analytics --> <!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id={{ . }}"></script> <script async src="https://www.googletagmanager.com/gtag/js?id={{ . }}"></script>
<script> <script>

View File

@ -30,12 +30,11 @@
{{ partialCached "head-css.html" . }} {{ partialCached "head-css.html" . }}
<!-- Google Analytics --> <!-- Google Analytics -->
{{- if and (eq hugo.Environment "production") (or .Site.GoogleAnalytics .Site.Config.Services.GoogleAnalytics.ID) }} {{- if and (eq hugo.Environment "production") .Site.Config.Services.GoogleAnalytics.ID }}
<link rel="preconnect" href="https://www.googletagmanager.com" crossorigin /> <link rel="preconnect" href="https://www.googletagmanager.com" crossorigin />
{{ partial "google-analytics.html" . }} {{ partial "google-analytics.html" . }}
{{- end }} {{- end }}
<script> <script>
/* Initialize light/dark mode */ /* Initialize light/dark mode */

View File

@ -24,22 +24,7 @@
{{/* TOC bottom part */}} {{/* TOC bottom part */}}
<div class="{{ $borderClass }} hx-sticky hx-bottom-0 hx-flex hx-flex-col hx-items-start hx-gap-2 hx-pb-8 dark:hx-border-neutral-800 contrast-more:hx-border-t contrast-more:hx-border-neutral-400 contrast-more:hx-shadow-none contrast-more:dark:hx-border-neutral-400"> <div class="{{ $borderClass }} hx-sticky hx-bottom-0 hx-flex hx-flex-col hx-items-start hx-gap-2 hx-pb-8 dark:hx-border-neutral-800 contrast-more:hx-border-t contrast-more:hx-border-neutral-400 contrast-more:hx-shadow-none contrast-more:dark:hx-border-neutral-400">
{{- if site.Params.editURL.enable -}} {{ partial "components/edit-url.html" (dict "source" "toc" "context" .) }}
{{- $editURL := site.Params.editURL.base | default "" -}}
{{- with .Params.editURL -}}
{{/* if `editURL` is set in the front matter */}}
{{- $editURL = . -}}
{{- else -}}
{{- with .File -}}
{{/* `.FileInfo.Meta.SourceRoot` is a Hugo internal field, e.g. `/path/to/repo/content/en/` */}}
{{- $sourceDir := replace (strings.TrimPrefix .FileInfo.Meta.BaseDir .FileInfo.Meta.SourceRoot) "\\" "/" -}}
{{- $sourceDir = strings.TrimPrefix "/content" $sourceDir -}}
{{- $path := replace .Path "\\" "/" -}}
{{- $editURL = urls.JoinPath $editURL $sourceDir $path -}}
{{- end -}}
{{- end -}}
<a class="hx-text-xs hx-font-medium hx-text-gray-500 hover:hx-text-gray-900 dark:hx-text-gray-400 dark:hover:hx-text-gray-100 contrast-more:hx-text-gray-800 contrast-more:dark:hx-text-gray-50" href="{{ $editURL }}" target="_blank" rel="noreferer">{{ $editThisPage }}</a>
{{- end -}}
{{/* Scroll To Top */}} {{/* Scroll To Top */}}
<button aria-hidden="true" id="backToTop" onClick="scrollUp();" class="hx-transition-all hx-duration-75 hx-opacity-0 hx-text-xs hx-font-medium hx-text-gray-500 hover:hx-text-gray-900 dark:hx-text-gray-400 dark:hover:hx-text-gray-100 contrast-more:hx-text-gray-800 contrast-more:dark:hx-text-gray-50"> <button aria-hidden="true" id="backToTop" onClick="scrollUp();" class="hx-transition-all hx-duration-75 hx-opacity-0 hx-text-xs hx-font-medium hx-text-gray-500 hover:hx-text-gray-900 dark:hx-text-gray-400 dark:hover:hx-text-gray-100 contrast-more:hx-text-gray-800 contrast-more:dark:hx-text-gray-50">
<span> <span>

View File

@ -4,8 +4,9 @@
class="hextra-tabs-panel hx-rounded hx-pt-6 hx-hidden data-[state=selected]:hx-block" class="hextra-tabs-panel hx-rounded hx-pt-6 hx-hidden data-[state=selected]:hx-block"
id="tabs-panel-{{ .Ordinal }}" id="tabs-panel-{{ .Ordinal }}"
role="tabpanel" role="tabpanel"
{{ if eq .Ordinal $defaultIndex }}tabindex="0"{{ end }} {{- if eq .Ordinal $defaultIndex }} tabindex="0" {{ end -}}
{{ if eq .Ordinal $defaultIndex }}data-state="selected"{{ end }} {{- if eq .Ordinal $defaultIndex }} data-state="selected" {{ end -}}
> >
{{ .InnerDeindent | markdownify }} {{- .InnerDeindent | markdownify -}}
</div> </div>
{{- /* Drop trailing newlines */ -}}

View File

@ -13,9 +13,9 @@
role="tab" role="tab"
type="button" type="button"
aria-controls="tabs-panel-{{ $i }}" aria-controls="tabs-panel-{{ $i }}"
{{ if eq $i $defaultIndex }}aria-selected="true"{{ end }} {{- if eq $i $defaultIndex }} aria-selected="true" {{ end -}}
{{ if eq $i $defaultIndex }}tabindex="0"{{ end }} {{- if eq $i $defaultIndex }} tabindex="0" {{ end -}}
{{ if eq $i $defaultIndex }}data-state="selected"{{ end }} {{- if eq $i $defaultIndex }} data-state="selected"{{ end -}}
> >
{{- $item -}} {{- $item -}}
</button> </button>
@ -23,5 +23,6 @@
</div> </div>
</div> </div>
<div> <div>
{{ .Inner }} {{- .Inner -}}
</div> </div>
{{- /* Drop trailing newlines */ -}}

View File

@ -7,6 +7,6 @@ command = "cd exampleSite && hugo --gc --minify --themesDir ../.. -b ${DEPLOY_PR
ignore = "false" ignore = "false"
[build.environment] [build.environment]
HUGO_VERSION = "0.126.1" HUGO_VERSION = "0.132.2"
GO_VERSION = "1.22.3" GO_VERSION = "1.22.3"
NODE_VERSION = "22.2.0" NODE_VERSION = "22.2.0"

24
package-lock.json generated
View File

@ -582,9 +582,9 @@
"license": "MIT" "license": "MIT"
}, },
"node_modules/electron-to-chromium": { "node_modules/electron-to-chromium": {
"version": "1.5.6", "version": "1.5.11",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.6.tgz", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.11.tgz",
"integrity": "sha512-jwXWsM5RPf6j9dPYzaorcBSUg6AiqocPEyMpkchkvntaH9HGfOOMZwxMJjDY/XEs3T5dM7uyH1VhRMkqUU9qVw==", "integrity": "sha512-R1CccCDYqndR25CaXFd6hp/u9RaaMcftMkphmvuepXr5b1vfLkRml6aWVeBhXJ7rbevHkKEMJtz8XqPf7ffmew==",
"dev": true, "dev": true,
"license": "ISC" "license": "ISC"
}, },
@ -815,9 +815,9 @@
} }
}, },
"node_modules/ignore": { "node_modules/ignore": {
"version": "5.3.1", "version": "5.3.2",
"resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
"integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==",
"dev": true, "dev": true,
"license": "MIT", "license": "MIT",
"engines": { "engines": {
@ -1376,9 +1376,9 @@
} }
}, },
"node_modules/postcss-selector-parser": { "node_modules/postcss-selector-parser": {
"version": "6.1.1", "version": "6.1.2",
"resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.1.tgz", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz",
"integrity": "sha512-b4dlw/9V8A71rLIDsSwVmak9z2DuBUB7CA1/wSdelNEzqsjoSPeADTWNO09lpH49Diy3/JIZ2bSPB1dI3LJCHg==", "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==",
"dev": true, "dev": true,
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
@ -1745,9 +1745,9 @@
} }
}, },
"node_modules/tailwindcss": { "node_modules/tailwindcss": {
"version": "3.4.9", "version": "3.4.10",
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.9.tgz", "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.10.tgz",
"integrity": "sha512-1SEOvRr6sSdV5IDf9iC+NU4dhwdqzF4zKKq3sAbasUWHEM6lsMhX+eNN5gkPx1BvLFEnZQEUFbXnGj8Qlp83Pg==", "integrity": "sha512-KWZkVPm7yJRhdu4SRSl9d4AK2wM3a50UsvgHZO7xY77NQr2V+fIrEuoDGQcbvswWvFGbS2f6e+jC/6WJm1Dl0w==",
"dev": true, "dev": true,
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {