You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
95 lines
4.3 KiB
95 lines
4.3 KiB
"use strict";
|
|
var _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
var _object_spread = require("@swc/helpers/_/_object_spread");
|
|
var _plugin = /*#__PURE__*/ _interop_require_default._(require("tailwindcss/plugin"));
|
|
var _cssanimations = require("./css-animations");
|
|
var _cssutilities = require("./css-utilities");
|
|
var _ensure = require("./utils/ensure");
|
|
// Default CSS variables, modelled from core
|
|
var DEFAULT_VARIABLE_VALUES = {
|
|
"--tw-perspective": "none",
|
|
"--tw-translate-x": "0",
|
|
"--tw-translate-y": "0",
|
|
"--tw-translate-z": "0",
|
|
"--tw-rotate-x": "0",
|
|
"--tw-rotate-y": "0",
|
|
"--tw-rotate-z": "0",
|
|
"--tw-skew-x": "0",
|
|
"--tw-skew-y": "0",
|
|
"--tw-scale-x": "1",
|
|
"--tw-scale-y": "1",
|
|
"--tw-scale-z": "1"
|
|
};
|
|
var optionDefaults = {
|
|
legacy: false
|
|
};
|
|
var tailwindCss3d = _plugin.default.withOptions(function() {
|
|
var _ref = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : optionDefaults, _ref_legacy = _ref.legacy, legacy = _ref_legacy === void 0 ? optionDefaults.legacy : _ref_legacy;
|
|
var safeLegacy = (0, _ensure.ensureBoolean)(legacy, optionDefaults.legacy);
|
|
return function(api) {
|
|
var localAPI = api;
|
|
// Replace the transform core plugin defaults and add some new ones
|
|
localAPI.addDefaults("transform", DEFAULT_VARIABLE_VALUES);
|
|
var perspective = new _cssutilities.Perspective(localAPI, safeLegacy);
|
|
var transformStyle = new _cssutilities.TransformStyle(localAPI);
|
|
var translate = new _cssutilities.Translate(localAPI, safeLegacy);
|
|
var transform = new _cssutilities.Transform(localAPI, safeLegacy);
|
|
var scale = new _cssutilities.Scale(localAPI, safeLegacy);
|
|
var backface = new _cssutilities.Backface(localAPI);
|
|
var perspectiveOrigin = new _cssutilities.PerspectiveOrigin(localAPI);
|
|
var transformBox = new _cssutilities.TransformBox(localAPI);
|
|
var transformCore = new _cssutilities.TransformCore(localAPI, safeLegacy);
|
|
// New CSS Utilities
|
|
perspective.utilities();
|
|
transformStyle.utilities();
|
|
translate.utilities();
|
|
transform.utilities();
|
|
scale.utilities();
|
|
backface.utilities();
|
|
perspectiveOrigin.utilities();
|
|
transformBox.utilities();
|
|
transformCore.utilities();
|
|
};
|
|
}, function() {
|
|
var _ref = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : optionDefaults, _ref_legacy = _ref.legacy, legacy = _ref_legacy === void 0 ? optionDefaults.legacy : _ref_legacy;
|
|
var safeLegacy = (0, _ensure.ensureBoolean)(legacy, optionDefaults.legacy);
|
|
var spin = new _cssanimations.Spin(safeLegacy);
|
|
var bounce = new _cssanimations.Bounce(safeLegacy);
|
|
var bounceAndSpin = new _cssanimations.BounceAndSpin(safeLegacy);
|
|
return {
|
|
theme: {
|
|
// Set new theme defaults
|
|
perspective: _cssutilities.Perspective.defaultTheme,
|
|
transformStyle: _cssutilities.TransformStyle.defaultTheme,
|
|
backface: _cssutilities.Backface.defaultTheme,
|
|
perspectiveOrigin: _cssutilities.PerspectiveOrigin.defaultTheme,
|
|
transformBox: _cssutilities.TransformBox.defaultTheme,
|
|
spin: spin.defaultTheme,
|
|
bounce: bounce.defaultTheme,
|
|
bounceAndSpin: bounceAndSpin.defaultTheme,
|
|
extend: {
|
|
// Update the core transform transition property
|
|
transitionProperty: {
|
|
transform: safeLegacy ? "transform" : "perspective, translate, scale, transform, perspective, rotate"
|
|
},
|
|
// New CSS keyframes and animations
|
|
keyframes: function(pluginUtilities) {
|
|
return _object_spread._({}, spin.keyframes(), bounce.keyframes(pluginUtilities), bounceAndSpin.keyframes(pluginUtilities));
|
|
},
|
|
animation: function(pluginUtilities) {
|
|
return _object_spread._({}, spin.animation(pluginUtilities), bounce.animation(pluginUtilities), bounceAndSpin.animation(pluginUtilities));
|
|
}
|
|
}
|
|
},
|
|
// Disable some core plugins which are superceded by this plugin
|
|
corePlugins: {
|
|
rotate: false,
|
|
scale: false,
|
|
skew: false,
|
|
transform: false,
|
|
translate: false
|
|
}
|
|
};
|
|
});
|
|
module.exports = tailwindCss3d;
|