status-bar@0.1.1
scrapboxのstatus barと大体同じPreact Component
code:script.js
import {html} from '../htm@3.0.4%2Fpreact/script.js';
import register from '../preact-custom-element@4.2.1/script.js';
const statusBar = () => {
return html`
<style>
:host {
display: inline-block;
position: absolute;
cursor: default;
}
top: 0;
left: 0;
}
border-right: 1px solid var(--status-bar-border-color, #a9aaaf); border-bottom: 1px solid var(--status-bar-border-color, #a9aaaf); }
border-bottom-right-radius: 3px;
}
top: 0;
right: 0;
}
border-left: 1px solid var(--status-bar-border-color, #a9aaaf); border-bottom: 1px solid var(--status-bar-border-color, #a9aaaf); }
border-bottom-left-radius: 3px;
}
bottom: 0;
right: 0;
}
border-top: 1px solid var(--status-bar-border-color, #a9aaaf); border-left: 1px solid var(--status-bar-border-color, #a9aaaf); }
border-top-left-radius: 3px;
}
bottom: 0;
left: 0;
}
border-right: 1px solid var(--status-bar-border-color, #a9aaaf); border-top: 1px solid var(--status-bar-border-color, #a9aaaf); }
border-top-right-radius: 3px;
}
</style>
<slot />
`;
};
const tag = 'x-userscript-status-bar';
export const StatusBar = ({children, orientation}) =>
html<${tag} orientation="${orientation}">${children}</${tag}>;
test code
code:js
import('/api/code/programming-notes/status-bar@0.1.1/test.js');
code:test.js
import {html, render} from '../htm@3.0.4%2Fpreact/script.js';
import {StatusBar} from './script.js';
render(html<${StatusBar} orientation="top-left"><span>status</span><//>, document.getElementById('app-container').firstElementChild);