jiek 0.1.11 → 0.1.12-alpha.2

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.
Files changed (41) hide show
  1. package/dist/commands/build.esm.js +9 -31
  2. package/dist/commands/build.esm.js.map +1 -1
  3. package/dist/commands/build.esm.min.js +1 -1
  4. package/dist/commands/build.esm.min.js.map +1 -1
  5. package/dist/commands/publish.esm.js +11 -17
  6. package/dist/commands/publish.esm.js.map +1 -1
  7. package/dist/commands/publish.esm.min.js +1 -1
  8. package/dist/commands/publish.esm.min.js.map +1 -1
  9. package/dist/index.esm.js +3 -0
  10. package/dist/index.esm.js.map +1 -1
  11. package/dist/index.esm.min.js +1 -1
  12. package/dist/index.esm.min.js.map +1 -1
  13. package/dist/index.iife.js +109 -58
  14. package/dist/index.iife.js.map +1 -1
  15. package/dist/index.iife.min.js +1 -1
  16. package/dist/index.iife.min.js.map +1 -1
  17. package/dist/index.umd.js +111 -60
  18. package/dist/index.umd.js.map +1 -1
  19. package/dist/index.umd.min.js +1 -1
  20. package/dist/index.umd.min.js.map +1 -1
  21. package/dist/rollup/utils/commonOptions.esm.js +1 -0
  22. package/dist/rollup/utils/commonOptions.esm.js.map +1 -1
  23. package/dist/rollup/utils/commonOptions.esm.min.js +1 -1
  24. package/dist/rollup/utils/commonOptions.esm.min.js.map +1 -1
  25. package/dist/rollup.esm.js +8 -2
  26. package/dist/rollup.esm.js.map +1 -1
  27. package/dist/rollup.esm.min.js +1 -1
  28. package/dist/rollup.esm.min.js.map +1 -1
  29. package/dist/rollup.iife.js +22 -9
  30. package/dist/rollup.iife.js.map +1 -1
  31. package/dist/rollup.iife.min.js +1 -1
  32. package/dist/rollup.iife.min.js.map +1 -1
  33. package/dist/rollup.umd.js +24 -11
  34. package/dist/rollup.umd.js.map +1 -1
  35. package/dist/rollup.umd.min.js +1 -1
  36. package/dist/rollup.umd.min.js.map +1 -1
  37. package/dist/utils/filterSupport.esm.js +78 -0
  38. package/dist/utils/filterSupport.esm.js.map +1 -0
  39. package/dist/utils/filterSupport.esm.min.js +2 -0
  40. package/dist/utils/filterSupport.esm.min.js.map +1 -0
  41. package/package.json +16 -9
@@ -1,8 +1,16 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('node:path'), require('@jiek/utils/getWorkspaceDir'), require('autoprefixer'), require('rollup-plugin-dts'), require('rollup-plugin-postcss'), require('@rollup/plugin-terser')) :
3
- typeof define === 'function' && define.amd ? define(['exports', 'node:path', '@jiek/utils/getWorkspaceDir', 'autoprefixer', 'rollup-plugin-dts', 'rollup-plugin-postcss', '@rollup/plugin-terser'], factory) :
4
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.jiekrollup = {}, global.node_path, global.getWorkspaceDir, global.autoprefixer, global.rollupPluginDts, global.postcss, global.terser));
5
- })(this, (function (exports, node_path, getWorkspaceDir, autoprefixer, rollupPluginDts, postcss, terser) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('node:path'), require('@jiek/utils/getWorkspaceDir'), require('@rollup/plugin-json'), require('autoprefixer'), require('rollup-plugin-dts'), require('rollup-plugin-esbuild'), require('rollup-plugin-postcss'), require('@rollup/plugin-terser')) :
3
+ typeof define === 'function' && define.amd ? define(['exports', 'node:path', '@jiek/utils/getWorkspaceDir', '@rollup/plugin-json', 'autoprefixer', 'rollup-plugin-dts', 'rollup-plugin-esbuild', 'rollup-plugin-postcss', '@rollup/plugin-terser'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.jiekrollup = {}, global.node_path, global.getWorkspaceDir, global.json, global.autoprefixer, global.rollupPluginDts, global.esbuild, global.postcss, global.terser));
5
+ })(this, (function (exports, node_path, getWorkspaceDir, json, autoprefixer, rollupPluginDts, esbuild, postcss, terser) { 'use strict';
6
+
7
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
8
+
9
+ var json__default = /*#__PURE__*/_interopDefault(json);
10
+ var autoprefixer__default = /*#__PURE__*/_interopDefault(autoprefixer);
11
+ var esbuild__default = /*#__PURE__*/_interopDefault(esbuild);
12
+ var postcss__default = /*#__PURE__*/_interopDefault(postcss);
13
+ var terser__default = /*#__PURE__*/_interopDefault(terser);
6
14
 
7
15
  function globalResolver(external) {
8
16
  if (external.startsWith("@zodui/")) {
@@ -73,6 +81,7 @@
73
81
  const commonOutputOptions = defineOutput({
74
82
  dir: "dist",
75
83
  exports: "named",
84
+ interop: "auto",
76
85
  sourcemap: true
77
86
  });
78
87
 
@@ -90,13 +99,11 @@
90
99
  {
91
100
  ...output,
92
101
  entryFileNames: output.entryFileNames?.replace(/(\.js)$/, ".min$1"),
93
- plugins: [...output.plugins ?? [], terser()]
102
+ plugins: [...output.plugins ?? [], terser__default.default()]
94
103
  }
95
104
  ];
96
105
  }
97
106
 
98
- const esbuildModule = require("rollup-plugin-esbuild");
99
- const esbuild = esbuildModule.default;
100
107
  const workspaceRoot = getWorkspaceDir.getWorkspaceDir();
101
108
  function resolveWorkspacePath(p) {
102
109
  return node_path.resolve(workspaceRoot, p);
@@ -121,6 +128,9 @@
121
128
  );
122
129
  const [globalsRegister, globalsOutput] = createGlobalsLinkage();
123
130
  const external = externalResolver();
131
+ const commonPlugins = [
132
+ json__default.default()
133
+ ];
124
134
  return [
125
135
  {
126
136
  input: exportsEntries,
@@ -133,9 +143,10 @@
133
143
  })
134
144
  ],
135
145
  plugins: [
146
+ commonPlugins,
136
147
  globalsRegister({ external }),
137
148
  styled && skip({ patterns: [/\.s?css$/] }),
138
- esbuild(),
149
+ esbuild__default.default(),
139
150
  indexPlugins
140
151
  ]
141
152
  },
@@ -158,14 +169,15 @@
158
169
  })
159
170
  ],
160
171
  plugins: [
172
+ commonPlugins,
161
173
  globalsOutput,
162
- styled && postcss({
163
- plugins: [autoprefixer],
174
+ styled && postcss__default.default({
175
+ plugins: [autoprefixer__default.default],
164
176
  minimize: true,
165
177
  sourceMap: true,
166
178
  extract: `${name}.css`
167
179
  }),
168
- esbuild(),
180
+ esbuild__default.default(),
169
181
  entryPlugins
170
182
  ],
171
183
  external
@@ -184,6 +196,7 @@
184
196
  }
185
197
  ],
