Remove unused blade settings pages not linked from UI Convert remaining frontend pages to SPA actions Convert settings user_settings and general to SPA actions Convert settings profile pages to SPA actions Convert contacts and projects add/edit pages to SPA actions Convert clients add/edit page to SPA action with loading pattern Refactor component scoped IDs from $id to $sid Fix jqhtml comment syntax and implement universal error component system Update all application code to use new unified error system Remove all backwards compatibility - unified error system complete Phase 5: Remove old response classes Phase 3-4: Ajax response handler sends new format, old helpers deprecated Phase 2: Add client-side unified error foundation Phase 1: Add server-side unified error foundation Add unified Ajax error response system with constants 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
18 lines
2.6 KiB
JavaScript
Executable File
18 lines
2.6 KiB
JavaScript
Executable File
"use strict";
|
|
|
|
class Dropdown_Menu extends Component {
|
|
on_ready() {
|
|
// Wrap bare text children in <li><a> structure
|
|
const $menu = this.$sid('menu');
|
|
$menu.children().each(function () {
|
|
const $child = $(this);
|
|
if ($child.prop('tagName') !== 'LI') {
|
|
const text = $child.text();
|
|
const href = $child.attr('href') || '#';
|
|
const $li = $('<li>').append($('<a>').addClass('dropdown-item').attr('href', href).text(text));
|
|
$child.replaceWith($li);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJEcm9wZG93bl9NZW51IiwiSnFodG1sX0NvbXBvbmVudCIsIm9uX3JlYWR5IiwiJG1lbnUiLCIkaWQiLCJjaGlsZHJlbiIsImVhY2giLCIkY2hpbGQiLCIkIiwicHJvcCIsInRleHQiLCJocmVmIiwiYXR0ciIsIiRsaSIsImFwcGVuZCIsImFkZENsYXNzIiwicmVwbGFjZVdpdGgiXSwic291cmNlcyI6WyJyc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9Ecm9wZG93bl9NZW51LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImNsYXNzIERyb3Bkb3duX01lbnUgZXh0ZW5kcyBKcWh0bWxfQ29tcG9uZW50IHtcbiAgICBvbl9yZWFkeSgpIHtcbiAgICAgICAgLy8gV3JhcCBiYXJlIHRleHQgY2hpbGRyZW4gaW4gPGxpPjxhPiBzdHJ1Y3R1cmVcbiAgICAgICAgY29uc3QgJG1lbnUgPSB0aGlzLiRpZCgnbWVudScpO1xuICAgICAgICAkbWVudS5jaGlsZHJlbigpLmVhY2goZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICBjb25zdCAkY2hpbGQgPSAkKHRoaXMpO1xuICAgICAgICAgICAgaWYgKCRjaGlsZC5wcm9wKCd0YWdOYW1lJykgIT09ICdMSScpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0ZXh0ID0gJGNoaWxkLnRleHQoKTtcbiAgICAgICAgICAgICAgICBjb25zdCBocmVmID0gJGNoaWxkLmF0dHIoJ2hyZWYnKSB8fCAnIyc7XG4gICAgICAgICAgICAgICAgY29uc3QgJGxpID0gJCgnPGxpPicpLmFwcGVuZChcbiAgICAgICAgICAgICAgICAgICAgJCgnPGE+JykuYWRkQ2xhc3MoJ2Ryb3Bkb3duLWl0ZW0nKS5hdHRyKCdocmVmJywgaHJlZikudGV4dCh0ZXh0KVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgJGNoaWxkLnJlcGxhY2VXaXRoKCRsaSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7QUFBQSxNQUFNQSxhQUFhLFNBQVNDLGdCQUFnQixDQUFDO0VBQ3pDQyxRQUFRQSxDQUFBLEVBQUc7SUFDUDtJQUNBLE1BQU1DLEtBQUssR0FBRyxJQUFJLENBQUNDLEdBQUcsQ0FBQyxNQUFNLENBQUM7SUFDOUJELEtBQUssQ0FBQ0UsUUFBUSxDQUFDLENBQUMsQ0FBQ0MsSUFBSSxDQUFDLFlBQVc7TUFDN0IsTUFBTUMsTUFBTSxHQUFHQyxDQUFDLENBQUMsSUFBSSxDQUFDO01BQ3RCLElBQUlELE1BQU0sQ0FBQ0UsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLElBQUksRUFBRTtRQUNqQyxNQUFNQyxJQUFJLEdBQUdILE1BQU0sQ0FBQ0csSUFBSSxDQUFDLENBQUM7UUFDMUIsTUFBTUMsSUFBSSxHQUFHSixNQUFNLENBQUNLLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxHQUFHO1FBQ3ZDLE1BQU1DLEdBQUcsR0FBR0wsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDTSxNQUFNLENBQ3hCTixDQUFDLENBQUMsS0FBSyxDQUFDLENBQUNPLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQ0gsSUFBSSxDQUFDLE1BQU0sRUFBRUQsSUFBSSxDQUFDLENBQUNELElBQUksQ0FBQ0EsSUFBSSxDQUNuRSxDQUFDO1FBQ0RILE1BQU0sQ0FBQ1MsV0FBVyxDQUFDSCxHQUFHLENBQUM7TUFDM0I7SUFDSixDQUFDLENBQUM7RUFDTjtBQUNKIiwiaWdub3JlTGlzdCI6W119
|