@zayne-labs/prettier-config 0.11.11 → 0.11.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +7 -2
- package/dist/index.js.map +1 -1
- package/package.json +3 -2
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as ensurePackages, o as resolveOptions, r as interopDefault, t as combineConfigs } from "./utils-AXdZ-_yx.js";
|
|
1
|
+
import { i as isPackageInScope, n as ensurePackages, o as resolveOptions, r as interopDefault, t as combineConfigs } from "./utils-AXdZ-_yx.js";
|
|
2
2
|
import { n as getDefaultTailwindSettings, t as getDefaultImportSortingOrder } from "./defaults-DCbiIW5Q.js";
|
|
3
3
|
|
|
4
4
|
//#region src/configs/astro.ts
|
|
@@ -66,7 +66,12 @@ const tailwindcss = async (options) => {
|
|
|
66
66
|
const sortImports = async (options) => {
|
|
67
67
|
await ensurePackages(["@ianvs/prettier-plugin-sort-imports"]);
|
|
68
68
|
const prettierSortImportsPlugin = await interopDefault(import("@ianvs/prettier-plugin-sort-imports"));
|
|
69
|
-
delete prettierSortImportsPlugin.parsers["ember-template-tag"];
|
|
69
|
+
if (!isPackageInScope("prettier-plugin-ember-template-tag")) delete prettierSortImportsPlugin.parsers["ember-template-tag"];
|
|
70
|
+
if (!isPackageInScope("@prettier/plugin-oxc")) {
|
|
71
|
+
delete prettierSortImportsPlugin.parsers.oxc;
|
|
72
|
+
delete prettierSortImportsPlugin.parsers["oxc-ts"];
|
|
73
|
+
delete prettierSortImportsPlugin.printers["estree-oxc"];
|
|
74
|
+
}
|
|
70
75
|
const sortingOrder = getDefaultImportSortingOrder();
|
|
71
76
|
return {
|
|
72
77
|
...options,
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../src/configs/astro.ts","../src/configs/base.ts","../src/configs/tailwindcss.ts","../src/configs/sort.ts","../src/factory.ts"],"sourcesContent":["import type { ExtractOptions, OptionsPrettierConfig } from \"@/types\";\nimport { ensurePackages, interopDefault } from \"@/utils\";\n\nexport const astro = async (\n\toptions: ExtractOptions<OptionsPrettierConfig[\"astro\"]>\n): Promise<typeof options> => {\n\tawait ensurePackages([\"prettier-plugin-astro\"]);\n\n\tconst prettierPluginAstro = await interopDefault(import(\"prettier-plugin-astro\"));\n\n\treturn {\n\t\t...options,\n\n\t\toverrides: [\n\t\t\t{\n\t\t\t\tfiles: \"*.astro\",\n\t\t\t\toptions: { parser: \"astro\" },\n\t\t\t},\n\t\t\t...(options.overrides ?? []),\n\t\t],\n\n\t\tplugins: [prettierPluginAstro, ...(options.plugins ?? [])],\n\t};\n};\n","import type { ExtractOptions, OptionsPrettierConfig } from \"@/types\";\n\nexport const base = (options: ExtractOptions<OptionsPrettierConfig[\"base\"]>): typeof options => {\n\treturn {\n\t\texperimentalOperatorPosition: \"start\",\n\t\texperimentalTernaries: true,\n\t\tjsxSingleQuote: false,\n\t\tprintWidth: 107,\n\t\tsingleQuote: false,\n\t\ttabWidth: 3,\n\t\ttrailingComma: \"es5\",\n\t\tuseTabs: true,\n\n\t\t...options,\n\t};\n};\n","import { getDefaultTailwindSettings } from \"@/constants/defaults\";\nimport type { ExtractOptions, OptionsPrettierConfig } from \"@/types\";\nimport { ensurePackages, interopDefault } from \"@/utils\";\n\nexport const tailwindcss = async (\n\toptions: ExtractOptions<OptionsPrettierConfig[\"tailwindcss\"]>\n): Promise<typeof options> => {\n\tawait ensurePackages([\n\t\t\"prettier-plugin-tailwindcss\",\n\t\t\"prettier-plugin-classnames\",\n\t\t\"prettier-plugin-merge\",\n\t]);\n\n\tconst [prettierTailwindcssPlugin, prettierClassnamesPlugin, prettierMergePlugin] = await Promise.all([\n\t\tinteropDefault(import(\"prettier-plugin-tailwindcss\")),\n\t\tinteropDefault(import(\"prettier-plugin-classnames\")),\n\t\tinteropDefault(import(\"prettier-plugin-merge\")),\n\t]);\n\n\tconst tailwindSettings = getDefaultTailwindSettings();\n\n\treturn {\n\t\ttailwindStylesheet: tailwindSettings.tailwindStylesheet,\n\n\t\t...options,\n\n\t\tcustomAttributes: [...tailwindSettings.tailwindAttributes, ...(options.customAttributes ?? [])],\n\t\tcustomFunctions: [...tailwindSettings.tailwindFunctions, ...(options.customFunctions ?? [])],\n\n\t\tplugins: [\n\t\t\tprettierTailwindcssPlugin,\n\t\t\tprettierClassnamesPlugin,\n\n\t\t\t...(options.plugins ?? []),\n\n\t\t\t/**\n\t\t\t * The 'merge' plugin must always come last\n\t\t\t * @see https://github.com/ony3000/prettier-plugin-merge#why-prettier-plugin-merge\n\t\t\t */\n\t\t\tprettierMergePlugin,\n\t\t],\n\n\t\ttailwindAttributes: [...tailwindSettings.tailwindAttributes, ...(options.tailwindAttributes ?? [])],\n\t\ttailwindFunctions: [...tailwindSettings.tailwindFunctions, ...(options.tailwindFunctions ?? [])],\n\t};\n};\n","import { getDefaultImportSortingOrder } from \"@/constants/defaults\";\nimport type { ExtractOptions, OptionsPrettierConfig } from \"@/types\";\nimport { ensurePackages, interopDefault } from \"@/utils\";\n\nexport const sortImports = async (\n\toptions: ExtractOptions<OptionsPrettierConfig[\"sortImports\"]>\n): Promise<typeof options> => {\n\tawait ensurePackages([\"@ianvs/prettier-plugin-sort-imports\"]);\n\n\tconst prettierSortImportsPlugin = await interopDefault(
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../src/configs/astro.ts","../src/configs/base.ts","../src/configs/tailwindcss.ts","../src/configs/sort.ts","../src/factory.ts"],"sourcesContent":["import type { ExtractOptions, OptionsPrettierConfig } from \"@/types\";\nimport { ensurePackages, interopDefault } from \"@/utils\";\n\nexport const astro = async (\n\toptions: ExtractOptions<OptionsPrettierConfig[\"astro\"]>\n): Promise<typeof options> => {\n\tawait ensurePackages([\"prettier-plugin-astro\"]);\n\n\tconst prettierPluginAstro = await interopDefault(import(\"prettier-plugin-astro\"));\n\n\treturn {\n\t\t...options,\n\n\t\toverrides: [\n\t\t\t{\n\t\t\t\tfiles: \"*.astro\",\n\t\t\t\toptions: { parser: \"astro\" },\n\t\t\t},\n\t\t\t...(options.overrides ?? []),\n\t\t],\n\n\t\tplugins: [prettierPluginAstro, ...(options.plugins ?? [])],\n\t};\n};\n","import type { ExtractOptions, OptionsPrettierConfig } from \"@/types\";\n\nexport const base = (options: ExtractOptions<OptionsPrettierConfig[\"base\"]>): typeof options => {\n\treturn {\n\t\texperimentalOperatorPosition: \"start\",\n\t\texperimentalTernaries: true,\n\t\tjsxSingleQuote: false,\n\t\tprintWidth: 107,\n\t\tsingleQuote: false,\n\t\ttabWidth: 3,\n\t\ttrailingComma: \"es5\",\n\t\tuseTabs: true,\n\n\t\t...options,\n\t};\n};\n","import { getDefaultTailwindSettings } from \"@/constants/defaults\";\nimport type { ExtractOptions, OptionsPrettierConfig } from \"@/types\";\nimport { ensurePackages, interopDefault } from \"@/utils\";\n\nexport const tailwindcss = async (\n\toptions: ExtractOptions<OptionsPrettierConfig[\"tailwindcss\"]>\n): Promise<typeof options> => {\n\tawait ensurePackages([\n\t\t\"prettier-plugin-tailwindcss\",\n\t\t\"prettier-plugin-classnames\",\n\t\t\"prettier-plugin-merge\",\n\t]);\n\n\tconst [prettierTailwindcssPlugin, prettierClassnamesPlugin, prettierMergePlugin] = await Promise.all([\n\t\tinteropDefault(import(\"prettier-plugin-tailwindcss\")),\n\t\tinteropDefault(import(\"prettier-plugin-classnames\")),\n\t\tinteropDefault(import(\"prettier-plugin-merge\")),\n\t]);\n\n\tconst tailwindSettings = getDefaultTailwindSettings();\n\n\treturn {\n\t\ttailwindStylesheet: tailwindSettings.tailwindStylesheet,\n\n\t\t...options,\n\n\t\tcustomAttributes: [...tailwindSettings.tailwindAttributes, ...(options.customAttributes ?? [])],\n\t\tcustomFunctions: [...tailwindSettings.tailwindFunctions, ...(options.customFunctions ?? [])],\n\n\t\tplugins: [\n\t\t\tprettierTailwindcssPlugin,\n\t\t\tprettierClassnamesPlugin,\n\n\t\t\t...(options.plugins ?? []),\n\n\t\t\t/**\n\t\t\t * The 'merge' plugin must always come last\n\t\t\t * @see https://github.com/ony3000/prettier-plugin-merge#why-prettier-plugin-merge\n\t\t\t */\n\t\t\tprettierMergePlugin,\n\t\t],\n\n\t\ttailwindAttributes: [...tailwindSettings.tailwindAttributes, ...(options.tailwindAttributes ?? [])],\n\t\ttailwindFunctions: [...tailwindSettings.tailwindFunctions, ...(options.tailwindFunctions ?? [])],\n\t};\n};\n","import type { Parser, Printer } from \"prettier\";\nimport { getDefaultImportSortingOrder } from \"@/constants/defaults\";\nimport type { ExtractOptions, OptionsPrettierConfig } from \"@/types\";\nimport { ensurePackages, interopDefault, isPackageInScope } from \"@/utils\";\n\nexport const sortImports = async (\n\toptions: ExtractOptions<OptionsPrettierConfig[\"sortImports\"]>\n): Promise<typeof options> => {\n\tawait ensurePackages([\"@ianvs/prettier-plugin-sort-imports\"]);\n\n\tconst prettierSortImportsPlugin = (await interopDefault(\n\t\timport(\"@ianvs/prettier-plugin-sort-imports\")\n\t)) as {\n\t\tparsers: Record<string, Parser>;\n\t\tprinters: Record<string, Printer>;\n\t};\n\n\tif (!isPackageInScope(\"prettier-plugin-ember-template-tag\")) {\n\t\tdelete prettierSortImportsPlugin.parsers[\"ember-template-tag\"];\n\t}\n\n\tif (!isPackageInScope(\"@prettier/plugin-oxc\")) {\n\t\tdelete prettierSortImportsPlugin.parsers.oxc;\n\t\tdelete prettierSortImportsPlugin.parsers[\"oxc-ts\"];\n\t\tdelete prettierSortImportsPlugin.printers[\"estree-oxc\"];\n\t}\n\n\tconst sortingOrder = getDefaultImportSortingOrder();\n\n\treturn {\n\t\t...options,\n\n\t\timportOrder: [...sortingOrder.main, ...(options.importOrder ?? []), sortingOrder.css],\n\t\timportOrderSafeSideEffects: [sortingOrder.css, ...(options.importOrderSafeSideEffects ?? [])],\n\t\timportOrderTypeScriptVersion: \"5.9.3\",\n\n\t\tplugins: [prettierSortImportsPlugin, ...(options.plugins ?? [])],\n\t};\n};\n","import type { Awaitable } from \"@zayne-labs/toolkit-type-helpers\";\nimport { astro, base, tailwindcss } from \"./configs\";\nimport { sortImports } from \"./configs/sort\";\nimport type { OptionsPrettierConfig, ResolvedPrettierConfig } from \"./types\";\nimport { combineConfigs, resolveOptions } from \"./utils\";\n\n/**\n * @description Factory function for creating a customized Prettier configuration.\n * Combines base, Astro, and Tailwind CSS configurations based on the provided options.\n * Any Array values (like `plugins` and `overrides`) are merged, while other values are overwritten.\n *\n * @example\n * ```ts\n * // prettier.config.ts\n * import { zayne } from \"@zayne-labs/prettier-config\";\n *\n * export default zayne(\n * {\n * base: true,\n * tailwindcss: { tailwindStylesheet: \"./src/styles.css\" },\n * astro: true,\n * },\n * // Extra config to merge (optional)\n * {\n * useTabs: false,\n * }\n * );\n * ```\n */\nexport const zayne = async (\n\toptions: OptionsPrettierConfig = {},\n\t...extraConfigs: ResolvedPrettierConfig[]\n) => {\n\tconst {\n\t\tastro: enabledAstro = false,\n\t\tbase: enabledBase = true,\n\t\tsortImports: enabledSortImports = true,\n\t\ttailwindcss: enabledTailwindcss = false,\n\t} = options;\n\n\tconst configArray: Array<Awaitable<ResolvedPrettierConfig | undefined>> = [\n\t\tenabledBase ? base(resolveOptions(enabledBase)) : undefined,\n\t\tenabledAstro ? astro(resolveOptions(enabledAstro)) : undefined,\n\t\tenabledSortImports ? sortImports(resolveOptions(enabledSortImports)) : undefined,\n\n\t\t...extraConfigs,\n\n\t\t/**\n\t\t * Tailwind plugin most always be the last one to avoid conflicts\n\t\t * @see https://github.com/tailwindlabs/prettier-plugin-tailwindcss#compatibility-with-other-prettier-plugins\n\t\t */\n\t\tenabledTailwindcss ? tailwindcss(resolveOptions(enabledTailwindcss)) : undefined,\n\t];\n\n\tconst accumulatedConfig = await combineConfigs(configArray);\n\n\treturn accumulatedConfig;\n};\n"],"mappings":";;;;AAGA,MAAa,QAAQ,OACpB,YAC6B;AAC7B,OAAM,eAAe,CAAC,wBAAwB,CAAC;CAE/C,MAAM,sBAAsB,MAAM,eAAe,OAAO,yBAAyB;AAEjF,QAAO;EACN,GAAG;EAEH,WAAW,CACV;GACC,OAAO;GACP,SAAS,EAAE,QAAQ,SAAS;GAC5B,EACD,GAAI,QAAQ,aAAa,EAAE,CAC3B;EAED,SAAS,CAAC,qBAAqB,GAAI,QAAQ,WAAW,EAAE,CAAE;EAC1D;;;;;ACpBF,MAAa,QAAQ,YAA2E;AAC/F,QAAO;EACN,8BAA8B;EAC9B,uBAAuB;EACvB,gBAAgB;EAChB,YAAY;EACZ,aAAa;EACb,UAAU;EACV,eAAe;EACf,SAAS;EAET,GAAG;EACH;;;;;ACVF,MAAa,cAAc,OAC1B,YAC6B;AAC7B,OAAM,eAAe;EACpB;EACA;EACA;EACA,CAAC;CAEF,MAAM,CAAC,2BAA2B,0BAA0B,uBAAuB,MAAM,QAAQ,IAAI;EACpG,eAAe,OAAO,+BAA+B;EACrD,eAAe,OAAO,8BAA8B;EACpD,eAAe,OAAO,yBAAyB;EAC/C,CAAC;CAEF,MAAM,mBAAmB,4BAA4B;AAErD,QAAO;EACN,oBAAoB,iBAAiB;EAErC,GAAG;EAEH,kBAAkB,CAAC,GAAG,iBAAiB,oBAAoB,GAAI,QAAQ,oBAAoB,EAAE,CAAE;EAC/F,iBAAiB,CAAC,GAAG,iBAAiB,mBAAmB,GAAI,QAAQ,mBAAmB,EAAE,CAAE;EAE5F,SAAS;GACR;GACA;GAEA,GAAI,QAAQ,WAAW,EAAE;GAMzB;GACA;EAED,oBAAoB,CAAC,GAAG,iBAAiB,oBAAoB,GAAI,QAAQ,sBAAsB,EAAE,CAAE;EACnG,mBAAmB,CAAC,GAAG,iBAAiB,mBAAmB,GAAI,QAAQ,qBAAqB,EAAE,CAAE;EAChG;;;;;ACvCF,MAAa,cAAc,OAC1B,YAC6B;AAC7B,OAAM,eAAe,CAAC,sCAAsC,CAAC;CAE7D,MAAM,4BAA6B,MAAM,eACxC,OAAO,uCACP;AAKD,KAAI,CAAC,iBAAiB,qCAAqC,CAC1D,QAAO,0BAA0B,QAAQ;AAG1C,KAAI,CAAC,iBAAiB,uBAAuB,EAAE;AAC9C,SAAO,0BAA0B,QAAQ;AACzC,SAAO,0BAA0B,QAAQ;AACzC,SAAO,0BAA0B,SAAS;;CAG3C,MAAM,eAAe,8BAA8B;AAEnD,QAAO;EACN,GAAG;EAEH,aAAa;GAAC,GAAG,aAAa;GAAM,GAAI,QAAQ,eAAe,EAAE;GAAG,aAAa;GAAI;EACrF,4BAA4B,CAAC,aAAa,KAAK,GAAI,QAAQ,8BAA8B,EAAE,CAAE;EAC7F,8BAA8B;EAE9B,SAAS,CAAC,2BAA2B,GAAI,QAAQ,WAAW,EAAE,CAAE;EAChE;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACRF,MAAa,QAAQ,OACpB,UAAiC,EAAE,EACnC,GAAG,iBACC;CACJ,MAAM,EACL,OAAO,eAAe,OACtB,MAAM,cAAc,MACpB,aAAa,qBAAqB,MAClC,aAAa,qBAAqB,UAC/B;AAkBJ,QAF0B,MAAM,eAd0C;EACzE,cAAc,KAAK,eAAe,YAAY,CAAC,GAAG;EAClD,eAAe,MAAM,eAAe,aAAa,CAAC,GAAG;EACrD,qBAAqB,YAAY,eAAe,mBAAmB,CAAC,GAAG;EAEvE,GAAG;EAMH,qBAAqB,YAAY,eAAe,mBAAmB,CAAC,GAAG;EACvE,CAE0D"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zayne-labs/prettier-config",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.11.
|
|
4
|
+
"version": "0.11.12",
|
|
5
5
|
"description": "Zayne Labs' Prettier config",
|
|
6
6
|
"author": "Ryan Zayne",
|
|
7
7
|
"license": "MIT",
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
"publint": "0.3.16",
|
|
71
71
|
"tsdown": "0.18.2",
|
|
72
72
|
"typescript": "5.9.3",
|
|
73
|
-
"@zayne-labs/tsconfig": "0.11.
|
|
73
|
+
"@zayne-labs/tsconfig": "0.11.12"
|
|
74
74
|
},
|
|
75
75
|
"publishConfig": {
|
|
76
76
|
"access": "public",
|
|
@@ -84,6 +84,7 @@
|
|
|
84
84
|
"dev": "pnpm build:dev --watch",
|
|
85
85
|
"lint:attw": "attw --pack . --ignore-rules=cjs-resolves-to-esm",
|
|
86
86
|
"lint:eslint": "eslint . --max-warnings 0",
|
|
87
|
+
"lint:format": "prettier --write .",
|
|
87
88
|
"lint:publint": "publint --strict . ",
|
|
88
89
|
"lint:type-check": "tsc --pretty -p tsconfig.json",
|
|
89
90
|
"release": "pnpm publish --no-git-checks",
|