186
198
  plugins: [
199
+ commonPlugins,
187
200
  styled && skip({ patterns: [/\.s?css$/] }),
188
201
  rollupPluginDts.dts({ tsconfig: resolveWorkspacePath("tsconfig.dts.json") }),
189
202
  {
@@ -1 +1 @@
1
- {"version":3,"file":"rollup.umd.js","sources":["../src/rollup/utils/globalResolver.ts","../src/rollup/plugins/globals.ts","../src/rollup/plugins/skip.ts","../src/rollup/utils/commonOptions.ts","../src/rollup/utils/externalResolver.ts","../src/rollup/utils/withMinify.ts","../src/rollup/index.ts"],"sourcesContent":["export default function (external: string) {\n if (external.startsWith('@zodui/')) {\n return external\n .replace(/[@/-](\\w)/g, (_, c) => c.toUpperCase())\n }\n return {\n react: 'React',\n // TODO `react/jsx-runtime` is not supported `umd`\n 'react/jsx-runtime': 'ReactJSXRuntime',\n // https://cdn.jsdelivr.net/npm/react@18.2.0/umd/react.development.js\n 'react-dom': 'ReactDOM',\n // https://cdn.jsdelivr.net/npm/react-dom@18.2.0/umd/react-dom.development.js\n // TODO make the library use the global variable `TDesignReact` replace `TDesign`\n 'tdesign-react/esm': 'TDesign',\n // https://cdn.jsdelivr.net/npm/tdesign-react@1.4.0/dist/tdesign.js\n // https://cdn.jsdelivr.net/npm/tdesign-react@1.4.0/dist/tdesign.css\n 'tdesign-icons-react': 'TDesignIconReact',\n // https://cdn.jsdelivr.net/npm/tdesign-icons-react@1.4.0/dist/index.js\n zod: 'Zod',\n '@zodui/core': 'ZodUICore',\n '@zodui/core/utils': 'ZodUICoreUtils',\n '@zodui/react': 'ZodUIReact'\n }[external]\n}\n","import type { Plugin, PluginImpl } from 'rollup'\n\nimport globalResolver from '../utils/globalResolver'\n\ninterface GlobalsOptions {\n external?: (string | RegExp)[]\n}\n\nexport function createGlobalsLinkage() {\n let globals = {}\n const dependencies = new Set<string>([])\n return [\n (({ external } = {}) => {\n return {\n name: 'globals',\n resolveId(id) {\n if (external?.some(dep => dep instanceof RegExp ? dep.test(id) : dep === id)) {\n dependencies.add(id)\n return { id, external: true }\n }\n return null\n },\n outputOptions(options) {\n globals = [...dependencies].reduce((acc, value) => ({\n ...acc,\n [value]: globalResolver(value)\n }), {})\n return { ...options, globals }\n }\n }\n }) as PluginImpl<GlobalsOptions>,\n { outputOptions: options => ({ ...options, globals }) } as Plugin\n ] as const\n}\n","import type { PluginImpl } from 'rollup'\n\ninterface Options {\n patterns?: (string | RegExp)[]\n}\n\nexport default ((options = {}) => {\n return {\n name: 'skip',\n // skip the specified files by `options.patterns`\n load(id) {\n if (\n options.patterns?.some((pattern) =>\n typeof pattern === 'string'\n ? id.includes(pattern)\n : pattern.test(id)\n )\n ) {\n return ''\n }\n }\n }\n}) as PluginImpl<Options>\n","import type { OutputOptions } from 'rollup'\n\nconst defineOutput = <O extends OutputOptions>(output: O) => output\n\nexport const commonOutputOptions = defineOutput({\n dir: 'dist',\n exports: 'named',\n sourcemap: true\n})\n","export default function () {\n const cwd = process.cwd()\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const pkg = require(`${cwd}/package.json`)\n const { dependencies = {}, peerDependencies = {} } = pkg\n const external = <(string | RegExp)[]>Object\n .keys(dependencies)\n .concat(Object.keys(peerDependencies))\n return external\n .map(dep => new RegExp(`^${dep}(/.*)?$`))\n}\n","import terser from '@rollup/plugin-terser'\nimport type { OutputOptions, OutputPlugin } from 'rollup'\n\nexport default function (output: OutputOptions & {\n entryFileNames?: string\n plugins?: OutputPlugin[]\n}): OutputOptions[] {\n return [\n output,\n {\n ...output,\n entryFileNames: output.entryFileNames?.replace(/(\\.js)$/, '.min$1'),\n plugins: [...(output.plugins ?? []), terser()]\n }\n ]\n}\n","import { resolve } from 'node:path'\n\nimport { getWorkspaceDir } from '@jiek/utils/getWorkspaceDir'\nimport autoprefixer from 'autoprefixer'\nimport type { InputPluginOption, RollupOptions } from 'rollup'\nimport { dts } from 'rollup-plugin-dts'\nimport esbuildModule = require('rollup-plugin-esbuild')\nimport postcss from 'rollup-plugin-postcss'\nconst esbuild = esbuildModule.default\n\nimport { createGlobalsLinkage } from './plugins/globals'\nimport skip from './plugins/skip'\nimport { commonOutputOptions } from './utils/commonOptions'\nimport externalResolver from './utils/externalResolver'\nimport withMinify from './utils/withMinify'\n\nconst workspaceRoot = getWorkspaceDir()\nfunction resolveWorkspacePath(p: string) {\n return resolve(workspaceRoot, p)\n}\n\nexport const template = (\n {\n styled = false,\n plugins: {\n index: indexPlugins = [],\n entry: entryPlugins = [],\n dts: dtsPlugins = []\n } = {}\n }: {\n /**\n * include styles files\n */\n styled?: boolean\n plugins?: {\n index?: InputPluginOption\n entry?: InputPluginOption\n dts?: InputPluginOption\n }\n } = {},\n pkg: {\n name?: string\n exports?: Record<string, string | {\n import: string\n 'inner-src': string\n }>\n }\n) => {\n if (!pkg.name) {\n throw new Error('pkg.name is required')\n }\n const namePrefix = pkg\n .name\n .replace(/[@|/-](\\w)/g, (_, $1) => $1.toUpperCase())\n const exportsEntries = Object.fromEntries(\n Object.entries(pkg.exports ?? {})\n // filter static files\n .filter(([key]) => !/\\.(json|css|scss)$/.test(key))\n // filter no `inner-src` or `import` field entries\n .filter(([, value]) => typeof value === 'object' && value['inner-src'] && value['import'])\n .map(([key, value]) => [\n key\n .replace(/^\\.$/, 'index')\n .replace(/^\\.\\//, ''),\n typeof value === 'string' ? value : value['inner-src']\n ])\n )\n\n const [globalsRegister, globalsOutput] = createGlobalsLinkage()\n const external = externalResolver()\n\n return [\n {\n input: exportsEntries,\n output: [\n ...withMinify({\n ...commonOutputOptions,\n format: 'esm',\n entryFileNames: '[name].esm.js',\n preserveModules: true\n })\n ],\n plugins: [\n globalsRegister({ external }),\n styled && skip({ patterns: [/\\.s?css$/] }),\n esbuild(),\n indexPlugins\n ]\n },\n ...Object.entries(exportsEntries).map(([name, input]) => {\n const outputName = namePrefix + (\n name === 'index' ? '' : (\n name.replace(/[@|/-](\\w)/g, (_, $1) => $1.toUpperCase())\n )\n )\n return {\n input: input,\n output: [\n ...withMinify({\n ...commonOutputOptions,\n name: outputName,\n format: 'iife',\n entryFileNames: `${name}.iife.js`\n }),\n ...withMinify({\n ...commonOutputOptions,\n name: outputName,\n format: 'umd',\n entryFileNames: `${name}.umd.js`\n })\n ],\n plugins: [\n globalsOutput,\n styled && postcss({\n plugins: [autoprefixer],\n minimize: true,\n sourceMap: true,\n extract: `${name}.css`\n }),\n esbuild(),\n entryPlugins\n ],\n external\n }\n }),\n {\n input: exportsEntries,\n output: [\n {\n dir: 'dist',\n entryFileNames: ({ name }) => `${name.replace(/^src\\//, '')}.esm.d.ts`,\n preserveModules: true\n },\n {\n dir: 'dist'\n }\n ],\n plugins: [\n styled && skip({ patterns: [/\\.s?css$/] }),\n dts({ tsconfig: resolveWorkspacePath('tsconfig.dts.json') }),\n {\n name: 'rollup-plugin-declare-module-replacer',\n /**\n * replace relative path `declare module './xxx'` to `declare module '{{package name}}'`\n * in output file generated\n */\n generateBundle(_, bundle) {\n for (const file of Object.values(bundle)) {\n if (!('code' in file)) continue\n\n file.code = file.code.replace(\n /declare module ['|\"]\\..*['|\"]/g,\n `declare module '${pkg.name}'`\n )\n }\n }\n },\n dtsPlugins\n ],\n external\n }\n ] as RollupOptions[]\n}\n"],"names":["getWorkspaceDir","resolve","dts"],"mappings":";;;;;;EAAA,uBAAA,CAAyB,QAAkB,EAAA;EACzC,EAAI,IAAA,QAAA,CAAS,UAAW,CAAA,SAAS,CAAG,EAAA;EAClC,IAAO,OAAA,QAAA,CACJ,QAAQ,YAAc,EAAA,CAAC,GAAG,CAAM,KAAA,CAAA,CAAE,aAAa,CAAA,CAAA;EAAA,GACpD;EACA,EAAO,OAAA;EAAA,IACL,KAAO,EAAA,OAAA;EAAA;EAAA,IAEP,mBAAqB,EAAA,iBAAA;EAAA;EAAA,IAErB,WAAa,EAAA,UAAA;EAAA;EAAA;EAAA,IAGb,mBAAqB,EAAA,SAAA;EAAA;EAAA;EAAA,IAGrB,qBAAuB,EAAA,kBAAA;EAAA;EAAA,IAEvB,GAAK,EAAA,KAAA;EAAA,IACL,aAAe,EAAA,WAAA;EAAA,IACf,mBAAqB,EAAA,gBAAA;EAAA,IACrB,cAAgB,EAAA,YAAA;EAAA,IAChB,QAAQ,CAAA,CAAA;EACZ;;ECfO,SAAS,oBAAuB,GAAA;EACrC,EAAA,IAAI,UAAU,EAAC,CAAA;EACf,EAAA,MAAM,YAAe,mBAAA,IAAI,GAAY,CAAA,EAAE,CAAA,CAAA;EACvC,EAAO,OAAA;EAAA,IACJ,CAAC,EAAE,QAAS,EAAA,GAAI,EAAO,KAAA;EACtB,MAAO,OAAA;EAAA,QACL,IAAM,EAAA,SAAA;EAAA,QACN,UAAU,EAAI,EAAA;EACZ,UAAI,IAAA,QAAA,EAAU,IAAK,CAAA,CAAA,GAAA,KAAO,GAAe,YAAA,MAAA,GAAS,GAAI,CAAA,IAAA,CAAK,EAAE,CAAA,GAAI,GAAQ,KAAA,EAAE,CAAG,EAAA;EAC5E,YAAA,YAAA,CAAa,IAAI,EAAE,CAAA,CAAA;EACnB,YAAO,OAAA,EAAE,EAAI,EAAA,QAAA,EAAU,IAAK,EAAA,CAAA;EAAA,WAC9B;EACA,UAAO,OAAA,IAAA,CAAA;EAAA,SACT;EAAA,QACA,cAAc,OAAS,EAAA;EACrB,UAAA,OAAA,GAAU,CAAC,GAAG,YAAY,EAAE,MAAO,CAAA,CAAC,KAAK,KAAW,MAAA;EAAA,YAClD,GAAG,GAAA;EAAA,YACH,CAAC,KAAK,GAAG,cAAA,CAAe,KAAK,CAAA;EAAA,WAC/B,CAAA,EAAI,EAAE,CAAA,CAAA;EACN,UAAO,OAAA,EAAE,GAAG,OAAA,EAAS,OAAQ,EAAA,CAAA;EAAA,SAC/B;EAAA,OACF,CAAA;EAAA,KACF;EAAA,IACA,EAAE,aAAe,EAAA,CAAA,OAAA,MAAY,EAAE,GAAG,OAAA,EAAS,SAAW,CAAA,EAAA;EAAA,GACxD,CAAA;EACF;;AC3BA,aAAgB,CAAC,OAAU,GAAA,EAAO,KAAA;EAChC,EAAO,OAAA;EAAA,IACL,IAAM,EAAA,MAAA;EAAA;EAAA,IAEN,KAAK,EAAI,EAAA;EACP,MAAA,IACE,QAAQ,QAAU,EAAA,IAAA;EAAA,QAAK,CAAC,OACtB,KAAA,OAAO,OAAY,KAAA,QAAA,GACf,EAAG,CAAA,QAAA,CAAS,OAAO,CAAA,GACnB,OAAQ,CAAA,IAAA,CAAK,EAAE,CAAA;EAAA,OAErB,EAAA;EACA,QAAO,OAAA,EAAA,CAAA;EAAA,OACT;EAAA,KACF;EAAA,GACF,CAAA;EACF,CAAA;;ECpBA,MAAM,YAAA,GAAe,CAA0B,MAAc,KAAA,MAAA,CAAA;EAEtD,MAAM,sBAAsB,YAAa,CAAA;EAAA,EAC9C,GAAK,EAAA,MAAA;EAAA,EACL,OAAS,EAAA,OAAA;EAAA,EACT,SAAW,EAAA,IAAA;EACb,CAAC,CAAA;;ECR0B,yBAAA,GAAA;EACzB,EAAM,MAAA,GAAA,GAAM,QAAQ,GAAI,EAAA,CAAA;EAExB,EAAA,MAAM,GAAM,GAAA,OAAA,CAAQ,CAAG,EAAA,GAAG,CAAe,aAAA,CAAA,CAAA,CAAA;EACzC,EAAA,MAAM,EAAE,YAAe,GAAA,IAAI,gBAAmB,GAAA,IAAO,GAAA,GAAA,CAAA;EACrD,EAAM,MAAA,QAAA,GAAgC,OACnC,IAAK,CAAA,YAAY,EACjB,MAAO,CAAA,MAAA,CAAO,IAAK,CAAA,gBAAgB,CAAC,CAAA,CAAA;EACvC,EAAO,OAAA,QAAA,CACJ,IAAI,CAAO,GAAA,KAAA,IAAI,OAAO,CAAI,CAAA,EAAA,GAAG,SAAS,CAAC,CAAA,CAAA;EAC5C;;ECPA,mBAAA,CAAyB,MAGL,EAAA;EAClB,EAAO,OAAA;EAAA,IACL,MAAA;EAAA,IACA;EAAA,MACE,GAAG,MAAA;EAAA,MACH,cAAgB,EAAA,MAAA,CAAO,cAAgB,EAAA,OAAA,CAAQ,WAAW,QAAQ,CAAA;EAAA,MAClE,OAAA,EAAS,CAAC,GAAI,MAAA,CAAO,WAAW,EAAC,EAAI,QAAQ,CAAA;EAAA,KAC/C;EAAA,GACF,CAAA;EACF;;ECTA,MAAO,gBAAgB,OAAQ,CAAA,uBAAA,CAAA,CAAA;EAE/B,MAAM,UAAU,aAAc,CAAA,OAAA,CAAA;EAQ9B,MAAM,gBAAgBA,+BAAgB,EAAA,CAAA;EACtC,SAAS,qBAAqB,CAAW,EAAA;EACvC,EAAO,OAAAC,iBAAA,CAAQ,eAAe,CAAC,CAAA,CAAA;EACjC,CAAA;AAEO,QAAM,WAAW,CACtB;EAAA,EACE,MAAS,GAAA,KAAA;EAAA,EACT,OAAS,EAAA;EAAA,IACP,KAAA,EAAO,eAAe,EAAC;EAAA,IACvB,KAAA,EAAO,eAAe,EAAC;EAAA,IACvB,GAAA,EAAK,aAAa,EAAC;EAAA,MACjB,EAAC;EACP,CAUI,GAAA,IACJ,GAOG,KAAA;EACH,EAAI,IAAA,CAAC,IAAI,IAAM,EAAA;EACb,IAAM,MAAA,IAAI,MAAM,sBAAsB,CAAA,CAAA;EAAA,GACxC;EACA,EAAM,MAAA,UAAA,GAAa,GAChB,CAAA,IAAA,CACA,OAAQ,CAAA,aAAA,EAAe,CAAC,CAAG,EAAA,EAAA,KAAO,EAAG,CAAA,WAAA,EAAa,CAAA,CAAA;EACrD,EAAA,MAAM,iBAAiB,MAAO,CAAA,WAAA;EAAA,IAC5B,OAAO,OAAQ,CAAA,GAAA,CAAI,OAAW,IAAA,EAAE,CAE7B,CAAA,MAAA,CAAO,CAAC,CAAC,GAAG,CAAM,KAAA,CAAC,qBAAqB,IAAK,CAAA,GAAG,CAAC,CAEjD,CAAA,MAAA,CAAO,CAAC,GAAG,KAAK,CAAA,KAAM,OAAO,KAAU,KAAA,QAAA,IAAY,MAAM,WAAW,CAAA,IAAK,KAAM,CAAA,QAAQ,CAAC,CACxF,CAAA,GAAA,CAAI,CAAC,CAAC,GAAA,EAAK,KAAK,CAAM,KAAA;EAAA,MACrB,IACG,OAAQ,CAAA,MAAA,EAAQ,OAAO,CACvB,CAAA,OAAA,CAAQ,SAAS,EAAE,CAAA;EAAA,MACtB,OAAO,KAAA,KAAU,QAAW,GAAA,KAAA,GAAQ,MAAM,WAAW,CAAA;EAAA,KACtD,CAAA;EAAA,GACL,CAAA;EAEA,EAAA,MAAM,CAAC,eAAA,EAAiB,aAAa,CAAA,GAAI,oBAAqB,EAAA,CAAA;EAC9D,EAAA,MAAM,WAAW,gBAAiB,EAAA,CAAA;EAElC,EAAO,OAAA;EAAA,IACL;EAAA,MACE,KAAO,EAAA,cAAA;EAAA,MACP,MAAQ,EAAA;EAAA,QACN,GAAG,UAAW,CAAA;EAAA,UACZ,GAAG,mBAAA;EAAA,UACH,MAAQ,EAAA,KAAA;EAAA,UACR,cAAgB,EAAA,eAAA;EAAA,UAChB,eAAiB,EAAA,IAAA;EAAA,SAClB,CAAA;EAAA,OACH;EAAA,MACA,OAAS,EAAA;EAAA,QACP,eAAA,CAAgB,EAAE,QAAA,EAAU,CAAA;EAAA,QAC5B,UAAU,IAAK,CAAA,EAAE,UAAU,CAAC,UAAU,GAAG,CAAA;EAAA,QACzC,OAAQ,EAAA;EAAA,QACR,YAAA;EAAA,OACF;EAAA,KACF;EAAA,IACA,GAAG,MAAO,CAAA,OAAA,CAAQ,cAAc,CAAA,CAAE,IAAI,CAAC,CAAC,IAAM,EAAA,KAAK,CAAM,KAAA;EACvD,MAAA,MAAM,UAAa,GAAA,UAAA,IACjB,IAAS,KAAA,OAAA,GAAU,EACjB,GAAA,IAAA,CAAK,OAAQ,CAAA,aAAA,EAAe,CAAC,CAAA,EAAG,EAAO,KAAA,EAAA,CAAG,aAAa,CAAA,CAAA,CAAA;EAG3D,MAAO,OAAA;EAAA,QACL,KAAA;EAAA,QACA,MAAQ,EAAA;EAAA,UACN,GAAG,UAAW,CAAA;EAAA,YACZ,GAAG,mBAAA;EAAA,YACH,IAAM,EAAA,UAAA;EAAA,YACN,MAAQ,EAAA,MAAA;EAAA,YACR,cAAA,EAAgB,GAAG,IAAI,CAAA,QAAA,CAAA;EAAA,WACxB,CAAA;EAAA,UACD,GAAG,UAAW,CAAA;EAAA,YACZ,GAAG,mBAAA;EAAA,YACH,IAAM,EAAA,UAAA;EAAA,YACN,MAAQ,EAAA,KAAA;EAAA,YACR,cAAA,EAAgB,GAAG,IAAI,CAAA,OAAA,CAAA;EAAA,WACxB,CAAA;EAAA,SACH;EAAA,QACA,OAAS,EAAA;EAAA,UACP,aAAA;EAAA,UACA,UAAU,OAAQ,CAAA;EAAA,YAChB,OAAA,EAAS,CAAC,YAAY,CAAA;EAAA,YACtB,QAAU,EAAA,IAAA;EAAA,YACV,SAAW,EAAA,IAAA;EAAA,YACX,OAAA,EAAS,GAAG,IAAI,CAAA,IAAA,CAAA;EAAA,WACjB,CAAA;EAAA,UACD,OAAQ,EAAA;EAAA,UACR,YAAA;EAAA,SACF;EAAA,QACA,QAAA;EAAA,OACF,CAAA;EAAA,KACD,CAAA;EAAA,IACD;EAAA,MACE,KAAO,EAAA,cAAA;EAAA,MACP,MAAQ,EAAA;EAAA,QACN;EAAA,UACE,GAAK,EAAA,MAAA;EAAA,UACL,cAAA,EAAgB,CAAC,EAAE,IAAK,EAAA,KAAM,GAAG,IAAK,CAAA,OAAA,CAAQ,QAAU,EAAA,EAAE,CAAC,CAAA,SAAA,CAAA;EAAA,UAC3D,eAAiB,EAAA,IAAA;EAAA,SACnB;EAAA,QACA;EAAA,UACE,GAAK,EAAA,MAAA;EAAA,SACP;EAAA,OACF;EAAA,MACA,OAAS,EAAA;EAAA,QACP,UAAU,IAAK,CAAA,EAAE,UAAU,CAAC,UAAU,GAAG,CAAA;EAAA,QACzCC,oBAAI,EAAE,QAAA,EAAU,oBAAqB,CAAA,mBAAmB,GAAG,CAAA;EAAA,QAC3D;EAAA,UACE,IAAM,EAAA,uCAAA;EAAA;EAAA;EAAA;EAAA;EAAA,UAKN,cAAA,CAAe,GAAG,MAAQ,EAAA;EACxB,YAAA,KAAA,MAAW,IAAQ,IAAA,MAAA,CAAO,MAAO,CAAA,MAAM,CAAG,EAAA;EACxC,cAAA,IAAI,EAAE,MAAU,IAAA,IAAA,CAAA;EAAO,gBAAA,SAAA;EAEvB,cAAK,IAAA,CAAA,IAAA,GAAO,KAAK,IAAK,CAAA,OAAA;EAAA,gBACpB,gCAAA;EAAA,gBACA,CAAA,gBAAA,EAAmB,IAAI,IAAI,CAAA,CAAA,CAAA;EAAA,eAC7B,CAAA;EAAA,aACF;EAAA,WACF;EAAA,SACF;EAAA,QACA,UAAA;EAAA,OACF;EAAA,MACA,QAAA;EAAA,KACF;EAAA,GACF,CAAA;EACF;;;;;;;;"}
1
+ {"version":3,"file":"rollup.umd.js","sources":["../src/rollup/utils/globalResolver.ts","../src/rollup/plugins/globals.ts","../src/rollup/plugins/skip.ts","../src/rollup/utils/commonOptions.ts","../src/rollup/utils/externalResolver.ts","../src/rollup/utils/withMinify.ts","../src/rollup/index.ts"],"sourcesContent":["export default function (external: string) {\n if (external.startsWith('@zodui/')) {\n return external\n .replace(/[@/-](\\w)/g, (_, c) => c.toUpperCase())\n }\n return {\n react: 'React',\n // TODO `react/jsx-runtime` is not supported `umd`\n 'react/jsx-runtime': 'ReactJSXRuntime',\n // https://cdn.jsdelivr.net/npm/react@18.2.0/umd/react.development.js\n 'react-dom': 'ReactDOM',\n // https://cdn.jsdelivr.net/npm/react-dom@18.2.0/umd/react-dom.development.js\n // TODO make the library use the global variable `TDesignReact` replace `TDesign`\n 'tdesign-react/esm': 'TDesign',\n // https://cdn.jsdelivr.net/npm/tdesign-react@1.4.0/dist/tdesign.js\n // https://cdn.jsdelivr.net/npm/tdesign-react@1.4.0/dist/tdesign.css\n 'tdesign-icons-react': 'TDesignIconReact',\n // https://cdn.jsdelivr.net/npm/tdesign-icons-react@1.4.0/dist/index.js\n zod: 'Zod',\n '@zodui/core': 'ZodUICore',\n '@zodui/core/utils': 'ZodUICoreUtils',\n '@zodui/react': 'ZodUIReact'\n }[external]\n}\n","import type { Plugin, PluginImpl } from 'rollup'\n\nimport globalResolver from '../utils/globalResolver'\n\ninterface GlobalsOptions {\n external?: (string | RegExp)[]\n}\n\nexport function createGlobalsLinkage() {\n let globals = {}\n const dependencies = new Set<string>([])\n return [\n (({ external } = {}) => {\n return {\n name: 'globals',\n resolveId(id) {\n if (external?.some(dep => dep instanceof RegExp ? dep.test(id) : dep === id)) {\n dependencies.add(id)\n return { id, external: true }\n }\n return null\n },\n outputOptions(options) {\n globals = [...dependencies].reduce((acc, value) => ({\n ...acc,\n [value]: globalResolver(value)\n }), {})\n return { ...options, globals }\n }\n }\n }) as PluginImpl<GlobalsOptions>,\n { outputOptions: options => ({ ...options, globals }) } as Plugin\n ] as const\n}\n","import type { PluginImpl } from 'rollup'\n\ninterface Options {\n patterns?: (string | RegExp)[]\n}\n\nexport default ((options = {}) => {\n return {\n name: 'skip',\n // skip the specified files by `options.patterns`\n load(id) {\n if (\n options.patterns?.some((pattern) =>\n typeof pattern === 'string'\n ? id.includes(pattern)\n : pattern.test(id)\n )\n ) {\n return ''\n }\n }\n }\n}) as PluginImpl<Options>\n","import type { OutputOptions } from 'rollup'\n\nconst defineOutput = <O extends OutputOptions>(output: O) => output\n\nexport const commonOutputOptions = defineOutput({\n dir: 'dist',\n exports: 'named',\n interop: 'auto',\n sourcemap: true\n})\n","export default function () {\n const cwd = process.cwd()\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const pkg = require(`${cwd}/package.json`)\n const { dependencies = {}, peerDependencies = {} } = pkg\n const external = <(string | RegExp)[]>Object\n .keys(dependencies)\n .concat(Object.keys(peerDependencies))\n return external\n .map(dep => new RegExp(`^${dep}(/.*)?$`))\n}\n","import terser from '@rollup/plugin-terser'\nimport type { OutputOptions, OutputPlugin } from 'rollup'\n\nexport default function (output: OutputOptions & {\n entryFileNames?: string\n plugins?: OutputPlugin[]\n}): OutputOptions[] {\n return [\n output,\n {\n ...output,\n entryFileNames: output.entryFileNames?.replace(/(\\.js)$/, '.min$1'),\n plugins: [...(output.plugins ?? []), terser()]\n }\n ]\n}\n","import { resolve } from 'node:path'\n\nimport { getWorkspaceDir } from '@jiek/utils/getWorkspaceDir'\nimport json from '@rollup/plugin-json'\nimport autoprefixer from 'autoprefixer'\nimport type { InputPluginOption, RollupOptions } from 'rollup'\nimport { dts } from 'rollup-plugin-dts'\nimport esbuild from 'rollup-plugin-esbuild'\nimport postcss from 'rollup-plugin-postcss'\n\nimport { createGlobalsLinkage } from './plugins/globals'\nimport skip from './plugins/skip'\nimport { commonOutputOptions } from './utils/commonOptions'\nimport externalResolver from './utils/externalResolver'\nimport withMinify from './utils/withMinify'\n\nconst workspaceRoot = getWorkspaceDir()\nfunction resolveWorkspacePath(p: string) {\n return resolve(workspaceRoot, p)\n}\n\nexport const template = (\n {\n styled = false,\n plugins: {\n index: indexPlugins = [],\n entry: entryPlugins = [],\n dts: dtsPlugins = []\n } = {}\n }: {\n /**\n * include styles files\n */\n styled?: boolean\n plugins?: {\n index?: InputPluginOption\n entry?: InputPluginOption\n dts?: InputPluginOption\n }\n } = {},\n pkg: {\n name?: string\n exports?: Record<string, string | {\n import: string\n 'inner-src': string\n }>\n }\n) => {\n if (!pkg.name) {\n throw new Error('pkg.name is required')\n }\n const namePrefix = pkg\n .name\n .replace(/[@|/-](\\w)/g, (_, $1) => $1.toUpperCase())\n const exportsEntries = Object.fromEntries(\n Object.entries(pkg.exports ?? {})\n // filter static files\n .filter(([key]) => !/\\.(json|css|scss)$/.test(key))\n // filter no `inner-src` or `import` field entries\n .filter(([, value]) => typeof value === 'object' && value['inner-src'] && value['import'])\n .map(([key, value]) => [\n key\n .replace(/^\\.$/, 'index')\n .replace(/^\\.\\//, ''),\n typeof value === 'string' ? value : value['inner-src']\n ])\n )\n\n const [globalsRegister, globalsOutput] = createGlobalsLinkage()\n const external = externalResolver()\n\n const commonPlugins = [\n json()\n ]\n return [\n {\n input: exportsEntries,\n output: [\n ...withMinify({\n ...commonOutputOptions,\n format: 'esm',\n entryFileNames: '[name].esm.js',\n preserveModules: true\n })\n ],\n plugins: [\n commonPlugins,\n globalsRegister({ external }),\n styled && skip({ patterns: [/\\.s?css$/] }),\n esbuild(),\n indexPlugins\n ]\n },\n ...Object.entries(exportsEntries).map(([name, input]) => {\n const outputName = namePrefix + (\n name === 'index' ? '' : (\n name.replace(/[@|/-](\\w)/g, (_, $1) => $1.toUpperCase())\n )\n )\n return {\n input: input,\n output: [\n ...withMinify({\n ...commonOutputOptions,\n name: outputName,\n format: 'iife',\n entryFileNames: `${name}.iife.js`\n }),\n ...withMinify({\n ...commonOutputOptions,\n name: outputName,\n format: 'umd',\n entryFileNames: `${name}.umd.js`\n })\n ],\n plugins: [\n commonPlugins,\n globalsOutput,\n styled && postcss({\n plugins: [autoprefixer],\n minimize: true,\n sourceMap: true,\n extract: `${name}.css`\n }),\n esbuild(),\n entryPlugins\n ],\n external\n }\n }),\n {\n input: exportsEntries,\n output: [\n {\n dir: 'dist',\n entryFileNames: ({ name }) => `${name.replace(/^src\\//, '')}.esm.d.ts`,\n preserveModules: true\n },\n {\n dir: 'dist'\n }\n ],\n plugins: [\n commonPlugins,\n styled && skip({ patterns: [/\\.s?css$/] }),\n dts({ tsconfig: resolveWorkspacePath('tsconfig.dts.json') }),\n {\n name: 'rollup-plugin-declare-module-replacer',\n /**\n * replace relative path `declare module './xxx'` to `declare module '{{package name}}'`\n * in output file generated\n */\n generateBundle(_, bundle) {\n for (const file of Object.values(bundle)) {\n if (!('code' in file)) continue\n\n file.code = file.code.replace(\n /declare module ['|\"]\\..*['|\"]/g,\n `declare module '${pkg.name}'`\n )\n }\n }\n },\n dtsPlugins\n ],\n external\n }\n ] as RollupOptions[]\n}\n"],"names":["terser","getWorkspaceDir","resolve","json","esbuild","postcss","autoprefixer","dts"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("node:path"),require("@jiek/utils/getWorkspaceDir"),require("autoprefixer"),require("rollup-plugin-dts"),require("rollup-plugin-postcss"),require("@rollup/plugin-terser")):"function"==typeof define&&define.amd?define(["exports","node:path","@jiek/utils/getWorkspaceDir","autoprefixer","rollup-plugin-dts","rollup-plugin-postcss","@rollup/plugin-terser"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).jiekrollup={},e.node_path,e.getWorkspaceDir,e.autoprefixer,e.rollupPluginDts,e.postcss,e.terser)}(this,(function(e,t,r,s,n,i,o){"use strict";function p(e){return e.startsWith("@zodui/")?e.replace(/[@/-](\w)/g,((e,t)=>t.toUpperCase())):{react:"React","react/jsx-runtime":"ReactJSXRuntime","react-dom":"ReactDOM","tdesign-react/esm":"TDesign","tdesign-icons-react":"TDesignIconReact",zod:"Zod","@zodui/core":"ZodUICore","@zodui/core/utils":"ZodUICoreUtils","@zodui/react":"ZodUIReact"}[e]}var l=(e={})=>({name:"skip",load(t){if(e.patterns?.some((e=>"string"==typeof e?t.includes(e):e.test(t))))return""}});const u={dir:"dist",exports:"named",sourcemap:!0};function a(e){return[e,{...e,entryFileNames:e.entryFileNames?.replace(/(\.js)$/,".min$1"),plugins:[...e.plugins??[],o()]}]}const c=require("rollup-plugin-esbuild").default,d=r.getWorkspaceDir();e.template=({styled:e=!1,plugins:{index:r=[],entry:o=[],dts:m=[]}={}}={},g)=>{if(!g.name)throw new Error("pkg.name is required");const f=g.name.replace(/[@|/-](\w)/g,((e,t)=>t.toUpperCase())),x=Object.fromEntries(Object.entries(g.exports??{}).filter((([e])=>!/\.(json|css|scss)$/.test(e))).filter((([,e])=>"object"==typeof e&&e["inner-src"]&&e.import)).map((([e,t])=>[e.replace(/^\.$/,"index").replace(/^\.\//,""),"string"==typeof t?t:t["inner-src"]]))),[j,y]=function(){let e={};const t=new Set([]);return[({external:r}={})=>({name:"globals",resolveId:e=>r?.some((t=>t instanceof RegExp?t.test(e):t===e))?(t.add(e),{id:e,external:!0}):null,outputOptions:r=>(e=[...t].reduce(((e,t)=>({...e,[t]:p(t)})),{}),{...r,globals:e})}),{outputOptions:t=>({...t,globals:e})}]}(),b=function(){const e=process.cwd(),t=require(`${e}/package.json`),{dependencies:r={},peerDependencies:s={}}=t;return Object.keys(r).concat(Object.keys(s)).map((e=>new RegExp(`^${e}(/.*)?$`)))}();return[{input:x,output:[...a({...u,format:"esm",entryFileNames:"[name].esm.js",preserveModules:!0})],plugins:[j({external:b}),e&&l({patterns:[/\.s?css$/]}),c(),r]},...Object.entries(x).map((([t,r])=>{const n=f+("index"===t?"":t.replace(/[@|/-](\w)/g,((e,t)=>t.toUpperCase())));return{input:r,output:[...a({...u,name:n,format:"iife",entryFileNames:`${t}.iife.js`}),...a({...u,name:n,format:"umd",entryFileNames:`${t}.umd.js`})],plugins:[y,e&&i({plugins:[s],minimize:!0,sourceMap:!0,extract:`${t}.css`}),c(),o],external:b}})),{input:x,output:[{dir:"dist",entryFileNames:({name:e})=>`${e.replace(/^src\//,"")}.esm.d.ts`,preserveModules:!0},{dir:"dist"}],plugins:[e&&l({patterns:[/\.s?css$/]}),n.dts({tsconfig:($="tsconfig.dts.json",t.resolve(d,$))}),{name:"rollup-plugin-declare-module-replacer",generateBundle(e,t){for(const e of Object.values(t))"code"in e&&(e.code=e.code.replace(/declare module ['|"]\..*['|"]/g,`declare module '${g.name}'`))}},m],external:b}];var $}}));
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("node:path"),require("@jiek/utils/getWorkspaceDir"),require("@rollup/plugin-json"),require("autoprefixer"),require("rollup-plugin-dts"),require("rollup-plugin-esbuild"),require("rollup-plugin-postcss"),require("@rollup/plugin-terser")):"function"==typeof define&&define.amd?define(["exports","node:path","@jiek/utils/getWorkspaceDir","@rollup/plugin-json","autoprefixer","rollup-plugin-dts","rollup-plugin-esbuild","rollup-plugin-postcss","@rollup/plugin-terser"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).jiekrollup={},e.node_path,e.getWorkspaceDir,e.json,e.autoprefixer,e.rollupPluginDts,e.esbuild,e.postcss,e.terser)}(this,(function(e,t,r,s,n,i,o,l,u){"use strict";function p(e){return e&&e.__esModule?e:{default:e}}var a=p(s),c=p(n),d=p(o),m=p(l),f=p(u);function g(e){return e.startsWith("@zodui/")?e.replace(/[@/-](\w)/g,((e,t)=>t.toUpperCase())):{react:"React","react/jsx-runtime":"ReactJSXRuntime","react-dom":"ReactDOM","tdesign-react/esm":"TDesign","tdesign-icons-react":"TDesignIconReact",zod:"Zod","@zodui/core":"ZodUICore","@zodui/core/utils":"ZodUICoreUtils","@zodui/react":"ZodUIReact"}[e]}var j=(e={})=>({name:"skip",load(t){if(e.patterns?.some((e=>"string"==typeof e?t.includes(e):e.test(t))))return""}});const x={dir:"dist",exports:"named",interop:"auto",sourcemap:!0};function y(e){return[e,{...e,entryFileNames:e.entryFileNames?.replace(/(\.js)$/,".min$1"),plugins:[...e.plugins??[],f.default()]}]}const b=r.getWorkspaceDir();e.template=({styled:e=!1,plugins:{index:r=[],entry:s=[],dts:n=[]}={}}={},o)=>{if(!o.name)throw new Error("pkg.name is required");const l=o.name.replace(/[@|/-](\w)/g,((e,t)=>t.toUpperCase())),u=Object.fromEntries(Object.entries(o.exports??{}).filter((([e])=>!/\.(json|css|scss)$/.test(e))).filter((([,e])=>"object"==typeof e&&e["inner-src"]&&e.import)).map((([e,t])=>[e.replace(/^\.$/,"index").replace(/^\.\//,""),"string"==typeof t?t:t["inner-src"]]))),[p,f]=function(){let e={};const t=new Set([]);return[({external:r}={})=>({name:"globals",resolveId:e=>r?.some((t=>t instanceof RegExp?t.test(e):t===e))?(t.add(e),{id:e,external:!0}):null,outputOptions:r=>(e=[...t].reduce(((e,t)=>({...e,[t]:g(t)})),{}),{...r,globals:e})}),{outputOptions:t=>({...t,globals:e})}]}(),$=function(){const e=process.cwd(),t=require(`${e}/package.json`),{dependencies:r={},peerDependencies:s={}}=t;return Object.keys(r).concat(Object.keys(s)).map((e=>new RegExp(`^${e}(/.*)?$`)))}(),k=[a.default()];return[{input:u,output:[...y({...x,format:"esm",entryFileNames:"[name].esm.js",preserveModules:!0})],plugins:[k,p({external:$}),e&&j({patterns:[/\.s?css$/]}),d.default(),r]},...Object.entries(u).map((([t,r])=>{const n=l+("index"===t?"":t.replace(/[@|/-](\w)/g,((e,t)=>t.toUpperCase())));return{input:r,output:[...y({...x,name:n,format:"iife",entryFileNames:`${t}.iife.js`}),...y({...x,name:n,format:"umd",entryFileNames:`${t}.umd.js`})],plugins:[k,f,e&&m.default({plugins:[c.default],minimize:!0,sourceMap:!0,extract:`${t}.css`}),d.default(),s],external:$}})),{input:u,output:[{dir:"dist",entryFileNames:({name:e})=>`${e.replace(/^src\//,"")}.esm.d.ts`,preserveModules:!0},{dir:"dist"}],plugins:[k,e&&j({patterns:[/\.s?css$/]}),i.dts({tsconfig:(q="tsconfig.dts.json",t.resolve(b,q))}),{name:"rollup-plugin-declare-module-replacer",generateBundle(e,t){for(const e of Object.values(t))"code"in e&&(e.code=e.code.replace(/declare module ['|"]\..*['|"]/g,`declare module '${o.name}'`))}},n],external:$}];var q}}));
2
2
  //# sourceMappingURL=rollup.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rollup.umd.min.js","sources":["../src/rollup/utils/globalResolver.ts","../src/rollup/plugins/skip.ts","../src/rollup/utils/commonOptions.ts","../src/rollup/utils/withMinify.ts","../src/rollup/index.ts","../src/rollup/plugins/globals.ts","../src/rollup/utils/externalResolver.ts"],"sourcesContent":["export default function (external: string) {\n if (external.startsWith('@zodui/')) {\n return external\n .replace(/[@/-](\\w)/g, (_, c) => c.toUpperCase())\n }\n return {\n react: 'React',\n // TODO `react/jsx-runtime` is not supported `umd`\n 'react/jsx-runtime': 'ReactJSXRuntime',\n // https://cdn.jsdelivr.net/npm/react@18.2.0/umd/react.development.js\n 'react-dom': 'ReactDOM',\n // https://cdn.jsdelivr.net/npm/react-dom@18.2.0/umd/react-dom.development.js\n // TODO make the library use the global variable `TDesignReact` replace `TDesign`\n 'tdesign-react/esm': 'TDesign',\n // https://cdn.jsdelivr.net/npm/tdesign-react@1.4.0/dist/tdesign.js\n // https://cdn.jsdelivr.net/npm/tdesign-react@1.4.0/dist/tdesign.css\n 'tdesign-icons-react': 'TDesignIconReact',\n // https://cdn.jsdelivr.net/npm/tdesign-icons-react@1.4.0/dist/index.js\n zod: 'Zod',\n '@zodui/core': 'ZodUICore',\n '@zodui/core/utils': 'ZodUICoreUtils',\n '@zodui/react': 'ZodUIReact'\n }[external]\n}\n","import type { PluginImpl } from 'rollup'\n\ninterface Options {\n patterns?: (string | RegExp)[]\n}\n\nexport default ((options = {}) => {\n return {\n name: 'skip',\n // skip the specified files by `options.patterns`\n load(id) {\n if (\n options.patterns?.some((pattern) =>\n typeof pattern === 'string'\n ? id.includes(pattern)\n : pattern.test(id)\n )\n ) {\n return ''\n }\n }\n }\n}) as PluginImpl<Options>\n","import type { OutputOptions } from 'rollup'\n\nconst defineOutput = <O extends OutputOptions>(output: O) => output\n\nexport const commonOutputOptions = defineOutput({\n dir: 'dist',\n exports: 'named',\n sourcemap: true\n})\n","import terser from '@rollup/plugin-terser'\nimport type { OutputOptions, OutputPlugin } from 'rollup'\n\nexport default function (output: OutputOptions & {\n entryFileNames?: string\n plugins?: OutputPlugin[]\n}): OutputOptions[] {\n return [\n output,\n {\n ...output,\n entryFileNames: output.entryFileNames?.replace(/(\\.js)$/, '.min$1'),\n plugins: [...(output.plugins ?? []), terser()]\n }\n ]\n}\n","import { resolve } from 'node:path'\n\nimport { getWorkspaceDir } from '@jiek/utils/getWorkspaceDir'\nimport autoprefixer from 'autoprefixer'\nimport type { InputPluginOption, RollupOptions } from 'rollup'\nimport { dts } from 'rollup-plugin-dts'\nimport esbuildModule = require('rollup-plugin-esbuild')\nimport postcss from 'rollup-plugin-postcss'\nconst esbuild = esbuildModule.default\n\nimport { createGlobalsLinkage } from './plugins/globals'\nimport skip from './plugins/skip'\nimport { commonOutputOptions } from './utils/commonOptions'\nimport externalResolver from './utils/externalResolver'\nimport withMinify from './utils/withMinify'\n\nconst workspaceRoot = getWorkspaceDir()\nfunction resolveWorkspacePath(p: string) {\n return resolve(workspaceRoot, p)\n}\n\nexport const template = (\n {\n styled = false,\n plugins: {\n index: indexPlugins = [],\n entry: entryPlugins = [],\n dts: dtsPlugins = []\n } = {}\n }: {\n /**\n * include styles files\n */\n styled?: boolean\n plugins?: {\n index?: InputPluginOption\n entry?: InputPluginOption\n dts?: InputPluginOption\n }\n } = {},\n pkg: {\n name?: string\n exports?: Record<string, string | {\n import: string\n 'inner-src': string\n }>\n }\n) => {\n if (!pkg.name) {\n throw new Error('pkg.name is required')\n }\n const namePrefix = pkg\n .name\n .replace(/[@|/-](\\w)/g, (_, $1) => $1.toUpperCase())\n const exportsEntries = Object.fromEntries(\n Object.entries(pkg.exports ?? {})\n // filter static files\n .filter(([key]) => !/\\.(json|css|scss)$/.test(key))\n // filter no `inner-src` or `import` field entries\n .filter(([, value]) => typeof value === 'object' && value['inner-src'] && value['import'])\n .map(([key, value]) => [\n key\n .replace(/^\\.$/, 'index')\n .replace(/^\\.\\//, ''),\n typeof value === 'string' ? value : value['inner-src']\n ])\n )\n\n const [globalsRegister, globalsOutput] = createGlobalsLinkage()\n const external = externalResolver()\n\n return [\n {\n input: exportsEntries,\n output: [\n ...withMinify({\n ...commonOutputOptions,\n format: 'esm',\n entryFileNames: '[name].esm.js',\n preserveModules: true\n })\n ],\n plugins: [\n globalsRegister({ external }),\n styled && skip({ patterns: [/\\.s?css$/] }),\n esbuild(),\n indexPlugins\n ]\n },\n ...Object.entries(exportsEntries).map(([name, input]) => {\n const outputName = namePrefix + (\n name === 'index' ? '' : (\n name.replace(/[@|/-](\\w)/g, (_, $1) => $1.toUpperCase())\n )\n )\n return {\n input: input,\n output: [\n ...withMinify({\n ...commonOutputOptions,\n name: outputName,\n format: 'iife',\n entryFileNames: `${name}.iife.js`\n }),\n ...withMinify({\n ...commonOutputOptions,\n name: outputName,\n format: 'umd',\n entryFileNames: `${name}.umd.js`\n })\n ],\n plugins: [\n globalsOutput,\n styled && postcss({\n plugins: [autoprefixer],\n minimize: true,\n sourceMap: true,\n extract: `${name}.css`\n }),\n esbuild(),\n entryPlugins\n ],\n external\n }\n }),\n {\n input: exportsEntries,\n output: [\n {\n dir: 'dist',\n entryFileNames: ({ name }) => `${name.replace(/^src\\//, '')}.esm.d.ts`,\n preserveModules: true\n },\n {\n dir: 'dist'\n }\n ],\n plugins: [\n styled && skip({ patterns: [/\\.s?css$/] }),\n dts({ tsconfig: resolveWorkspacePath('tsconfig.dts.json') }),\n {\n name: 'rollup-plugin-declare-module-replacer',\n /**\n * replace relative path `declare module './xxx'` to `declare module '{{package name}}'`\n * in output file generated\n */\n generateBundle(_, bundle) {\n for (const file of Object.values(bundle)) {\n if (!('code' in file)) continue\n\n file.code = file.code.replace(\n /declare module ['|\"]\\..*['|\"]/g,\n `declare module '${pkg.name}'`\n )\n }\n }\n },\n dtsPlugins\n ],\n external\n }\n ] as RollupOptions[]\n}\n","import type { Plugin, PluginImpl } from 'rollup'\n\nimport globalResolver from '../utils/globalResolver'\n\ninterface GlobalsOptions {\n external?: (string | RegExp)[]\n}\n\nexport function createGlobalsLinkage() {\n let globals = {}\n const dependencies = new Set<string>([])\n return [\n (({ external } = {}) => {\n return {\n name: 'globals',\n resolveId(id) {\n if (external?.some(dep => dep instanceof RegExp ? dep.test(id) : dep === id)) {\n dependencies.add(id)\n return { id, external: true }\n }\n return null\n },\n outputOptions(options) {\n globals = [...dependencies].reduce((acc, value) => ({\n ...acc,\n [value]: globalResolver(value)\n }), {})\n return { ...options, globals }\n }\n }\n }) as PluginImpl<GlobalsOptions>,\n { outputOptions: options => ({ ...options, globals }) } as Plugin\n ] as const\n}\n","export default function () {\n const cwd = process.cwd()\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const pkg = require(`${cwd}/package.json`)\n const { dependencies = {}, peerDependencies = {} } = pkg\n const external = <(string | RegExp)[]>Object\n .keys(dependencies)\n .concat(Object.keys(peerDependencies))\n return external\n .map(dep => new RegExp(`^${dep}(/.*)?$`))\n}\n"],"names":["globalResolver","external","startsWith","replace","_","c","toUpperCase","react","zod","skip","options","name","load","id","patterns","some","pattern","includes","test","commonOutputOptions","dir","exports","sourcemap","withMinify","output","entryFileNames","plugins","terser","esbuild","require","default","workspaceRoot","getWorkspaceDir","styled","index","indexPlugins","entry","entryPlugins","dts","dtsPlugins","pkg","Error","namePrefix","$1","exportsEntries","Object","fromEntries","entries","filter","key","value","map","globalsRegister","globalsOutput","globals","dependencies","Set","resolveId","dep","RegExp","add","outputOptions","reduce","acc","createGlobalsLinkage","cwd","process","peerDependencies","keys","concat","externalResolver","input","format","preserveModules","outputName","postcss","autoprefixer","minimize","sourceMap","extract","tsconfig","p","resolve","generateBundle","bundle","file","values","code"],"mappings":"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"}
1
+ {"version":3,"file":"rollup.umd.min.js","sources":["../src/rollup/utils/globalResolver.ts","../src/rollup/plugins/skip.ts","../src/rollup/utils/commonOptions.ts","../src/rollup/utils/withMinify.ts","../src/rollup/index.ts","../src/rollup/plugins/globals.ts","../src/rollup/utils/externalResolver.ts"],"sourcesContent":["export default function (external: string) {\n if (external.startsWith('@zodui/')) {\n return external\n .replace(/[@/-](\\w)/g, (_, c) => c.toUpperCase())\n }\n return {\n react: 'React',\n // TODO `react/jsx-runtime` is not supported `umd`\n 'react/jsx-runtime': 'ReactJSXRuntime',\n // https://cdn.jsdelivr.net/npm/react@18.2.0/umd/react.development.js\n 'react-dom': 'ReactDOM',\n // https://cdn.jsdelivr.net/npm/react-dom@18.2.0/umd/react-dom.development.js\n // TODO make the library use the global variable `TDesignReact` replace `TDesign`\n 'tdesign-react/esm': 'TDesign',\n // https://cdn.jsdelivr.net/npm/tdesign-react@1.4.0/dist/tdesign.js\n // https://cdn.jsdelivr.net/npm/tdesign-react@1.4.0/dist/tdesign.css\n 'tdesign-icons-react': 'TDesignIconReact',\n // https://cdn.jsdelivr.net/npm/tdesign-icons-react@1.4.0/dist/index.js\n zod: 'Zod',\n '@zodui/core': 'ZodUICore',\n '@zodui/core/utils': 'ZodUICoreUtils',\n '@zodui/react': 'ZodUIReact'\n }[external]\n}\n","import type { PluginImpl } from 'rollup'\n\ninterface Options {\n patterns?: (string | RegExp)[]\n}\n\nexport default ((options = {}) => {\n return {\n name: 'skip',\n // skip the specified files by `options.patterns`\n load(id) {\n if (\n options.patterns?.some((pattern) =>\n typeof pattern === 'string'\n ? id.includes(pattern)\n : pattern.test(id)\n )\n ) {\n return ''\n }\n }\n }\n}) as PluginImpl<Options>\n","import type { OutputOptions } from 'rollup'\n\nconst defineOutput = <O extends OutputOptions>(output: O) => output\n\nexport const commonOutputOptions = defineOutput({\n dir: 'dist',\n exports: 'named',\n interop: 'auto',\n sourcemap: true\n})\n","import terser from '@rollup/plugin-terser'\nimport type { OutputOptions, OutputPlugin } from 'rollup'\n\nexport default function (output: OutputOptions & {\n entryFileNames?: string\n plugins?: OutputPlugin[]\n}): OutputOptions[] {\n return [\n output,\n {\n ...output,\n entryFileNames: output.entryFileNames?.replace(/(\\.js)$/, '.min$1'),\n plugins: [...(output.plugins ?? []), terser()]\n }\n ]\n}\n","import { resolve } from 'node:path'\n\nimport { getWorkspaceDir } from '@jiek/utils/getWorkspaceDir'\nimport json from '@rollup/plugin-json'\nimport autoprefixer from 'autoprefixer'\nimport type { InputPluginOption, RollupOptions } from 'rollup'\nimport { dts } from 'rollup-plugin-dts'\nimport esbuild from 'rollup-plugin-esbuild'\nimport postcss from 'rollup-plugin-postcss'\n\nimport { createGlobalsLinkage } from './plugins/globals'\nimport skip from './plugins/skip'\nimport { commonOutputOptions } from './utils/commonOptions'\nimport externalResolver from './utils/externalResolver'\nimport withMinify from './utils/withMinify'\n\nconst workspaceRoot = getWorkspaceDir()\nfunction resolveWorkspacePath(p: string) {\n return resolve(workspaceRoot, p)\n}\n\nexport const template = (\n {\n styled = false,\n plugins: {\n index: indexPlugins = [],\n entry: entryPlugins = [],\n dts: dtsPlugins = []\n } = {}\n }: {\n /**\n * include styles files\n */\n styled?: boolean\n plugins?: {\n index?: InputPluginOption\n entry?: InputPluginOption\n dts?: InputPluginOption\n }\n } = {},\n pkg: {\n name?: string\n exports?: Record<string, string | {\n import: string\n 'inner-src': string\n }>\n }\n) => {\n if (!pkg.name) {\n throw new Error('pkg.name is required')\n }\n const namePrefix = pkg\n .name\n .replace(/[@|/-](\\w)/g, (_, $1) => $1.toUpperCase())\n const exportsEntries = Object.fromEntries(\n Object.entries(pkg.exports ?? {})\n // filter static files\n .filter(([key]) => !/\\.(json|css|scss)$/.test(key))\n // filter no `inner-src` or `import` field entries\n .filter(([, value]) => typeof value === 'object' && value['inner-src'] && value['import'])\n .map(([key, value]) => [\n key\n .replace(/^\\.$/, 'index')\n .replace(/^\\.\\//, ''),\n typeof value === 'string' ? value : value['inner-src']\n ])\n )\n\n const [globalsRegister, globalsOutput] = createGlobalsLinkage()\n const external = externalResolver()\n\n const commonPlugins = [\n json()\n ]\n return [\n {\n input: exportsEntries,\n output: [\n ...withMinify({\n ...commonOutputOptions,\n format: 'esm',\n entryFileNames: '[name].esm.js',\n preserveModules: true\n })\n ],\n plugins: [\n commonPlugins,\n globalsRegister({ external }),\n styled && skip({ patterns: [/\\.s?css$/] }),\n esbuild(),\n indexPlugins\n ]\n },\n ...Object.entries(exportsEntries).map(([name, input]) => {\n const outputName = namePrefix + (\n name === 'index' ? '' : (\n name.replace(/[@|/-](\\w)/g, (_, $1) => $1.toUpperCase())\n )\n )\n return {\n input: input,\n output: [\n ...withMinify({\n ...commonOutputOptions,\n name: outputName,\n format: 'iife',\n entryFileNames: `${name}.iife.js`\n }),\n ...withMinify({\n ...commonOutputOptions,\n name: outputName,\n format: 'umd',\n entryFileNames: `${name}.umd.js`\n })\n ],\n plugins: [\n commonPlugins,\n globalsOutput,\n styled && postcss({\n plugins: [autoprefixer],\n minimize: true,\n sourceMap: true,\n extract: `${name}.css`\n }),\n esbuild(),\n entryPlugins\n ],\n external\n }\n }),\n {\n input: exportsEntries,\n output: [\n {\n dir: 'dist',\n entryFileNames: ({ name }) => `${name.replace(/^src\\//, '')}.esm.d.ts`,\n preserveModules: true\n },\n {\n dir: 'dist'\n }\n ],\n plugins: [\n commonPlugins,\n styled && skip({ patterns: [/\\.s?css$/] }),\n dts({ tsconfig: resolveWorkspacePath('tsconfig.dts.json') }),\n {\n name: 'rollup-plugin-declare-module-replacer',\n /**\n * replace relative path `declare module './xxx'` to `declare module '{{package name}}'`\n * in output file generated\n */\n generateBundle(_, bundle) {\n for (const file of Object.values(bundle)) {\n if (!('code' in file)) continue\n\n file.code = file.code.replace(\n /declare module ['|\"]\\..*['|\"]/g,\n `declare module '${pkg.name}'`\n )\n }\n }\n },\n dtsPlugins\n ],\n external\n }\n ] as RollupOptions[]\n}\n","import type { Plugin, PluginImpl } from 'rollup'\n\nimport globalResolver from '../utils/globalResolver'\n\ninterface GlobalsOptions {\n external?: (string | RegExp)[]\n}\n\nexport function createGlobalsLinkage() {\n let globals = {}\n const dependencies = new Set<string>([])\n return [\n (({ external } = {}) => {\n return {\n name: 'globals',\n resolveId(id) {\n if (external?.some(dep => dep instanceof RegExp ? dep.test(id) : dep === id)) {\n dependencies.add(id)\n return { id, external: true }\n }\n return null\n },\n outputOptions(options) {\n globals = [...dependencies].reduce((acc, value) => ({\n ...acc,\n [value]: globalResolver(value)\n }), {})\n return { ...options, globals }\n }\n }\n }) as PluginImpl<GlobalsOptions>,\n { outputOptions: options => ({ ...options, globals }) } as Plugin\n ] as const\n}\n","export default function () {\n const cwd = process.cwd()\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const pkg = require(`${cwd}/package.json`)\n const { dependencies = {}, peerDependencies = {} } = pkg\n const external = <(string | RegExp)[]>Object\n .keys(dependencies)\n .concat(Object.keys(peerDependencies))\n return external\n .map(dep => new RegExp(`^${dep}(/.*)?$`))\n}\n"],"names":["globalResolver","external","startsWith","replace","_","c","toUpperCase","react","zod","skip","options","name","load","id","patterns","some","pattern","includes","test","commonOutputOptions","dir","exports","interop","sourcemap","withMinify","output","entryFileNames","plugins","terser","workspaceRoot","getWorkspaceDir","styled","index","indexPlugins","entry","entryPlugins","dts","dtsPlugins","pkg","Error","namePrefix","$1","exportsEntries","Object","fromEntries","entries","filter","key","value","map","globalsRegister","globalsOutput","globals","dependencies","Set","resolveId","dep","RegExp","add","outputOptions","reduce","acc","createGlobalsLinkage","cwd","process","require","peerDependencies","keys","concat","externalResolver","commonPlugins","json","input","format","preserveModules","esbuild","outputName","postcss","autoprefixer","minimize","sourceMap","extract","tsconfig","p","resolve","generateBundle","bundle","file","values","code"],"mappings":"61BAAA,SAAAA,EAAyBC,GACnB,OAAAA,EAASC,WAAW,WACfD,EACJE,QAAQ,cAAc,CAACC,EAAGC,IAAMA,EAAEC,gBAEhC,CACLC,MAAO,QAEP,oBAAqB,kBAErB,YAAa,WAGb,oBAAqB,UAGrB,sBAAuB,mBAEvBC,IAAK,MACL,cAAe,YACf,oBAAqB,iBACrB,eAAgB,cAChBP,EACJ,CCjBA,IAAAQ,EAAgB,CAACC,EAAU,CAAA,KAClB,CACLC,KAAM,OAEN,IAAAC,CAAKC,GACH,GACEH,EAAQI,UAAUC,MAAMC,GACH,iBAAZA,EACHH,EAAGI,SAASD,GACZA,EAAQE,KAAKL,KAGZ,MAAA,EAEX,IClBJ,MAEaM,EAAmC,CAC9CC,IAAK,OACLC,QAAS,QACTC,QAAS,OACTC,WAAW,GCLb,SAAAC,EAAyBC,GAIhB,MAAA,CACLA,EACA,IACKA,EACHC,eAAgBD,EAAOC,gBAAgBvB,QAAQ,UAAW,UAC1DwB,QAAS,IAAKF,EAAOE,SAAW,GAAKC,cAG3C,CCCA,MAAMC,EAAgBC,EAAgBA,6BAKd,EAEpBC,UAAS,EACTJ,SACEK,MAAOC,EAAe,GACtBC,MAAOC,EAAe,GACtBC,IAAKC,EAAa,IAChB,CAAC,GAWH,CAAA,EACJC,KAQI,IAACA,EAAI3B,KACD,MAAA,IAAI4B,MAAM,wBAEZ,MAAAC,EAAaF,EAChB3B,KACAR,QAAQ,eAAe,CAACC,EAAGqC,IAAOA,EAAGnC,gBAClCoC,EAAiBC,OAAOC,YAC5BD,OAAOE,QAAQP,EAAIjB,SAAW,CAAA,GAE3ByB,QAAO,EAAEC,MAAU,qBAAqB7B,KAAK6B,KAE7CD,QAAO,EAAI,CAAAE,KAA4B,iBAAVA,GAAsBA,EAAM,cAAgBA,EAAc,SACvFC,KAAI,EAAEF,EAAKC,KAAW,CACrBD,EACG5C,QAAQ,OAAQ,SAChBA,QAAQ,QAAS,IACH,iBAAV6C,EAAqBA,EAAQA,EAAM,kBAIzCE,EAAiBC,GC5DnB,WACL,IAAIC,EAAU,CAAA,EACd,MAAMC,EAAe,IAAIC,IAAY,IAC9B,MAAA,CACJ,EAAGrD,YAAa,MACR,CACLU,KAAM,UACN4C,UAAU1C,GACJZ,GAAUc,MAAKyC,GAAOA,aAAeC,OAASD,EAAItC,KAAKL,GAAM2C,IAAQ3C,KACvEwC,EAAaK,IAAI7C,GACV,CAAEA,KAAIZ,UAAU,IAElB,KAET0D,cAAcjD,IACZ0C,EAAU,IAAIC,GAAcO,QAAO,CAACC,EAAKb,KAAW,IAC/Ca,EACHb,CAACA,GAAQhD,EAAegD,MACtB,CAAE,GACC,IAAKtC,EAAS0C,cAI3B,CAAEO,cAAejD,IAAA,IAAiBA,EAAS0C,aAE/C,CDmC2CU,GACnC7D,EErEmB,WACnB,MAAA8D,EAAMC,QAAQD,MAEdzB,EAAM2B,QAAQ,GAAGF,mBACjBV,aAAEA,EAAe,oBAAIa,EAAmB,IAAO5B,EAI9C,OAH+BK,OACnCwB,KAAKd,GACLe,OAAOzB,OAAOwB,KAAKD,IAEnBjB,KAAWO,GAAA,IAAIC,OAAO,IAAID,aAC/B,CF2DmBa,GAEXC,EAAgB,CACpBC,aAEK,MAAA,CACL,CACEC,MAAO9B,EACPjB,OAAQ,IACHD,EAAW,IACTL,EACHsD,OAAQ,MACR/C,eAAgB,gBAChBgD,iBAAiB,KAGrB/C,QAAS,CACP2C,EACApB,EAAgB,CAAEjD,aAClB8B,GAAUtB,EAAK,CAAEK,SAAU,CAAC,cAC5B6D,YACA1C,OAGDU,OAAOE,QAAQH,GAAgBO,KAAI,EAAEtC,EAAM6D,MAC5C,MAAMI,EAAapC,GACR,UAAT7B,EAAmB,GACjBA,EAAKR,QAAQ,eAAe,CAACC,EAAGqC,IAAOA,EAAGnC,iBAGvC,MAAA,CACLkE,QACA/C,OAAQ,IACHD,EAAW,IACTL,EACHR,KAAMiE,EACNH,OAAQ,OACR/C,eAAgB,GAAGf,iBAElBa,EAAW,IACTL,EACHR,KAAMiE,EACNH,OAAQ,MACR/C,eAAgB,GAAGf,cAGvBgB,QAAS,CACP2C,EACAnB,EACApB,GAAU8C,EAAAA,QAAQ,CAChBlD,QAAS,CAACmD,EAAAA,SACVC,UAAU,EACVC,WAAW,EACXC,QAAS,GAAGtE,UAEdgE,YACAxC,GAEFlC,WACF,IAEF,CACEuE,MAAO9B,EACPjB,OAAQ,CACN,CACEL,IAAK,OACLM,eAAgB,EAAGf,UAAW,GAAGA,EAAKR,QAAQ,SAAU,eACxDuE,iBAAiB,GAEnB,CACEtD,IAAK,SAGTO,QAAS,CACP2C,EACAvC,GAAUtB,EAAK,CAAEK,SAAU,CAAC,cAC5BsB,EAAAA,IAAI,CAAE8C,UAhIgBC,EAgIe,oBA/HpCC,EAAAA,QAAQvD,EAAesD,MAgIxB,CACExE,KAAM,wCAKN,cAAA0E,CAAejF,EAAGkF,GAChB,IAAA,MAAWC,KAAQ5C,OAAO6C,OAAOF,GACzB,SAAUC,IAEXA,EAAAE,KAAOF,EAAKE,KAAKtF,QACpB,iCACA,mBAAmBmC,EAAI3B,SAG7B,GAEF0B,GAEFpC,aApJN,IAA8BkF,CAsJ5B"}
@@ -0,0 +1,78 @@
1
+ import fs from 'node:fs';
2
+ import path from 'node:path';
3
+ import { getWorkspaceDir } from '@jiek/utils/getWorkspaceDir';
4
+ import { filterPackagesFromDir } from '@pnpm/filter-workspace-packages';
5
+ import { program } from 'commander';
6
+ import { load } from 'js-yaml';
7
+
8
+ let type = "";
9
+ try {
10
+ require.resolve("@pnpm/filter-workspace-packages");
11
+ type = "pnpm";
12
+ } catch {
13
+ }
14
+ if (type !== "") {
15
+ program.option("-f, --filter <filter>", "filter packages");
16
+ }
17
+ async function getSelectedProjectsGraph() {
18
+ let filter = program.getOptionValue("filter");
19
+ const rootOption = program.getOptionValue("root");
20
+ const root = rootOption ? path.isAbsolute(rootOption) ? rootOption : path.resolve(process.cwd(), rootOption) : process.cwd();
21
+ let notWorkspace = false;
22
+ let wd;
23
+ try {
24
+ wd = getWorkspaceDir(root, type);
25
+ } catch (e) {
26
+ if ("message" in e && e.message === "workspace root not found") {
27
+ wd = root;
28
+ notWorkspace = true;
29
+ } else {
30
+ throw e;
31
+ }
32
+ }
33
+ if (!notWorkspace && type === "pnpm") {
34
+ const pnpmWorkspaceFilePath = path.resolve(wd, "pnpm-workspace.yaml");
35
+ const pnpmWorkspaceFileContent = fs.readFileSync(pnpmWorkspaceFilePath, "utf-8");
36
+ const pnpmWorkspace = load(pnpmWorkspaceFileContent);
37
+ if (root === wd && !filter) {
38
+ throw new Error("root path is workspace root, please provide a filter");
39
+ }
40
+ if (root !== wd && !filter) {
41
+ const packageJSONIsExist = fs.existsSync(path.resolve(root, "package.json"));
42
+ if (!packageJSONIsExist) {
43
+ throw new Error("root path is not workspace root, please provide a filter");
44
+ }
45
+ const packageJSON = JSON.parse(fs.readFileSync(path.resolve(root, "package.json"), "utf-8"));
46
+ if (!packageJSON.name) {
47
+ throw new Error("root path is not workspace root, please provide a filter");
48
+ }
49
+ filter = packageJSON.name;
50
+ }
51
+ const { selectedProjectsGraph } = await filterPackagesFromDir(wd, [{
52
+ filter: filter ?? "",
53
+ followProdDepsOnly: true
54
+ }], {
55
+ prefix: root,
56
+ workspaceDir: wd,
57
+ patterns: pnpmWorkspace.packages
58
+ });
59
+ return {
60
+ wd,
61
+ root,
62
+ value: Object.entries(selectedProjectsGraph).reduce((acc, [key, value]) => {
63
+ acc[key] = value.package.manifest;
64
+ return acc;
65
+ }, {})
66
+ };
67
+ }
68
+ return {
69
+ wd,
70
+ root,
71
+ value: {
72
+ [wd]: JSON.parse(fs.readFileSync(path.resolve(wd, "package.json"), "utf-8"))
73
+ }
74
+ };
75
+ }
76
+
77
+ export { getSelectedProjectsGraph, type };
78
+ //# sourceMappingURL=filterSupport.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterSupport.esm.js","sources":["../../src/utils/filterSupport.ts"],"sourcesContent":["import fs from 'node:fs'\nimport path from 'node:path'\n\nimport { getWorkspaceDir } from '@jiek/utils/getWorkspaceDir'\nimport { filterPackagesFromDir } from '@pnpm/filter-workspace-packages'\nimport { program } from 'commander'\nimport { load } from 'js-yaml'\n\nexport let type = ''\n\ntry {\n require.resolve('@pnpm/filter-workspace-packages')\n type = 'pnpm'\n} catch { /* empty */ }\nif (type !== '') {\n program\n .option('-f, --filter <filter>', 'filter packages')\n}\n\ninterface ProjectsGraph {\n wd: string\n root: string\n value?: Record<string, {\n name?: string\n }>\n}\n\nexport async function getSelectedProjectsGraph(): Promise<ProjectsGraph> {\n let filter = program.getOptionValue('filter')\n const rootOption = program.getOptionValue('root')\n const root = rootOption\n ? path.isAbsolute(rootOption)\n ? rootOption\n : path.resolve(process.cwd(), rootOption)\n : process.cwd()\n let notWorkspace = false\n let wd: string\n try {\n wd = getWorkspaceDir(root, type)\n } catch (e) {\n // @ts-ignore\n if ('message' in e && e.message === 'workspace root not found') {\n wd = root\n notWorkspace = true\n } else {\n throw e\n }\n }\n if (!notWorkspace && type === 'pnpm') {\n const pnpmWorkspaceFilePath = path.resolve(wd, 'pnpm-workspace.yaml')\n const pnpmWorkspaceFileContent = fs.readFileSync(pnpmWorkspaceFilePath, 'utf-8')\n const pnpmWorkspace = load(pnpmWorkspaceFileContent) as {\n packages: string[]\n }\n if (root === wd && !filter) {\n throw new Error('root path is workspace root, please provide a filter')\n // TODO inquirer prompt support user select packages\n }\n if (root !== wd && !filter) {\n const packageJSONIsExist = fs.existsSync(path.resolve(root, 'package.json'))\n if (!packageJSONIsExist) {\n throw new Error('root path is not workspace root, please provide a filter')\n }\n const packageJSON = JSON.parse(fs.readFileSync(path.resolve(root, 'package.json'), 'utf-8'))\n if (!packageJSON.name) {\n throw new Error('root path is not workspace root, please provide a filter')\n }\n filter = packageJSON.name\n }\n const { selectedProjectsGraph } = await filterPackagesFromDir(wd, [{\n filter: filter ?? '',\n followProdDepsOnly: true\n }], {\n prefix: root,\n workspaceDir: wd,\n patterns: pnpmWorkspace.packages\n })\n return {\n wd, root,\n value: Object.entries(selectedProjectsGraph)\n .reduce((acc, [key, value]) => {\n acc[key] = value.package.manifest\n return acc\n }, {} as NonNullable<ProjectsGraph['value']>)\n }\n }\n return {\n wd, root,\n value: {\n [wd]: JSON.parse(fs.readFileSync(path.resolve(wd, 'package.json'), 'utf-8'))\n }\n }\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import e from"node:fs";import r from"node:path";import{getWorkspaceDir as o}from"@jiek/utils/getWorkspaceDir";import{filterPackagesFromDir as t}from"@pnpm/filter-workspace-packages";import{program as a}from"commander";import{load as s}from"js-yaml";let p="";try{require.resolve("@pnpm/filter-workspace-packages"),p="pnpm"}catch{}async function i(){let i=a.getOptionValue("filter");const n=a.getOptionValue("root"),c=n?r.isAbsolute(n)?n:r.resolve(process.cwd(),n):process.cwd();let l,f=!1;try{l=o(c,p)}catch(e){if(!("message"in e)||"workspace root not found"!==e.message)throw e;l=c,f=!0}if(!f&&"pnpm"===p){const o=r.resolve(l,"pnpm-workspace.yaml"),a=e.readFileSync(o,"utf-8"),p=s(a);if(c===l&&!i)throw new Error("root path is workspace root, please provide a filter");if(c!==l&&!i){if(!e.existsSync(r.resolve(c,"package.json")))throw new Error("root path is not workspace root, please provide a filter");const o=JSON.parse(e.readFileSync(r.resolve(c,"package.json"),"utf-8"));if(!o.name)throw new Error("root path is not workspace root, please provide a filter");i=o.name}const{selectedProjectsGraph:n}=await t(l,[{filter:i??"",followProdDepsOnly:!0}],{prefix:c,workspaceDir:l,patterns:p.packages});return{wd:l,root:c,value:Object.entries(n).reduce(((e,[r,o])=>(e[r]=o.package.manifest,e)),{})}}return{wd:l,root:c,value:{[l]:JSON.parse(e.readFileSync(r.resolve(l,"package.json"),"utf-8"))}}}""!==p&&a.option("-f, --filter <filter>","filter packages");export{i as getSelectedProjectsGraph,p as type};
2
+ //# sourceMappingURL=filterSupport.esm.min.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterSupport.esm.min.js","sources":["../../src/utils/filterSupport.ts"],"sourcesContent":["import fs from 'node:fs'\nimport path from 'node:path'\n\nimport { getWorkspaceDir } from '@jiek/utils/getWorkspaceDir'\nimport { filterPackagesFromDir } from '@pnpm/filter-workspace-packages'\nimport { program } from 'commander'\nimport { load } from 'js-yaml'\n\nexport let type = ''\n\ntry {\n require.resolve('@pnpm/filter-workspace-packages')\n type = 'pnpm'\n} catch { /* empty */ }\nif (type !== '') {\n program\n .option('-f, --filter <filter>', 'filter packages')\n}\n\ninterface ProjectsGraph {\n wd: string\n root: string\n value?: Record<string, {\n name?: string\n }>\n}\n\nexport async function getSelectedProjectsGraph(): Promise<ProjectsGraph> {\n let filter = program.getOptionValue('filter')\n const rootOption = program.getOptionValue('root')\n const root = rootOption\n ? path.isAbsolute(rootOption)\n ? rootOption\n : path.resolve(process.cwd(), rootOption)\n : process.cwd()\n let notWorkspace = false\n let wd: string\n try {\n wd = getWorkspaceDir(root, type)\n } catch (e) {\n // @ts-ignore\n if ('message' in e && e.message === 'workspace root not found') {\n wd = root\n notWorkspace = true\n } else {\n throw e\n }\n }\n if (!notWorkspace && type === 'pnpm') {\n const pnpmWorkspaceFilePath = path.resolve(wd, 'pnpm-workspace.yaml')\n const pnpmWorkspaceFileContent = fs.readFileSync(pnpmWorkspaceFilePath, 'utf-8')\n const pnpmWorkspace = load(pnpmWorkspaceFileContent) as {\n packages: string[]\n }\n if (root === wd && !filter) {\n throw new Error('root path is workspace root, please provide a filter')\n // TODO inquirer prompt support user select packages\n }\n if (root !== wd && !filter) {\n const packageJSONIsExist = fs.existsSync(path.resolve(root, 'package.json'))\n if (!packageJSONIsExist) {\n throw new Error('root path is not workspace root, please provide a filter')\n }\n const packageJSON = JSON.parse(fs.readFileSync(path.resolve(root, 'package.json'), 'utf-8'))\n if (!packageJSON.name) {\n throw new Error('root path is not workspace root, please provide a filter')\n }\n filter = packageJSON.name\n }\n const { selectedProjectsGraph } = await filterPackagesFromDir(wd, [{\n filter: filter ?? '',\n followProdDepsOnly: true\n }], {\n prefix: root,\n workspaceDir: wd,\n patterns: pnpmWorkspace.packages\n })\n return {\n wd, root,\n value: Object.entries(selectedProjectsGraph)\n .reduce((acc, [key, value]) => {\n acc[key] = value.package.manifest\n return acc\n }, {} as NonNullable<ProjectsGraph['value']>)\n }\n }\n return {\n wd, root,\n value: {\n [wd]: JSON.parse(fs.readFileSync(path.resolve(wd, 'package.json'), 'utf-8'))\n }\n }\n}\n"],"names":["type","require","resolve","async","getSelectedProjectsGraph","filter","program","getOptionValue","rootOption","root","path","isAbsolute","process","cwd","wd","notWorkspace","getWorkspaceDir","e","message","pnpmWorkspaceFilePath","pnpmWorkspaceFileContent","fs","readFileSync","pnpmWorkspace","load","Error","existsSync","packageJSON","JSON","parse","name","selectedProjectsGraph","filterPackagesFromDir","followProdDepsOnly","prefix","workspaceDir","patterns","packages","value","Object","entries","reduce","acc","key","package","manifest","option"],"mappings":"yPAQO,IAAIA,EAAO,GAElB,IACEC,QAAQC,QAAQ,mCACTF,EAAA,MACT,CAAQ,MAAc,CActBG,eAAsBC,IAChB,IAAAC,EAASC,EAAQC,eAAe,UAC9B,MAAAC,EAAaF,EAAQC,eAAe,QACpCE,EAAOD,EACTE,EAAKC,WAAWH,GACdA,EACAE,EAAKR,QAAQU,QAAQC,MAAOL,GAC9BI,QAAQC,MACZ,IACIC,EADAC,GAAe,EAEf,IACGD,EAAAE,EAAgBP,EAAMT,SACpBiB,GAEP,KAAI,YAAaA,IAAmB,6BAAdA,EAAEC,QAIhB,MAAAD,EAHDH,EAAAL,EACUM,GAAA,CAInB,CACI,IAACA,GAAyB,SAATf,EAAiB,CACpC,MAAMmB,EAAwBT,EAAKR,QAAQY,EAAI,uBACzCM,EAA2BC,EAAGC,aAAaH,EAAuB,SAClEI,EAAgBC,EAAKJ,GAGvB,GAAAX,IAASK,IAAOT,EACZ,MAAA,IAAIoB,MAAM,wDAGd,GAAAhB,IAASK,IAAOT,EAAQ,CAE1B,IAD2BgB,EAAGK,WAAWhB,EAAKR,QAAQO,EAAM,iBAEpD,MAAA,IAAIgB,MAAM,4DAEZ,MAAAE,EAAcC,KAAKC,MAAMR,EAAGC,aAAaZ,EAAKR,QAAQO,EAAM,gBAAiB,UAC/E,IAACkB,EAAYG,KACT,MAAA,IAAIL,MAAM,4DAElBpB,EAASsB,EAAYG,IACvB,CACA,MAAMC,sBAAEA,SAAgCC,EAAsBlB,EAAI,CAAC,CACjET,OAAQA,GAAU,GAClB4B,oBAAoB,IAClB,CACFC,OAAQzB,EACR0B,aAAcrB,EACdsB,SAAUb,EAAcc,WAEnB,MAAA,CACLvB,KAAIL,OACJ6B,MAAOC,OAAOC,QAAQT,GACnBU,QAAO,CAACC,GAAMC,EAAKL,MACdI,EAAAC,GAAOL,EAAMM,QAAQC,SAClBH,IACN,IAET,CACO,MAAA,CACL5B,KAAIL,OACJ6B,MAAO,CACLxB,CAACA,GAAKc,KAAKC,MAAMR,EAAGC,aAAaZ,EAAKR,QAAQY,EAAI,gBAAiB,WAGzE,CA9Ea,KAATd,GAECM,EAAAwC,OAAO,wBAAyB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jiek",
3
- "version": "0.1.11",
3
+ "version": "0.1.12-alpha.2",
4
4
  "description": "YiJie's personal kits.",
5
5
  "bin": {
6
6
  "jiek": "bin/jiek.js",
@@ -12,13 +12,17 @@
12
12
  "rollup/index.ts"
13
13
  ]
14
14
  },
15
+ "files": [
16
+ "dist"
17
+ ],
15
18
  "dependencies": {
16
- "@pnpm/filter-workspace-packages": "^7.2.13",
17
19
  "@rollup/plugin-json": "^6.0.1",
18
20
  "@rollup/plugin-terser": "^0.4.4",
19
21
  "autoprefixer": "^10.4.16",
20
22
  "commander": "^12.0.0",
23
+ "detect-indent": "^7.0.1",
21
24
  "js-yaml": "^4.1.0",
25
+ "jsonc-parser": "^3.2.1",
22
26
  "rollup": "^4.1.5",
23
27
  "rollup-plugin-copy": "^3.5.0",
24
28
  "rollup-plugin-dts": "^6.1.0",
@@ -27,20 +31,26 @@
27
31
  "@jiek/pkger": "0.1.8",
28
32
  "@jiek/utils": "0.1.6"
29
33
  },
34
+ "optionalDependencies": {
35
+ "@pnpm/filter-workspace-packages": "^7.2.13"
36
+ },
30
37
  "devDependencies": {
31
38
  "@npm/types": "^1.0.2",
39
+ "@pnpm/filter-workspace-packages": "^7.2.13",
32
40
  "@pnpm/workspace.pkgs-graph": "^2.0.15",
33
41
  "@types/js-yaml": "^4.0.9",
34
42
  "esbuild-register": "^3.5.0"
35
43
  },
36
- "files": [
37
- "dist"
38
- ],
44
+ "publishConfig": {
45
+ "jsdelivr": "./dist/index.umd.min.js"
46
+ },
47
+ "scripts": {
48
+ "build": "jiek-dev build"
49
+ },
39
50
  "types": "./dist/index.d.ts",
40
51
  "main": "./dist/index.umd.js",
41
52
  "module": "./dist/index.esm.js",
42
53
  "unpkg": "./dist/index.umd.min.js",
43
- "jsdelivr": "./dist/index.umd.min.js",
44
54
  "browser": "./dist/index.umd.min.js",
45
55
  "typesVersions": {
46
56
  "<5.0": {
@@ -65,8 +75,5 @@
65
75
  "require": "./dist/rollup.umd.js",
66
76
  "inner-src": "./src/rollup/index.ts"
67
77
  }
68
- },
69
- "scripts": {
70
- "build": "jiek-dev build"
71
78
  }
72
79
  }