diff options
| author | syuilo <syuilotan@yahoo.co.jp> | 2018-02-05 04:29:09 +0900 |
|---|---|---|
| committer | syuilo <syuilotan@yahoo.co.jp> | 2018-02-05 04:29:09 +0900 |
| commit | d14a7922b99c4e7f0399acd8000126020d4a3b0f (patch) | |
| tree | e34bd004b0f43815e97aa55874617827e3ff4ab2 /src | |
| parent | Merge remote-tracking branch 'refs/remotes/origin/master' into vue-#972 (diff) | |
| download | sharkey-d14a7922b99c4e7f0399acd8000126020d4a3b0f.tar.gz sharkey-d14a7922b99c4e7f0399acd8000126020d4a3b0f.tar.bz2 sharkey-d14a7922b99c4e7f0399acd8000126020d4a3b0f.zip | |
wip
Diffstat (limited to 'src')
| -rw-r--r-- | src/web/app/common/tags/url.tag | 54 | ||||
| -rw-r--r-- | src/web/app/common/tags/url.vue | 63 |
2 files changed, 63 insertions, 54 deletions
diff --git a/src/web/app/common/tags/url.tag b/src/web/app/common/tags/url.tag deleted file mode 100644 index 2690afc5da..0000000000 --- a/src/web/app/common/tags/url.tag +++ /dev/null @@ -1,54 +0,0 @@ -<mk-url> - <a href={ url } target={ opts.target }> - <span class="schema">{ schema }//</span> - <span class="hostname">{ hostname }</span> - <span class="port" if={ port != '' }>:{ port }</span> - <span class="pathname" if={ pathname != '' }>{ pathname }</span> - <span class="query">{ query }</span> - <span class="hash">{ hash }</span> - %fa:external-link-square-alt% - </a> - <style> - :scope - word-break break-all - - > a - > [data-fa] - padding-left 2px - font-size .9em - font-weight 400 - font-style normal - - > .schema - opacity 0.5 - - > .hostname - font-weight bold - - > .pathname - opacity 0.8 - - > .query - opacity 0.5 - - > .hash - font-style italic - - </style> - <script> - this.url = this.opts.href; - - this.on('before-mount', () => { - const url = new URL(this.url); - - this.schema = url.protocol; - this.hostname = url.hostname; - this.port = url.port; - this.pathname = url.pathname; - this.query = url.search; - this.hash = url.hash; - - this.update(); - }); - </script> -</mk-url> diff --git a/src/web/app/common/tags/url.vue b/src/web/app/common/tags/url.vue new file mode 100644 index 0000000000..fdc8a1cb2a --- /dev/null +++ b/src/web/app/common/tags/url.vue @@ -0,0 +1,63 @@ +<template> + <a :href="url" :target="target"> + <span class="schema">{{ schema }}//</span> + <span class="hostname">{{ hostname }}</span> + <span class="port" v-if="port != ''">:{{ port }}</span> + <span class="pathname" v-if="pathname != ''">{{ pathname }}</span> + <span class="query">{{ query }}</span> + <span class="hash">{{ hash }}</span> + %fa:external-link-square-alt% + </a> +</template> + +<script lang="typescript"> + export default { + props: ['url', 'target'], + created: function() { + const url = new URL(this.url); + + this.schema = url.protocol; + this.hostname = url.hostname; + this.port = url.port; + this.pathname = url.pathname; + this.query = url.search; + this.hash = url.hash; + }, + data: { + schema: null, + hostname: null, + port: null, + pathname: null, + query: null, + hash: null + } + }; +</script> + +<style lang="stylus" scoped> + :scope + word-break break-all + + > a + > [data-fa] + padding-left 2px + font-size .9em + font-weight 400 + font-style normal + + > .schema + opacity 0.5 + + > .hostname + font-weight bold + + > .pathname + opacity 0.8 + + > .query + opacity 0.5 + + > .hash + font-style italic + +</style> |