Issues Encountered

# Windows Issues Encountered

- %windir%\system32\grouppolicy\gpt.ini corrupt.
- %windir%\system32\grouppolicy\machine\registry.pol corrupt/missing.
- Windows Update Scan Source registry values missing.

Crear objetos sysobjetos

INSERT INTO sysObjeto (
    ObjetoID,
    ObjetoNombre,
    ObjetoDescripcion,
    ObjetoTipo,
    ObjetoPadreID,
    imgSmall,
    imgLarge,
    Activo,
    PosicionID,
    LinkUrl,
    Icono,
    CssClass,
    WebForm,
    WinForm
)
VALUES
(592, 'frmPuntoVenta.405.bbiEditar', 'Editar Pedido',      2, 230, 48, 47, 1, 5, NULL, NULL, NULL, 0, 1),
(593, 'frmPuntoVenta.401.bbiEditar', 'Editar Cotización',  2, 229, 48, 47, 1, 4, NULL, NULL, NULL, 0, 1);

Classe CSS para desabilitar o botão no apex

apex_disabled

python logger with thread names

```python
import logging
import os
import sys
from collections.abc import MutableMapping
from typing import Any
import asyncio
import threading

from utils import request_id  # type: ignore


class CustomAdapter(logging.LoggerAdapter):
    """This adapter adds request ID and execution context (thread/task info) to the log message."""

    def process(
        self, msg: str, kwargs: MutableMapping[str, Any]
    ) -> tuple[str, MutableMapping[str, Any]]:
        thread_name = threading.current_th

python logger with thread names

```python
import logging
import os
import sys
from collections.abc import MutableMapping
from typing import Any
import asyncio
import threading

from utils import request_id  # type: ignore


class CustomAdapter(logging.LoggerAdapter):
    """This adapter adds request ID and execution context (thread/task info) to the log message."""

    def process(
        self, msg: str, kwargs: MutableMapping[str, Any]
    ) -> tuple[str, MutableMapping[str, Any]]:
        thread_name = threading.current_th

React notes

export default function Order () {
  return();
};

the same is

const Order = () => {
  return();
};

export default Order;

but the first one helps with debigging. 
the function name will show up in a stack trace

Get-WUVersionInfo

function Get-WUVersionInfo {
    $DISMDetails = & "${env:windir}\system32\dism.exe" /Online /Get-Packages /Format:Table | ? {$_.Contains("|") -and -not $_.StartsWith("-")} | % {($_.Split('|').Trim() -join ',')} | ConvertFrom-Csv
    $DISMDetails | Where-Object 'Package Identity' -match '^Package_for_(RollupFix|ServicingStack)' | ForEach-Object {
        $Package = $_
        $PackageName = $Package.'Package Identity'.Split('~')[0]
        $InstalledOn = $Package.'Install Time'
        swit

2411. Smallest Subarrays With Maximum Bitwise OR

You are given a 0-indexed array nums of length n, consisting of non-negative integers. For each index i from 0 to n - 1, you must determine the size of the minimum sized non-empty subarray of nums starting at i (inclusive) that has the maximum possible bitwise OR. In other words, let Bij be the bitwise OR of the subarray nums[i...j]. You need to find the smallest subarray starting at i, such that bitwise OR of this subarray is equal to max(Bik) where i <= k <= n - 1. The bitwise OR of an array is the bitwise OR of all the numbers in it. Return an integer array answer of size n where answer[i] is the length of the minimum sized subarray starting at i with maximum bitwise OR. A subarray is a contiguous non-empty sequence of elements within an array.
/**
 * @param {number[]} nums
 * @return {number[]}
 */
var smallestSubarrays = function(nums) {
    const n = nums.length;
    const answer = new Array(n).fill(1);        // Result array
    const latestSeenBit = new Array(32).fill(-1); // Tracks last index each bit is seen

    for (let i = n - 1; i >= 0; i--) {
        // Update latestSeenBit with bits from nums[i]
        for (let b = 0; b < 32; b++) {
            if ((nums[i] & (1 << b)) !== 0) {
                latestSeenBit[b] = i;
      

CORS

# CORS (Cross-Origin Resource Sharing) is a security feature implemented by web browsers that prevents web pages from making requests to 
a different domain, protocol, or port than the one serving the web page. 
This is a security measure to protect users from malicious websites.

The Problem:
When developing a React application (like yours), you typically have:
Frontend: Running on http://localhost:5173 (Vite's default dev server)
Backend API: Running on a different port, like http://localhost:

Change browser URL without reload

const newParams = new URLSearchParams({ orientation: "landscape", width: "1600", height: "2560" });
window.history.pushState({}, "", "?" + newParams.toString());

frontend React setup

## React reference

# Complete Setup Sequence 
1. npm create vite@latest . --template react    # Creates React app with Vite (includes vite + react plugin)
2. npm install --save-dev prettier              # Add Prettier
3. npm install --save-dev eslint@^9.32.0 eslint-plugin-react@^7.34.0  # Add ESLint
4. Add config files (.prettierrc, eslint.config.mjs)
5. Add scripts to package.json
6. Add to existing .gitignore(look below)
7. npm run dev                                  # Start development serv

App Portal - Computer Name Detection Method Report

$smtpFromAddress = ""
$smtpToAddresses = @(
    ''
)
$ReportName = "App Portal - Computer Name Detection Method Report"

function Get-FlexeraAppPortalNameResolution {
    [CmdletBinding()]
    param(
        [System.IO.FileInfo[]]$Path
        ,
        [string]$ClientIP
    )

    function ConvertFrom-IISLog {
        [CmdletBinding()]
        param(
            [Parameter(Mandatory = $true, Position = 0, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
   

Liquid, JS - base swiper slider

<base-swiper
      id="collection-swiper--{{ section.id }}"
      class="{% if settings.animations_reveal_on_scroll %} scroll-trigger animate--slide-in{% endif %}"
      data-config='{
        "slidesPerView": {{ section.settings.columns_desktop }},
        "autoplay": {{ section.settings.enable_autoplay }},
        "loop": {{ section.settings.enable_loop }},
        "spaceBetween": 20,
        "speed": 600,
        "centerInsufficientSlides": true,
        "delay": {{ section.settings

DRI Mini product card example

{% comment %}
  --------------------------------------------------------------------------------------------------------------
  SUPPORTED PARAMETERS
  --------------------------------------------------------------------------------------------------------------

  * product *required
  * current_variant
{% endcomment %}

{%- if product != blank -%}
  {%- liquid
    unless current_variant
      assign current_variant = product.selected_or_first_available_variant
    endunless

    assign product

Networking

sudo ip route add default via 192.168.254.9