Punk-Queue
view release on metacpan or search on metacpan
lib/Punk/Plugin/Queue/assets/funky/js/35-table.js view on Meta::CPAN
* Get shareable filter URL
* @returns {string}
*/
TableInstance.prototype.getFilterUrl = function() {
var params = this.getAdvancedFilters();
var encoded = btoa(JSON.stringify(params));
return window.location.origin + window.location.pathname + '#filter=' + encoded;
};
/**
* Copy filter URL to clipboard
* @returns {Promise}
*/
TableInstance.prototype.copyFilterUrl = function() {
var url = this.getFilterUrl();
var self = this;
if (navigator.clipboard && navigator.clipboard.writeText) {
return navigator.clipboard.writeText(url).then(function() {
if (Funky.Announce) {
Funky.Announce.success('Filter URL copied to clipboard');
}
self._emit('filterUrlCopied', { url: url });
});
}
// Fallback for older browsers
var textarea = document.createElement('textarea');
textarea.value = url;
textarea.style.position = 'fixed';
textarea.style.opacity = '0';
document.body.appendChild(textarea);
textarea.select();
try {
document.execCommand('copy');
if (Funky.Announce) {
Funky.Announce.success('Filter URL copied to clipboard');
}
this._emit('filterUrlCopied', { url: url });
} catch (e) {
console.warn('[Funky.Table] Failed to copy URL:', e);
}
document.body.removeChild(textarea);
return Promise.resolve();
};
// =========================================================================
( run in 3.086 seconds using v1.01-cache-2.11-cpan-84e82930d8c )