This is the aggregated changelog for 3.4 that includes changes landed in all alpha and beta pre-releases. For changelog of individual pre-releases, please check here.
import axios, { | |
AxiosError, | |
AxiosInstance, | |
AxiosRequestConfig, | |
AxiosResponse, | |
InternalAxiosRequestConfig, | |
} from "axios"; | |
import { API_BASE_URI } from "../config/apiConfig"; | |
import { ErrorResponse, FetchResponse } from "@sapience/common"; |
In recent years, there has been an increasing focus on improving the developer experience (DX). Tools and frameworks have been striving to enhance it. I believe everyone already knows Vite
, a tool that has gained significant popularity in the frontend build tooling in recent years. It's fast, but that's not its only advantage.Vite's ecosystem has seen rapid growth due to its user-friendly and highly extensible plugin design mechanism.This allows developers to quickly integrate Vite into their tools and frameworks. Anthony Fu opensourced the Nuxt DevTools on Vue Amsterdam 2023,a new tool to help you understand your Nuxt app and improve the developer experience even further. It deeply moved and inspired me, why can't Vue have a similarly cool tool? We all know that there is an official Vue Devtools browser extension, but can we create a Vue Devtools that is bound to Vite an
import { useCalendar } from '@h6s/calendar'; | |
import { useMachine } from '@xstate/react'; | |
import { Button as AriaButton } from 'ariakit/button'; | |
import clsx from 'clsx'; | |
import { isSunday, isSameDay, addMonths, isFuture, isPast, setDate } from 'date-fns'; | |
import format from 'date-fns/format'; | |
import isWithinInterval from 'date-fns/isWithinInterval'; | |
import { FC, useCallback, useMemo } from 'react'; | |
import Select from '@components/forms/components/Select'; |
<?php | |
/* | |
A simple PHP class to perform basic operations against Amazon S3 and compatible | |
services. Requires modern PHP (7+, probably) with curl, dom, and iconv modules. | |
Copyright 2022 Marco Arment. Released under the MIT license: | |
Permission is hereby granted, free of charge, to any person obtaining a copy | |
of this software and associated documentation files (the "Software"), to deal | |
in the Software without restriction, including without limitation the rights |
Sometimes you need to publish a CSS file for 3rd-party consumption (i.e. default styles for an embeddable JS widget). This set up lets you continue to use Tailwind, but scope all your styles to a specific selector.
Simply replace .internachi
with your own widget namespace, set up Tailwind as you please,
and run generate.sh
to build a custom version of your Tailwind styles that won't interfere
with other CSS rules (including the Tailwind reset).
/* | |
Made by Elly Loel - https://ellyloel.com/ | |
With inspiration from: | |
- Josh W Comeau - https://courses.joshwcomeau.com/css-for-js/treasure-trove/010-global-styles/ | |
- Andy Bell - https://piccalil.li/blog/a-modern-css-reset/ | |
- Adam Argyle - https://unpkg.com/open-props@1.3.16/normalize.min.css / https://codepen.io/argyleink/pen/KKvRORE | |
Notes: | |
- `:where()` is used to lower specificity for easy overriding. | |
*/ |
const initialState = { | |
activated: false, | |
resolve: () => {}, | |
}; | |
function useSignal() { | |
const [state, setState] = useState(initialState); | |
function init() { | |
return new Promise((resolve) => { |