microtags 0.0.8 → 0.0.11
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/README.md +465 -168
- package/dist/builders.d.ts.map +1 -1
- package/dist/{chunk-P4QHFKTJ.js → chunk-FZKCMDSS.js} +4 -4
- package/dist/{chunk-P4QHFKTJ.js.map → chunk-FZKCMDSS.js.map} +2 -2
- package/dist/index.cjs +31 -31
- package/dist/index.cjs.map +2 -2
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +31 -31
- package/dist/index.js.map +2 -2
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +3 -3
- package/dist/meta.json +18 -18
- package/dist/setup-context.d.ts.map +1 -1
- package/dist/types.d.ts +8 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/util.cjs +3 -3
- package/dist/util.cjs.map +2 -2
- package/dist/util.d.ts +2 -2
- package/dist/util.d.ts.map +1 -1
- package/dist/util.js +3 -3
- package/dist/util.min.js +1 -1
- package/dist/util.min.js.map +3 -3
- package/package.json +3 -2
package/dist/util.js
CHANGED
|
@@ -3,16 +3,16 @@ import {
|
|
|
3
3
|
coerceJson,
|
|
4
4
|
coerceNumber,
|
|
5
5
|
coerceString,
|
|
6
|
-
|
|
6
|
+
runAll,
|
|
7
7
|
toAttributes
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-FZKCMDSS.js";
|
|
9
9
|
import "./chunk-7QVYU63E.js";
|
|
10
10
|
export {
|
|
11
11
|
coerceBoolean,
|
|
12
12
|
coerceJson,
|
|
13
13
|
coerceNumber,
|
|
14
14
|
coerceString,
|
|
15
|
-
|
|
15
|
+
runAll,
|
|
16
16
|
toAttributes
|
|
17
17
|
};
|
|
18
18
|
//# sourceMappingURL=util.js.map
|
package/dist/util.min.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var i=Object.defineProperty;var u=(r,n)=>i(r,"name",{value:n,configurable:!0});function f(r){return r===null?NaN:Number(r)}u(f,"coerceNumber");function s(r){return r??""}u(s,"coerceString");function c(r){return r!==null}u(c,"coerceBoolean");function d(r){if(r!==null)try{return JSON.parse(r)}catch{return}}u(d,"coerceJson");function g(r){let n,e=!1;for(let t of r)try{t()}catch(o){e||(n=o,e=!0)}if(e)throw n}u(g,"
|
|
1
|
+
var i=Object.defineProperty;var u=(r,n)=>i(r,"name",{value:n,configurable:!0});function f(r){return r===null?NaN:Number(r)}u(f,"coerceNumber");function s(r){return r??""}u(s,"coerceString");function c(r){return r!==null}u(c,"coerceBoolean");function d(r){if(r!==null)try{return JSON.parse(r)}catch{return}}u(d,"coerceJson");function g(r){let n,e=!1;for(let t of r)try{t()}catch(o){e||(n=o,e=!0)}if(e)throw n}u(g,"runAll");function b(r){return Object.keys(r).reduce((n,e)=>{let t=r[e];return t?typeof t=="boolean"?t?(n+` ${e}`).trim():n:Array.isArray(t)?n+` ${e}="${t.join(" ")}"`:(n+` ${e}="${t}"`).trim():n},"")}u(b,"toAttributes");export{c as coerceBoolean,d as coerceJson,f as coerceNumber,s as coerceString,g as runAll,b as toAttributes};
|
|
2
2
|
//# sourceMappingURL=util.min.js.map
|
package/dist/util.min.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/util.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * Coerce a raw attribute string to a number.\n * Returns NaN if the value cannot be parsed.\n */\nexport function coerceNumber (raw:string | null):number {\n return raw === null ? NaN : Number(raw)\n}\n\n/**\n * Coerce a raw attribute string to a string.\n * Converts null to empty string.\n */\nexport function coerceString (raw:string | null):string {\n return raw ?? ''\n}\n\n/**\n * Coerce a raw attribute string to a boolean.\n * Absence (null) is false; presence of any value (including '') is true.\n */\nexport function coerceBoolean (raw:string | null):boolean {\n return raw !== null\n}\n\n/**\n * Coerce a raw attribute string to a parsed JSON value.\n * Returns undefined if the value is null or cannot be parsed.\n */\nexport function coerceJson<T = unknown> (raw:string | null):T | undefined {\n if (raw === null) return undefined\n try {\n return JSON.parse(raw) as T\n } catch {\n return undefined\n }\n}\n\n/**\n * Run every
|
|
5
|
-
"mappings": "+EAIO,SAASA,EAAcC,EAA0B,CACpD,OAAOA,IAAQ,KAAO,IAAM,OAAOA,CAAG,CAC1C,CAFgBC,EAAAF,EAAA,gBAQT,SAASG,EAAcF,EAA0B,CACpD,OAAOA,GAAO,EAClB,CAFgBC,EAAAC,EAAA,gBAQT,SAASC,EAAeH,EAA2B,CACtD,OAAOA,IAAQ,IACnB,CAFgBC,EAAAE,EAAA,iBAQT,SAASC,EAAyBJ,EAAiC,CACtE,GAAIA,IAAQ,KACZ,GAAI,CACA,OAAO,KAAK,MAAMA,CAAG,CACzB,MAAQ,CACJ,MACJ,CACJ,CAPgBC,EAAAG,EAAA,cAaT,SAASC,
|
|
6
|
-
"names": ["coerceNumber", "raw", "__name", "coerceString", "coerceBoolean", "coerceJson", "
|
|
4
|
+
"sourcesContent": ["/**\n * Coerce a raw attribute string to a number.\n * Returns NaN if the value cannot be parsed.\n */\nexport function coerceNumber (raw:string | null):number {\n return raw === null ? NaN : Number(raw)\n}\n\n/**\n * Coerce a raw attribute string to a string.\n * Converts null to empty string.\n */\nexport function coerceString (raw:string | null):string {\n return raw ?? ''\n}\n\n/**\n * Coerce a raw attribute string to a boolean.\n * Absence (null) is false; presence of any value (including '') is true.\n */\nexport function coerceBoolean (raw:string | null):boolean {\n return raw !== null\n}\n\n/**\n * Coerce a raw attribute string to a parsed JSON value.\n * Returns undefined if the value is null or cannot be parsed.\n */\nexport function coerceJson<T = unknown> (raw:string | null):T | undefined {\n if (raw === null) return undefined\n try {\n return JSON.parse(raw) as T\n } catch {\n return undefined\n }\n}\n\n/**\n * Run every function in the list, ensuring all run even if some throw.\n * After all have run, re-throws the first error encountered.\n */\nexport function runAll (fns:(() => void)[]):void {\n let firstError:unknown\n let caught = false\n for (const fn of fns) {\n try {\n fn()\n } catch (err) {\n if (!caught) {\n firstError = err\n caught = true\n }\n }\n }\n if (caught) throw firstError\n}\n\nexport type Attrs = Record<string, undefined|null|string|number|boolean|(string|number)[]>\n\n/**\n * Transform an object into an HTML attributes string. The object should be\n * like `{ attributeName: value }`.\n *\n * @param {Attrs} attrs An object for the attributes.\n * @returns {string} A string suitable for use as HTML attributes.\n */\nexport function toAttributes (attrs:Attrs):string {\n return Object.keys(attrs).reduce((acc, k) => {\n const value = attrs[k]\n if (!value) return acc\n\n if (typeof value === 'boolean') {\n if (value) return (acc + ` ${k}`).trim()\n return acc\n }\n\n if (Array.isArray(value)) {\n return (acc + ` ${k}=\"${value.join(' ')}\"`)\n }\n\n return (acc + ` ${k}=\"${value}\"`).trim()\n }, '')\n}\n"],
|
|
5
|
+
"mappings": "+EAIO,SAASA,EAAcC,EAA0B,CACpD,OAAOA,IAAQ,KAAO,IAAM,OAAOA,CAAG,CAC1C,CAFgBC,EAAAF,EAAA,gBAQT,SAASG,EAAcF,EAA0B,CACpD,OAAOA,GAAO,EAClB,CAFgBC,EAAAC,EAAA,gBAQT,SAASC,EAAeH,EAA2B,CACtD,OAAOA,IAAQ,IACnB,CAFgBC,EAAAE,EAAA,iBAQT,SAASC,EAAyBJ,EAAiC,CACtE,GAAIA,IAAQ,KACZ,GAAI,CACA,OAAO,KAAK,MAAMA,CAAG,CACzB,MAAQ,CACJ,MACJ,CACJ,CAPgBC,EAAAG,EAAA,cAaT,SAASC,EAAQC,EAAyB,CAC7C,IAAIC,EACAC,EAAS,GACb,QAAWC,KAAMH,EACb,GAAI,CACAG,EAAG,CACP,OAASC,EAAK,CACLF,IACDD,EAAaG,EACbF,EAAS,GAEjB,CAEJ,GAAIA,EAAQ,MAAMD,CACtB,CAdgBN,EAAAI,EAAA,UAyBT,SAASM,EAAcC,EAAoB,CAC9C,OAAO,OAAO,KAAKA,CAAK,EAAE,OAAO,CAACC,EAAKC,IAAM,CACzC,IAAMC,EAAQH,EAAME,CAAC,EACrB,OAAKC,EAED,OAAOA,GAAU,UACbA,GAAeF,EAAM,IAAIC,CAAC,IAAI,KAAK,EAChCD,EAGP,MAAM,QAAQE,CAAK,EACXF,EAAM,IAAIC,CAAC,KAAKC,EAAM,KAAK,GAAG,CAAC,KAGnCF,EAAM,IAAIC,CAAC,KAAKC,CAAK,KAAK,KAAK,EAXpBF,CAYvB,EAAG,EAAE,CACT,CAhBgBZ,EAAAU,EAAA",
|
|
6
|
+
"names": ["coerceNumber", "raw", "__name", "coerceString", "coerceBoolean", "coerceJson", "runAll", "fns", "firstError", "caught", "fn", "err", "toAttributes", "attrs", "acc", "k", "value"]
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "microtags",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.11",
|
|
5
5
|
"sideEffects": [
|
|
6
6
|
"./example/**"
|
|
7
7
|
],
|
|
@@ -23,11 +23,12 @@
|
|
|
23
23
|
"build": "mkdir -p ./dist && rm -rf ./dist/* && npm run build-cjs && npm run build-esm && npm run build-esm:min",
|
|
24
24
|
"build-html": "npm run --silent ssr > example/index.html",
|
|
25
25
|
"size": "size-limit",
|
|
26
|
+
"inject-size": "esbuild ./scripts/inject-size.ts --bundle --platform=node --format=cjs | node",
|
|
26
27
|
"start": "npm run build-html && vite",
|
|
27
28
|
"ssr": "esbuild ./example/ssr.ts --bundle --platform=node --format=cjs | node ",
|
|
28
29
|
"toc": "markdown-toc --maxdepth 4 -i README.md",
|
|
29
30
|
"preversion": "npm run lint",
|
|
30
|
-
"version": "npm run toc && auto-changelog -p --template keepachangelog --breaking-pattern 'BREAKING CHANGE:' && git add CHANGELOG.md README.md",
|
|
31
|
+
"version": "npm run toc && auto-changelog -p --template keepachangelog --breaking-pattern 'BREAKING CHANGE:' && npm run inject-size && git add CHANGELOG.md README.md",
|
|
31
32
|
"postversion": "git push --follow-tags && npm publish",
|
|
32
33
|
"prepublishOnly": "npm run build"
|
|
33
34
|
},
|