fonteva-design-guide
Version:
## Dev, Build and Test
39 lines (35 loc) • 1.27 kB
JavaScript
import { LightningElement, api, track } from 'lwc';
import { loadScript, loadStyle } from 'lightning/platformResourceLoader';
import PORTAL from '@salesforce/resourceUrl/PFM_Portal';
import SLDS_FRAMEWORK from '@salesforce/resourceUrl/PFM_Base';
export default class Snippet extends LightningElement {
adding;
copyState = 'Copy';
connectedCallback() {
this.loadDependentStyles();
// Prism.highlightAll();
}
renderedCallback() {
const code = this.template.querySelector('code');
this.adding = code.outerText;
}
toClipboard() {
const code = this.template.querySelector('code'),
str = this.template.querySelector('textarea'),
self = this;
this.copyState = 'Copied';
str.select();
document.execCommand('copy');
str.blur();
setTimeout(function () {
self.copyState = 'Copy';
}, 1500);
}
loadDependentStyles() {
if (!window.pfmSnippetStylesLoaded) {
loadStyle(this, SLDS_FRAMEWORK + '/css/prism.css');
loadScript(this, SLDS_FRAMEWORK + '/js/prism.js');
window.pfmSnippetStylesLoaded = true;
}
}
}