import useWindowTitle from '../../hooks/useWindowTitle';
import { 
  Container,
  Row
} from 'react-bootstrap';

function Welcome() {

  useWindowTitle('welcome to Uniti');

  return (
        
    <>

      <p>Welcome to <strong>Uniti.js</strong>. Here are some of the most recent developments.</p>

      <Container className="border-gray-1 size-80">

      <Row className="alternate-1 p-3">

        <p><strong>2025.04.17 further updates on alternate SKUs</strong></p>

        <p>
          So, as we note in the SKU policies tool, you can create a set of alternate SKUs like this: <tt>alternate_1||alternate_2</tt>. Some of us find this notation easier to read with spaces: <tt>alternate_1 || alternate_2</tt>, so Uniti was updated today to support this format as well.
        </p>

        <p>
          We also want to bring up the possibility of alternate formats. For example, you could create a policy like <tt>109188 || 109-188</tt> if you anticipate seeing both formats in your data. However, our guiding principle is to minimize your work, so we have updated Uniti. Now, you can enter a single alternate value <tt>109188</tt> <u>or</u> <tt>109-188</tt> and Uniti will find matches for both. 😀
        </p>

        <p>
          We also wanted to point out the fact that (due to a very high degree of modularity in the Uniti architecture), as soon as you start creating alternate part numbers, you see them in many places such as the inventory lookup in new sales requests.
        </p>

      </Row>

        <Row className="alternate-1 p-3">

          <p><strong>2025.04.17 history has been restored</strong></p>

          <p>
            We have to admit we put history on the back burner for a while. It's back now, and the display is better than ever. We have plans to expand this even further, adding things like details on specific changes, etc. in the future as part of a larger update (more details as this evolves).
          </p>

        </Row>

        <Row className="alternate-1 p-3">

          <p><strong>2025.04.16 alternate SKUs</strong></p>

          <p>
            The SKU policy manager is now updated to allow level 7+ users to specify alternate SKUs for a given SKU. This is useful for managing SKUs that are interchangeable or for which you want to track inventory separately.
          </p>

          <p>
            Both toolbar search and inventory search now support alternate SKUs. Both will include alternate SKU matches in the results, and have badges to identify the alternate SKUs.
          </p>

        </Row>

        <Row className="alternate-1 p-3">

          <p><strong>2025.04.16 new inventory items and leaders</strong></p>

          <p>
            When you want to make a new inventory follow an existing item, you open advanced options and enter the leader number. As of today, if the leader exists and is available, it's name, condition and location are shown so you can be sure it's the right choice. If it exists, but is already following something else, you will see a warning message.
          </p>

        </Row>

        <Row className="alternate-1 p-3">

          <p><strong>2025.04.14 custom order labels</strong></p>

          <p>
            Up to this release, we have only referred to sales orders by their unique order number. This is now changing to accommodate the use of custom order labels if desired. This is set up as a per-company option which allows you to set a custom (and hopefully unique) label for a sales order when this meets your needs. In most places, you will see the order number followed by the custom label in brackets, if one is set.
          </p>

          <p>
            We are fully supporting custom order labels in the <u>sales order</u> space including order search <u>and</u> toolbar search. However, invoices are not using the custom labels in their operations at this time. (We will evaluate whether adding this level of complexity is warranted in the future.) For now, the invoicing tools, which share the first part of their invoice number with the underlying sales order, will show the custom label in display formats only, and will not support it in specalized search operations.
          </p>

          <p>
            Order numbers appear in a number of other areas in the sustem including inventory tools, Adhoc, etc. At this time, we are not including the custom label in these areas, but will evaluate requests to add them if/when the need arises.
          </p>

        </Row>
        
        <Row className="alternate-1 p-3">

          <p><strong>2025.04.13 better handling of "network errors"</strong></p>

          <p>
            We've made a change to the way network errors are handled in the API. Previously, the API would throw an error and stop the process. Now, the API will try up to three times to get a response. Only if all three attempts fail, will a network error be reported. The reason for this change is to allow us to continue pushing live updates to the platform during "working hours", but keep the "noise" on your screens to a minimum. Please let us know if you continue to experience "network errors" or if you find that the system is not working as expected.
          </p>

        </Row>

        <Row className="alternate-1 p-3">

          <p><strong>2025.04.13 toolbar search updates</strong></p>

          <div className="p-3">
            <ul>
              <li>
                A recent change to the search tool has caused some issues with the display of duplicate expense results. This is now fixed.
              </li>
              <li>
                While in the same area, we added expense dates to the results (since expense numbers do not have a guaranteed temporal order). This helps discern the one you want to drill down into.
              </li>
            </ul>
          </div>

        </Row>

        <Row className="alternate-1 p-3">

          <p><strong>2025.04.11 sales orders updates</strong></p>

          <p>
            Sales orders have two significant changes based on feedback from one of our users. First, the sales order items list has been greatly improved.
          </p>

          <div className="p-3">
            <ul>
              <li>
                If a specific inventory item is linked to the sales order item, a new column <b>actual item</b> will now show the item that was selected from inventory, along with serial number, and current condition. This is a direct link to inventory in case some further details are needed.
            </li>
            <li>
              Additionally, if the current company has specified a default location for sold/gone items, <u>and</u> the item is linked to the sales order item, the location is not gone yet, a new red icon next to it lets you mark it as sold/gone in one click.
            </li>
            <li>
                The <b>exchange item</b> information is now displayed in a separate column, and is only present if rate1 (exchange price) is different from rate2 (outright price).
              </li>
            </ul>
          </div>

          <p>
            The second change is that the sales order search tool has been updated to allow you to specify how many days you want to look back for orders. The default view is now all orders in the last seven days.
          </p>

        </Row>

        <Row className="alternate-1 p-3">

          <p><strong>2025.04.10 source groups updates</strong></p>

          <p>
            The major change to source groups was the addition of a batch connection tool. You can now enter a list of comma-separated item numbers directly in the source group editor, and the items will be added to the group all at once. The tool includes a live display of your proposed additions and fully supports source group history.
          </p>

          <p>
            Source group locking was also fixed and is now working as expected again.
          </p>

        </Row>
        
      </Container>

    </>

  );

}

export default Welcome;