entangle-ui 0.6.2 → 0.6.3
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/CHANGELOG.md +6 -0
- package/README.md +5 -3
- package/dist/esm/_virtual/_commonjsHelpers.js +6 -0
- package/dist/esm/_virtual/_commonjsHelpers.js.map +1 -0
- package/dist/esm/_virtual/cssesc.js +5 -1
- package/dist/esm/_virtual/cssesc.js.map +1 -1
- package/dist/esm/_virtual/picocolors.js +8 -0
- package/dist/esm/_virtual/picocolors.js.map +1 -0
- package/dist/esm/_virtual/picocolors2.js +4 -0
- package/dist/esm/_virtual/picocolors2.js.map +1 -0
- package/dist/esm/index.js +1 -1
- package/dist/esm/node_modules/@emotion/hash/dist/emotion-hash.esm.js +56 -0
- package/dist/esm/node_modules/@emotion/hash/dist/emotion-hash.esm.js.map +1 -0
- package/dist/esm/node_modules/@vanilla-extract/css/adapter/dist/vanilla-extract-css-adapter.esm.js +32 -1
- package/dist/esm/node_modules/@vanilla-extract/css/adapter/dist/vanilla-extract-css-adapter.esm.js.map +1 -1
- package/dist/esm/node_modules/@vanilla-extract/css/dist/taggedTemplateLiteral-10998315.esm.js +13 -0
- package/dist/esm/node_modules/@vanilla-extract/css/dist/taggedTemplateLiteral-10998315.esm.js.map +1 -0
- package/dist/esm/node_modules/@vanilla-extract/css/dist/transformCss-fd0786e1.esm.js +837 -3
- package/dist/esm/node_modules/@vanilla-extract/css/dist/transformCss-fd0786e1.esm.js.map +1 -1
- package/dist/esm/node_modules/@vanilla-extract/css/dist/vanilla-extract-css.esm.js +244 -5
- package/dist/esm/node_modules/@vanilla-extract/css/dist/vanilla-extract-css.esm.js.map +1 -1
- package/dist/esm/node_modules/@vanilla-extract/css/fileScope/dist/vanilla-extract-css-fileScope.esm.js +18 -0
- package/dist/esm/node_modules/@vanilla-extract/css/fileScope/dist/vanilla-extract-css-fileScope.esm.js.map +1 -0
- package/dist/esm/node_modules/@vanilla-extract/css/injectStyles/dist/vanilla-extract-css-injectStyles.esm.js +23 -0
- package/dist/esm/node_modules/@vanilla-extract/css/injectStyles/dist/vanilla-extract-css-injectStyles.esm.js.map +1 -0
- package/dist/esm/node_modules/@vanilla-extract/private/dist/vanilla-extract-private.esm.js +38 -0
- package/dist/esm/node_modules/@vanilla-extract/private/dist/vanilla-extract-private.esm.js.map +1 -0
- package/dist/esm/node_modules/css-what/lib/es/parse.js +424 -0
- package/dist/esm/node_modules/css-what/lib/es/parse.js.map +1 -0
- package/dist/esm/node_modules/css-what/lib/es/types.js +29 -0
- package/dist/esm/node_modules/css-what/lib/es/types.js.map +1 -0
- package/dist/esm/node_modules/dedent/dist/dedent.js +3 -1
- package/dist/esm/node_modules/dedent/dist/dedent.js.map +1 -1
- package/dist/esm/node_modules/deep-object-diff/mjs/diff.js +40 -0
- package/dist/esm/node_modules/deep-object-diff/mjs/diff.js.map +1 -0
- package/dist/esm/node_modules/deep-object-diff/mjs/utils.js +9 -0
- package/dist/esm/node_modules/deep-object-diff/mjs/utils.js.map +1 -0
- package/dist/esm/node_modules/media-query-parser/dist/media-query-parser.esm.js +1386 -0
- package/dist/esm/node_modules/media-query-parser/dist/media-query-parser.esm.js.map +1 -0
- package/dist/esm/node_modules/modern-ahocorasick/dist/index.js +102 -0
- package/dist/esm/node_modules/modern-ahocorasick/dist/index.js.map +1 -0
- package/dist/esm/node_modules/picocolors/picocolors.js +87 -0
- package/dist/esm/node_modules/picocolors/picocolors.js.map +1 -0
- package/dist/esm/theme/createCustomTheme.js +33 -0
- package/dist/esm/theme/createCustomTheme.js.map +1 -0
- package/dist/esm/utils/objects.js +22 -0
- package/dist/esm/utils/objects.js.map +1 -0
- package/dist/types/components/primitives/Button/Button.d.ts +1 -1
- package/dist/types/components/primitives/IconButton/IconButton.d.ts +1 -1
- package/dist/types/index.d.ts +2 -1
- package/dist/types/theme/createCustomTheme.d.ts +29 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media-query-parser.esm.js","sources":["../../../../../node_modules/media-query-parser/dist/media-query-parser.esm.js"],"sourcesContent":["/*! @license MediaQueryParser - MIT License - Tom Golden (github@tbjgolden.com) */\n\n/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n\r\nvar __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\r\n\r\nfunction __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nfunction __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nfunction __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\n\nvar weirdNewlines = /(\\u000D|\\u000C|\\u000D\\u000A)/g;\nvar nullOrSurrogates = /[\\u0000\\uD800-\\uDFFF]/g;\nvar commentRegex = /(\\/\\*)[\\s\\S]*?(\\*\\/)/g;\nvar lexicalAnalysis = function lexicalAnalysis(str, index) {\n if (index === void 0) {\n index = 0;\n }\n\n str = str.replace(weirdNewlines, '\\n').replace(nullOrSurrogates, \"\\uFFFD\");\n str = str.replace(commentRegex, '');\n var tokens = [];\n\n for (; index < str.length; index += 1) {\n var code = str.charCodeAt(index);\n\n if (code === 0x0009 || code === 0x0020 || code === 0x000a) {\n var code_1 = str.charCodeAt(++index);\n\n while (code_1 === 0x0009 || code_1 === 0x0020 || code_1 === 0x000a) {\n code_1 = str.charCodeAt(++index);\n }\n\n index -= 1;\n tokens.push({\n type: '<whitespace-token>'\n });\n } else if (code === 0x0022) {\n var result = consumeString(str, index);\n\n if (result === null) {\n return null;\n }\n\n var _a = __read(result, 2),\n lastIndex = _a[0],\n value = _a[1];\n\n tokens.push({\n type: '<string-token>',\n value: value\n });\n index = lastIndex;\n } else if (code === 0x0023) {\n if (index + 1 < str.length) {\n var nextCode = str.charCodeAt(index + 1);\n\n if (nextCode === 0x005f || nextCode >= 0x0041 && nextCode <= 0x005a || nextCode >= 0x0061 && nextCode <= 0x007a || nextCode >= 0x0080 || nextCode >= 0x0030 && nextCode <= 0x0039 || nextCode === 0x005c && index + 2 < str.length && str.charCodeAt(index + 2) !== 0x000a) {\n var flag = wouldStartIdentifier(str, index + 1) ? 'id' : 'unrestricted';\n var result = consumeIdentUnsafe(str, index + 1);\n\n if (result !== null) {\n var _b = __read(result, 2),\n lastIndex = _b[0],\n value = _b[1];\n\n tokens.push({\n type: '<hash-token>',\n value: value.toLowerCase(),\n flag: flag\n });\n index = lastIndex;\n continue;\n }\n }\n }\n\n tokens.push({\n type: '<delim-token>',\n value: code\n });\n } else if (code === 0x0027) {\n var result = consumeString(str, index);\n\n if (result === null) {\n return null;\n }\n\n var _c = __read(result, 2),\n lastIndex = _c[0],\n value = _c[1];\n\n tokens.push({\n type: '<string-token>',\n value: value\n });\n index = lastIndex;\n } else if (code === 0x0028) {\n tokens.push({\n type: '<(-token>'\n });\n } else if (code === 0x0029) {\n tokens.push({\n type: '<)-token>'\n });\n } else if (code === 0x002b) {\n var plusNumeric = consumeNumeric(str, index);\n\n if (plusNumeric === null) {\n tokens.push({\n type: '<delim-token>',\n value: code\n });\n } else {\n var _d = __read(plusNumeric, 2),\n lastIndex = _d[0],\n tokenTuple = _d[1];\n\n if (tokenTuple[0] === '<dimension-token>') {\n tokens.push({\n type: '<dimension-token>',\n value: tokenTuple[1],\n unit: tokenTuple[2].toLowerCase(),\n flag: 'number'\n });\n } else if (tokenTuple[0] === '<number-token>') {\n tokens.push({\n type: tokenTuple[0],\n value: tokenTuple[1],\n flag: tokenTuple[2]\n });\n } else {\n tokens.push({\n type: tokenTuple[0],\n value: tokenTuple[1],\n flag: 'number'\n });\n }\n\n index = lastIndex;\n }\n } else if (code === 0x002c) {\n tokens.push({\n type: '<comma-token>'\n });\n } else if (code === 0x002d) {\n var minusNumeric = consumeNumeric(str, index);\n\n if (minusNumeric !== null) {\n var _e = __read(minusNumeric, 2),\n lastIndex = _e[0],\n tokenTuple = _e[1];\n\n if (tokenTuple[0] === '<dimension-token>') {\n tokens.push({\n type: '<dimension-token>',\n value: tokenTuple[1],\n unit: tokenTuple[2].toLowerCase(),\n flag: 'number'\n });\n } else if (tokenTuple[0] === '<number-token>') {\n tokens.push({\n type: tokenTuple[0],\n value: tokenTuple[1],\n flag: tokenTuple[2]\n });\n } else {\n tokens.push({\n type: tokenTuple[0],\n value: tokenTuple[1],\n flag: 'number'\n });\n }\n\n index = lastIndex;\n continue;\n }\n\n if (index + 2 < str.length) {\n var nextCode = str.charCodeAt(index + 1);\n var nextNextCode = str.charCodeAt(index + 2);\n\n if (nextCode === 0x002d && nextNextCode === 0x003e) {\n tokens.push({\n type: '<CDC-token>'\n });\n index += 2;\n continue;\n }\n }\n\n var result = consumeIdentLike(str, index);\n\n if (result !== null) {\n var _f = __read(result, 3),\n lastIndex = _f[0],\n value = _f[1],\n type = _f[2];\n\n tokens.push({\n type: type,\n value: value\n });\n index = lastIndex;\n continue;\n }\n\n tokens.push({\n type: '<delim-token>',\n value: code\n });\n } else if (code === 0x002e) {\n var minusNumeric = consumeNumeric(str, index);\n\n if (minusNumeric === null) {\n tokens.push({\n type: '<delim-token>',\n value: code\n });\n } else {\n var _g = __read(minusNumeric, 2),\n lastIndex = _g[0],\n tokenTuple = _g[1];\n\n if (tokenTuple[0] === '<dimension-token>') {\n tokens.push({\n type: '<dimension-token>',\n value: tokenTuple[1],\n unit: tokenTuple[2].toLowerCase(),\n flag: 'number'\n });\n } else if (tokenTuple[0] === '<number-token>') {\n tokens.push({\n type: tokenTuple[0],\n value: tokenTuple[1],\n flag: tokenTuple[2]\n });\n } else {\n tokens.push({\n type: tokenTuple[0],\n value: tokenTuple[1],\n flag: 'number'\n });\n }\n\n index = lastIndex;\n continue;\n }\n } else if (code === 0x003a) {\n tokens.push({\n type: '<colon-token>'\n });\n } else if (code === 0x003b) {\n tokens.push({\n type: '<semicolon-token>'\n });\n } else if (code === 0x003c) {\n if (index + 3 < str.length) {\n var nextCode = str.charCodeAt(index + 1);\n var nextNextCode = str.charCodeAt(index + 2);\n var nextNextNextCode = str.charCodeAt(index + 3);\n\n if (nextCode === 0x0021 && nextNextCode === 0x002d && nextNextNextCode === 0x002d) {\n tokens.push({\n type: '<CDO-token>'\n });\n index += 3;\n continue;\n }\n }\n\n tokens.push({\n type: '<delim-token>',\n value: code\n });\n } else if (code === 0x0040) {\n var result = consumeIdent(str, index + 1);\n\n if (result !== null) {\n var _h = __read(result, 2),\n lastIndex = _h[0],\n value = _h[1];\n\n tokens.push({\n type: '<at-keyword-token>',\n value: value.toLowerCase()\n });\n index = lastIndex;\n continue;\n }\n\n tokens.push({\n type: '<delim-token>',\n value: code\n });\n } else if (code === 0x005b) {\n tokens.push({\n type: '<[-token>'\n });\n } else if (code === 0x005c) {\n var result = consumeEscape(str, index);\n\n if (result === null) {\n return null;\n }\n\n var _j = __read(result, 2),\n lastIndex = _j[0],\n value = _j[1];\n\n str = str.slice(0, index) + value + str.slice(lastIndex + 1);\n index -= 1;\n } else if (code === 0x005d) {\n tokens.push({\n type: '<]-token>'\n });\n } else if (code === 0x007b) {\n tokens.push({\n type: '<{-token>'\n });\n } else if (code === 0x007d) {\n tokens.push({\n type: '<}-token>'\n });\n } else if (code >= 0x0030 && code <= 0x0039) {\n var result = consumeNumeric(str, index);\n\n var _k = __read(result, 2),\n lastIndex = _k[0],\n tokenTuple = _k[1];\n\n if (tokenTuple[0] === '<dimension-token>') {\n tokens.push({\n type: '<dimension-token>',\n value: tokenTuple[1],\n unit: tokenTuple[2].toLowerCase(),\n flag: 'number'\n });\n } else if (tokenTuple[0] === '<number-token>') {\n tokens.push({\n type: tokenTuple[0],\n value: tokenTuple[1],\n flag: tokenTuple[2]\n });\n } else {\n tokens.push({\n type: tokenTuple[0],\n value: tokenTuple[1],\n flag: 'number'\n });\n }\n\n index = lastIndex;\n } else if (code === 0x005f || code >= 0x0041 && code <= 0x005a || code >= 0x0061 && code <= 0x007a || code >= 0x0080) {\n var result = consumeIdentLike(str, index);\n\n if (result === null) {\n return null;\n }\n\n var _l = __read(result, 3),\n lastIndex = _l[0],\n value = _l[1],\n type = _l[2];\n\n tokens.push({\n type: type,\n value: value\n });\n index = lastIndex;\n } else {\n tokens.push({\n type: '<delim-token>',\n value: code\n });\n }\n }\n\n tokens.push({\n type: '<EOF-token>'\n });\n return tokens;\n};\nvar consumeString = function consumeString(str, index) {\n if (str.length <= index + 1) return null;\n var firstCode = str.charCodeAt(index);\n var charCodes = [];\n\n for (var i = index + 1; i < str.length; i += 1) {\n var code = str.charCodeAt(i);\n\n if (code === firstCode) {\n return [i, String.fromCharCode.apply(null, charCodes)];\n } else if (code === 0x005c) {\n var result = consumeEscape(str, i);\n if (result === null) return null;\n\n var _a = __read(result, 2),\n lastIndex = _a[0],\n charCode = _a[1];\n\n charCodes.push(charCode);\n i = lastIndex;\n } else if (code === 0x000a) {\n return null;\n } else {\n charCodes.push(code);\n }\n }\n\n return null;\n};\nvar wouldStartIdentifier = function wouldStartIdentifier(str, index) {\n if (str.length <= index) return false;\n var code = str.charCodeAt(index);\n\n if (code === 0x002d) {\n if (str.length <= index + 1) return false;\n var nextCode = str.charCodeAt(index + 1);\n\n if (nextCode === 0x002d || nextCode === 0x005f || nextCode >= 0x0041 && nextCode <= 0x005a || nextCode >= 0x0061 && nextCode <= 0x007a || nextCode >= 0x0080) {\n return true;\n } else if (nextCode === 0x005c) {\n if (str.length <= index + 2) return false;\n var nextNextCode = str.charCodeAt(index + 2);\n return nextNextCode !== 0x000a;\n } else {\n return false;\n }\n } else if (code === 0x005f || code >= 0x0041 && code <= 0x005a || code >= 0x0061 && code <= 0x007a || code >= 0x0080) {\n return true;\n } else if (code === 0x005c) {\n if (str.length <= index + 1) return false;\n var nextCode = str.charCodeAt(index + 1);\n return nextCode !== 0x000a;\n } else {\n return false;\n }\n};\nvar consumeEscape = function consumeEscape(str, index) {\n if (str.length <= index + 1) return null;\n if (str.charCodeAt(index) !== 0x005c) return null;\n var code = str.charCodeAt(index + 1);\n\n if (code === 0x000a) {\n return null;\n } else if (code >= 0x0030 && code <= 0x0039 || code >= 0x0041 && code <= 0x0046 || code >= 0x0061 && code <= 0x0066) {\n var hexCharCodes = [code];\n var min = Math.min(index + 7, str.length);\n var i = index + 2;\n\n for (; i < min; i += 1) {\n var code_2 = str.charCodeAt(i);\n\n if (code_2 >= 0x0030 && code_2 <= 0x0039 || code_2 >= 0x0041 && code_2 <= 0x0046 || code_2 >= 0x0061 && code_2 <= 0x0066) {\n hexCharCodes.push(code_2);\n } else {\n break;\n }\n }\n\n if (i < str.length) {\n var code_3 = str.charCodeAt(i);\n\n if (code_3 === 0x0009 || code_3 === 0x0020 || code_3 === 0x000a) {\n i += 1;\n }\n }\n\n return [i - 1, parseInt(String.fromCharCode.apply(null, hexCharCodes), 16)];\n } else {\n return [index + 1, code];\n }\n};\nvar consumeNumeric = function consumeNumeric(str, index) {\n var numberResult = consumeNumber(str, index);\n if (numberResult === null) return null;\n\n var _a = __read(numberResult, 3),\n numberEndIndex = _a[0],\n numberValue = _a[1],\n numberFlag = _a[2];\n\n var identResult = consumeIdent(str, numberEndIndex + 1);\n\n if (identResult !== null) {\n var _b = __read(identResult, 2),\n identEndIndex = _b[0],\n identValue = _b[1];\n\n return [identEndIndex, ['<dimension-token>', numberValue, identValue]];\n }\n\n if (numberEndIndex + 1 < str.length && str.charCodeAt(numberEndIndex + 1) === 0x0025) {\n return [numberEndIndex + 1, ['<percentage-token>', numberValue]];\n }\n\n return [numberEndIndex, ['<number-token>', numberValue, numberFlag]];\n};\nvar consumeNumber = function consumeNumber(str, index) {\n if (str.length <= index) return null;\n var flag = 'integer';\n var numberChars = [];\n var firstCode = str.charCodeAt(index);\n\n if (firstCode === 0x002b || firstCode === 0x002d) {\n index += 1;\n if (firstCode === 0x002d) numberChars.push(0x002d);\n }\n\n while (index < str.length) {\n var code = str.charCodeAt(index);\n\n if (code >= 0x0030 && code <= 0x0039) {\n numberChars.push(code);\n index += 1;\n } else {\n break;\n }\n }\n\n if (index + 1 < str.length) {\n var nextCode = str.charCodeAt(index);\n var nextNextCode = str.charCodeAt(index + 1);\n\n if (nextCode === 0x002e && nextNextCode >= 0x0030 && nextNextCode <= 0x0039) {\n numberChars.push(nextCode, nextNextCode);\n flag = 'number';\n index += 2;\n\n while (index < str.length) {\n var code = str.charCodeAt(index);\n\n if (code >= 0x0030 && code <= 0x0039) {\n numberChars.push(code);\n index += 1;\n } else {\n break;\n }\n }\n }\n }\n\n if (index + 1 < str.length) {\n var nextCode = str.charCodeAt(index);\n var nextNextCode = str.charCodeAt(index + 1);\n var nextNextNextCode = str.charCodeAt(index + 2);\n\n if (nextCode === 0x0045 || nextCode === 0x0065) {\n var nextNextIsDigit = nextNextCode >= 0x0030 && nextNextCode <= 0x0039;\n\n if (nextNextIsDigit || (nextNextCode === 0x002b || nextNextCode === 0x002d) && nextNextNextCode >= 0x0030 && nextNextNextCode <= 0x0039) {\n flag = 'number';\n\n if (nextNextIsDigit) {\n numberChars.push(0x0045, nextNextCode);\n index += 2;\n } else if (nextNextCode === 0x002d) {\n numberChars.push(0x0045, 0x002d, nextNextNextCode);\n index += 3;\n } else {\n numberChars.push(0x0045, nextNextNextCode);\n index += 3;\n }\n\n while (index < str.length) {\n var code = str.charCodeAt(index);\n\n if (code >= 0x0030 && code <= 0x0039) {\n numberChars.push(code);\n index += 1;\n } else {\n break;\n }\n }\n }\n }\n }\n\n var numberString = String.fromCharCode.apply(null, numberChars);\n var value = flag === 'number' ? parseFloat(numberString) : parseInt(numberString);\n if (value === -0) value = 0;\n return Number.isNaN(value) ? null : [index - 1, value, flag];\n};\nvar consumeIdentUnsafe = function consumeIdentUnsafe(str, index) {\n if (str.length <= index) {\n return null;\n }\n\n var identChars = [];\n\n for (var code = str.charCodeAt(index); index < str.length; code = str.charCodeAt(++index)) {\n if (code === 0x002d || code === 0x005f || code >= 0x0041 && code <= 0x005a || code >= 0x0061 && code <= 0x007a || code >= 0x0080 || code >= 0x0030 && code <= 0x0039) {\n identChars.push(code);\n continue;\n } else {\n var result = consumeEscape(str, index);\n\n if (result !== null) {\n var _a = __read(result, 2),\n lastIndex = _a[0],\n code_4 = _a[1];\n\n identChars.push(code_4);\n index = lastIndex;\n continue;\n }\n }\n\n break;\n }\n\n return index === 0 ? null : [index - 1, String.fromCharCode.apply(null, identChars)];\n};\nvar consumeIdent = function consumeIdent(str, index) {\n if (str.length <= index || !wouldStartIdentifier(str, index)) {\n return null;\n }\n\n var identChars = [];\n\n for (var code = str.charCodeAt(index); index < str.length; code = str.charCodeAt(++index)) {\n if (code === 0x002d || code === 0x005f || code >= 0x0041 && code <= 0x005a || code >= 0x0061 && code <= 0x007a || code >= 0x0080 || code >= 0x0030 && code <= 0x0039) {\n identChars.push(code);\n continue;\n } else {\n var result = consumeEscape(str, index);\n\n if (result !== null) {\n var _a = __read(result, 2),\n lastIndex = _a[0],\n code_5 = _a[1];\n\n identChars.push(code_5);\n index = lastIndex;\n continue;\n }\n }\n\n break;\n }\n\n return [index - 1, String.fromCharCode.apply(null, identChars)];\n};\nvar consumeUrl = function consumeUrl(str, index) {\n var code = str.charCodeAt(index);\n\n while (code === 0x0009 || code === 0x0020 || code === 0x000a) {\n code = str.charCodeAt(++index);\n }\n\n var urlChars = [];\n var hasFinishedWord = false;\n\n while (index < str.length) {\n if (code === 0x0029) {\n return [index, String.fromCharCode.apply(null, urlChars)];\n } else if (code === 0x0022 || code === 0x0027 || code === 0x0028) {\n return null;\n } else if (code === 0x0009 || code === 0x0020 || code === 0x000a) {\n if (!hasFinishedWord && urlChars.length !== 0) hasFinishedWord = true;\n } else if (code === 0x005c) {\n var result = consumeEscape(str, index);\n if (result === null || hasFinishedWord) return null;\n\n var _a = __read(result, 2),\n lastIndex = _a[0],\n value = _a[1];\n\n urlChars.push(value);\n index = lastIndex;\n } else {\n if (hasFinishedWord) return null;\n urlChars.push(code);\n }\n\n code = str.charCodeAt(++index);\n }\n\n return null;\n};\nvar consumeIdentLike = function consumeIdentLike(str, index) {\n var result = consumeIdent(str, index);\n if (result === null) return null;\n\n var _a = __read(result, 2),\n lastIndex = _a[0],\n value = _a[1];\n\n if (value.toLowerCase() === 'url') {\n if (str.length > lastIndex + 1) {\n var nextCode = str.charCodeAt(lastIndex + 1);\n\n if (nextCode === 0x0028) {\n for (var offset = 2; lastIndex + offset < str.length; offset += 1) {\n var nextNextCode = str.charCodeAt(lastIndex + offset);\n\n if (nextNextCode === 0x0022 || nextNextCode === 0x0027) {\n return [lastIndex + 1, value.toLowerCase(), '<function-token>'];\n } else if (nextNextCode !== 0x0009 && nextNextCode !== 0x0020 && nextNextCode !== 0x000a) {\n var result_1 = consumeUrl(str, lastIndex + offset);\n if (result_1 === null) return null;\n\n var _b = __read(result_1, 2),\n lastUrlIndex = _b[0],\n value_1 = _b[1];\n\n return [lastUrlIndex, value_1, '<url-token>'];\n }\n }\n\n return [lastIndex + 1, value.toLowerCase(), '<function-token>'];\n }\n }\n } else if (str.length > lastIndex + 1) {\n var nextCode = str.charCodeAt(lastIndex + 1);\n\n if (nextCode === 0x0028) {\n return [lastIndex + 1, value.toLowerCase(), '<function-token>'];\n }\n }\n\n return [lastIndex, value.toLowerCase(), '<ident-token>'];\n};\n\nvar simplifyAST = function simplifyAST(ast) {\n for (var i = ast.length - 1; i >= 0; i--) {\n ast[i] = simplifyMediaQuery(ast[i]);\n }\n\n return ast;\n};\n\nvar simplifyMediaQuery = function simplifyMediaQuery(mediaQuery) {\n if (mediaQuery.mediaCondition === null) return mediaQuery;\n var mediaCondition = simplifyMediaCondition(mediaQuery.mediaCondition);\n\n if (mediaCondition.operator === null && mediaCondition.children.length === 1 && 'children' in mediaCondition.children[0]) {\n mediaCondition = mediaCondition.children[0];\n }\n\n return {\n mediaPrefix: mediaQuery.mediaPrefix,\n mediaType: mediaQuery.mediaType,\n mediaCondition: mediaCondition\n };\n};\n\nvar simplifyMediaCondition = function simplifyMediaCondition(mediaCondition) {\n for (var i = mediaCondition.children.length - 1; i >= 0; i--) {\n var unsimplifiedChild = mediaCondition.children[i];\n\n if (!('context' in unsimplifiedChild)) {\n var child = simplifyMediaCondition(unsimplifiedChild);\n\n if (child.operator === null && child.children.length === 1) {\n mediaCondition.children[i] = child.children[0];\n } else if (child.operator === mediaCondition.operator && (child.operator === 'and' || child.operator === 'or')) {\n var spliceArgs = [i, 1];\n\n for (var i_1 = 0; i_1 < child.children.length; i_1++) {\n spliceArgs.push(child.children[i_1]);\n }\n\n mediaCondition.children.splice.apply(mediaCondition.children, spliceArgs);\n }\n }\n }\n\n return mediaCondition;\n};\n\nvar createError = function createError(message, err) {\n if (err instanceof Error) {\n return new Error(\"\".concat(err.message.trim(), \"\\n\").concat(message.trim()));\n } else {\n return new Error(message.trim());\n }\n};\n\nvar toAST = function toAST(str) {\n return simplifyAST(toUnflattenedAST(str));\n};\nvar toUnflattenedAST = function toUnflattenedAST(str) {\n var tokenList = lexicalAnalysis(str.trim());\n\n if (tokenList === null) {\n throw createError('Failed tokenizing');\n }\n\n var startIndex = 0;\n var endIndex = tokenList.length - 1;\n\n if (tokenList[0].type === '<at-keyword-token>' && tokenList[0].value === 'media') {\n if (tokenList[1].type !== '<whitespace-token>') {\n throw createError('Expected whitespace after media');\n }\n\n startIndex = 2;\n\n for (var i = 2; i < tokenList.length - 1; i++) {\n var token = tokenList[i];\n\n if (token.type === '<{-token>') {\n endIndex = i;\n break;\n } else if (token.type === '<semicolon-token>') {\n throw createError(\"Expected '{' in media query but found ';'\");\n }\n }\n }\n\n tokenList = tokenList.slice(startIndex, endIndex);\n return syntacticAnalysis(tokenList);\n};\nvar removeWhitespace = function removeWhitespace(tokenList) {\n var newTokenList = [];\n var before = false;\n\n for (var i = 0; i < tokenList.length; i++) {\n if (tokenList[i].type === '<whitespace-token>') {\n before = true;\n\n if (newTokenList.length > 0) {\n newTokenList[newTokenList.length - 1].wsAfter = true;\n }\n } else {\n newTokenList.push(__assign(__assign({}, tokenList[i]), {\n wsBefore: before,\n wsAfter: false\n }));\n before = false;\n }\n }\n\n return newTokenList;\n};\nvar syntacticAnalysis = function syntacticAnalysis(tokenList) {\n var e_1, _a;\n\n var mediaQueryList = [[]];\n\n for (var i = 0; i < tokenList.length; i++) {\n var token = tokenList[i];\n\n if (token.type === '<comma-token>') {\n mediaQueryList.push([]);\n } else {\n mediaQueryList[mediaQueryList.length - 1].push(token);\n }\n }\n\n var mediaQueries = mediaQueryList.map(removeWhitespace);\n\n if (mediaQueries.length === 1 && mediaQueries[0].length === 0) {\n return [{\n mediaCondition: null,\n mediaPrefix: null,\n mediaType: 'all'\n }];\n } else {\n var mediaQueryTokens = mediaQueries.map(function (mediaQueryTokens) {\n if (mediaQueryTokens.length === 0) {\n return null;\n } else {\n return tokenizeMediaQuery(mediaQueryTokens);\n }\n });\n var nonNullMediaQueryTokens = [];\n\n try {\n for (var mediaQueryTokens_1 = __values(mediaQueryTokens), mediaQueryTokens_1_1 = mediaQueryTokens_1.next(); !mediaQueryTokens_1_1.done; mediaQueryTokens_1_1 = mediaQueryTokens_1.next()) {\n var mediaQueryToken = mediaQueryTokens_1_1.value;\n\n if (mediaQueryToken !== null) {\n nonNullMediaQueryTokens.push(mediaQueryToken);\n }\n }\n } catch (e_1_1) {\n e_1 = {\n error: e_1_1\n };\n } finally {\n try {\n if (mediaQueryTokens_1_1 && !mediaQueryTokens_1_1.done && (_a = mediaQueryTokens_1[\"return\"])) _a.call(mediaQueryTokens_1);\n } finally {\n if (e_1) throw e_1.error;\n }\n }\n\n if (nonNullMediaQueryTokens.length === 0) {\n throw createError('No valid media queries');\n }\n\n return nonNullMediaQueryTokens;\n }\n};\nvar tokenizeMediaQuery = function tokenizeMediaQuery(tokens) {\n var firstToken = tokens[0];\n\n if (firstToken.type === '<(-token>') {\n try {\n return {\n mediaPrefix: null,\n mediaType: 'all',\n mediaCondition: tokenizeMediaCondition(tokens, true)\n };\n } catch (err) {\n throw createError(\"Expected media condition after '('\", err);\n }\n } else if (firstToken.type === '<ident-token>') {\n var mediaPrefix = null;\n var mediaType = void 0;\n var value = firstToken.value;\n\n if (value === 'only' || value === 'not') {\n mediaPrefix = value;\n }\n\n var firstIndex = mediaPrefix === null ? 0 : 1;\n\n if (tokens.length <= firstIndex) {\n throw createError(\"Expected extra token in media query\");\n }\n\n var firstNonUnaryToken = tokens[firstIndex];\n\n if (firstNonUnaryToken.type === '<ident-token>') {\n var value_1 = firstNonUnaryToken.value;\n\n if (value_1 === 'all') {\n mediaType = 'all';\n } else if (value_1 === 'print' || value_1 === 'screen') {\n mediaType = value_1;\n } else if (value_1 === 'tty' || value_1 === 'tv' || value_1 === 'projection' || value_1 === 'handheld' || value_1 === 'braille' || value_1 === 'embossed' || value_1 === 'aural' || value_1 === 'speech') {\n mediaPrefix = mediaPrefix === 'not' ? null : 'not';\n mediaType = 'all';\n } else {\n throw createError(\"Unknown ident '\".concat(value_1, \"' in media query\"));\n }\n } else if (mediaPrefix === 'not' && firstNonUnaryToken.type === '<(-token>') {\n var tokensWithParens = [{\n type: '<(-token>',\n wsBefore: false,\n wsAfter: false\n }];\n tokensWithParens.push.apply(tokensWithParens, tokens);\n tokensWithParens.push({\n type: '<)-token>',\n wsBefore: false,\n wsAfter: false\n });\n\n try {\n return {\n mediaPrefix: null,\n mediaType: 'all',\n mediaCondition: tokenizeMediaCondition(tokensWithParens, true)\n };\n } catch (err) {\n throw createError(\"Expected media condition after '('\", err);\n }\n } else {\n throw createError('Invalid media query');\n }\n\n if (firstIndex + 1 === tokens.length) {\n return {\n mediaPrefix: mediaPrefix,\n mediaType: mediaType,\n mediaCondition: null\n };\n } else if (firstIndex + 4 < tokens.length) {\n var secondNonUnaryToken = tokens[firstIndex + 1];\n\n if (secondNonUnaryToken.type === '<ident-token>' && secondNonUnaryToken.value === 'and') {\n try {\n return {\n mediaPrefix: mediaPrefix,\n mediaType: mediaType,\n mediaCondition: tokenizeMediaCondition(tokens.slice(firstIndex + 2), false)\n };\n } catch (err) {\n throw createError(\"Expected media condition after 'and'\", err);\n }\n } else {\n throw createError(\"Expected 'and' after media prefix\");\n }\n } else {\n throw createError('Expected media condition after media prefix');\n }\n } else {\n throw createError('Expected media condition or media prefix');\n }\n};\nvar tokenizeMediaCondition = function tokenizeMediaCondition(tokens, mayContainOr, previousOperator) {\n if (previousOperator === void 0) {\n previousOperator = null;\n }\n\n if (tokens.length < 3 || tokens[0].type !== '<(-token>' || tokens[tokens.length - 1].type !== '<)-token>') {\n throw new Error('Invalid media condition');\n }\n\n var endIndexOfFirstFeature = tokens.length - 1;\n var maxDepth = 0;\n var count = 0;\n\n for (var i = 0; i < tokens.length; i++) {\n var token = tokens[i];\n\n if (token.type === '<(-token>') {\n count += 1;\n maxDepth = Math.max(maxDepth, count);\n } else if (token.type === '<)-token>') {\n count -= 1;\n }\n\n if (count === 0) {\n endIndexOfFirstFeature = i;\n break;\n }\n }\n\n if (count !== 0) {\n throw new Error('Mismatched parens\\nInvalid media condition');\n }\n\n var child;\n var featureTokens = tokens.slice(0, endIndexOfFirstFeature + 1);\n\n if (maxDepth === 1) {\n child = tokenizeMediaFeature(featureTokens);\n } else {\n if (featureTokens[1].type === '<ident-token>' && featureTokens[1].value === 'not') {\n child = tokenizeMediaCondition(featureTokens.slice(2, -1), true, 'not');\n } else {\n child = tokenizeMediaCondition(featureTokens.slice(1, -1), true);\n }\n }\n\n if (endIndexOfFirstFeature === tokens.length - 1) {\n return {\n operator: previousOperator,\n children: [child]\n };\n } else {\n var nextToken = tokens[endIndexOfFirstFeature + 1];\n\n if (nextToken.type !== '<ident-token>') {\n throw new Error('Invalid operator\\nInvalid media condition');\n } else if (previousOperator !== null && previousOperator !== nextToken.value) {\n throw new Error(\"'\".concat(nextToken.value, \"' and '\").concat(previousOperator, \"' must not be at same level\\nInvalid media condition\"));\n } else if (nextToken.value === 'or' && !mayContainOr) {\n throw new Error(\"Cannot use 'or' at top level of a media query\\nInvalid media condition\");\n } else if (nextToken.value !== 'and' && nextToken.value !== 'or') {\n throw new Error(\"Invalid operator: '\".concat(nextToken.value, \"'\\nInvalid media condition\"));\n }\n\n var siblings = tokenizeMediaCondition(tokens.slice(endIndexOfFirstFeature + 2), mayContainOr, nextToken.value);\n return {\n operator: nextToken.value,\n children: [child].concat(siblings.children)\n };\n }\n};\nvar tokenizeMediaFeature = function tokenizeMediaFeature(rawTokens) {\n if (rawTokens.length < 3 || rawTokens[0].type !== '<(-token>' || rawTokens[rawTokens.length - 1].type !== '<)-token>') {\n throw new Error('Invalid media feature');\n }\n\n var tokens = [rawTokens[0]];\n\n for (var i = 1; i < rawTokens.length; i++) {\n if (i < rawTokens.length - 2) {\n var a = rawTokens[i];\n var b = rawTokens[i + 1];\n var c = rawTokens[i + 2];\n\n if (a.type === '<number-token>' && a.value > 0 && b.type === '<delim-token>' && b.value === 0x002f && c.type === '<number-token>' && c.value > 0) {\n tokens.push({\n type: '<ratio-token>',\n numerator: a.value,\n denominator: c.value,\n wsBefore: a.wsBefore,\n wsAfter: c.wsAfter\n });\n i += 2;\n continue;\n }\n }\n\n tokens.push(rawTokens[i]);\n }\n\n var nextToken = tokens[1];\n\n if (nextToken.type === '<ident-token>' && tokens.length === 3) {\n return {\n context: 'boolean',\n feature: nextToken.value\n };\n } else if (tokens.length === 5 && tokens[1].type === '<ident-token>' && tokens[2].type === '<colon-token>') {\n var valueToken = tokens[3];\n\n if (valueToken.type === '<number-token>' || valueToken.type === '<dimension-token>' || valueToken.type === '<ratio-token>' || valueToken.type === '<ident-token>') {\n var feature = tokens[1].value;\n var prefix = null;\n var slice = feature.slice(0, 4);\n\n if (slice === 'min-') {\n prefix = 'min';\n feature = feature.slice(4);\n } else if (slice === 'max-') {\n prefix = 'max';\n feature = feature.slice(4);\n }\n\n valueToken.wsBefore;\n valueToken.wsAfter;\n var value = __rest(valueToken, [\"wsBefore\", \"wsAfter\"]);\n\n return {\n context: 'value',\n prefix: prefix,\n feature: feature,\n value: value\n };\n }\n } else if (tokens.length >= 5) {\n try {\n var range = tokenizeRange(tokens);\n return {\n context: 'range',\n feature: range.featureName,\n range: range\n };\n } catch (err) {\n throw createError('Invalid media feature', err);\n }\n }\n\n throw new Error('Invalid media feature');\n};\nvar tokenizeRange = function tokenizeRange(tokens) {\n var _a, _b, _c, _d;\n\n if (tokens.length < 5 || tokens[0].type !== '<(-token>' || tokens[tokens.length - 1].type !== '<)-token>') {\n throw new Error('Invalid range');\n }\n\n var range = {\n leftToken: null,\n leftOp: null,\n featureName: '',\n rightOp: null,\n rightToken: null\n };\n var hasLeft = tokens[1].type === '<number-token>' || tokens[1].type === '<dimension-token>' || tokens[1].type === '<ratio-token>' || tokens[1].type === '<ident-token>' && tokens[1].value === 'infinite';\n\n if (tokens[2].type === '<delim-token>') {\n if (tokens[2].value === 0x003c) {\n if (tokens[3].type === '<delim-token>' && tokens[3].value === 0x003d && !tokens[3].wsBefore) {\n range[hasLeft ? 'leftOp' : 'rightOp'] = '<=';\n } else {\n range[hasLeft ? 'leftOp' : 'rightOp'] = '<';\n }\n } else if (tokens[2].value === 0x003e) {\n if (tokens[3].type === '<delim-token>' && tokens[3].value === 0x003d && !tokens[3].wsBefore) {\n range[hasLeft ? 'leftOp' : 'rightOp'] = '>=';\n } else {\n range[hasLeft ? 'leftOp' : 'rightOp'] = '>';\n }\n } else if (tokens[2].value === 0x003d) {\n range[hasLeft ? 'leftOp' : 'rightOp'] = '=';\n } else {\n throw new Error('Invalid range');\n }\n\n if (hasLeft) {\n range.leftToken = tokens[1];\n } else if (tokens[1].type === '<ident-token>') {\n range.featureName = tokens[1].value;\n } else {\n throw new Error('Invalid range');\n }\n\n var tokenIndexAfterFirstOp = 2 + ((_b = (_a = range[hasLeft ? 'leftOp' : 'rightOp']) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0);\n var tokenAfterFirstOp = tokens[tokenIndexAfterFirstOp];\n\n if (hasLeft) {\n if (tokenAfterFirstOp.type === '<ident-token>') {\n range.featureName = tokenAfterFirstOp.value;\n\n if (tokens.length >= 7) {\n var secondOpToken = tokens[tokenIndexAfterFirstOp + 1];\n var followingToken = tokens[tokenIndexAfterFirstOp + 2];\n\n if (secondOpToken.type === '<delim-token>') {\n var charCode = secondOpToken.value;\n\n if (charCode === 0x003c) {\n if (followingToken.type === '<delim-token>' && followingToken.value === 0x003d && !followingToken.wsBefore) {\n range.rightOp = '<=';\n } else {\n range.rightOp = '<';\n }\n } else if (charCode === 0x003e) {\n if (followingToken.type === '<delim-token>' && followingToken.value === 0x003d && !followingToken.wsBefore) {\n range.rightOp = '>=';\n } else {\n range.rightOp = '>';\n }\n } else {\n throw new Error('Invalid range');\n }\n\n var tokenAfterSecondOp = tokens[tokenIndexAfterFirstOp + 1 + ((_d = (_c = range.rightOp) === null || _c === void 0 ? void 0 : _c.length) !== null && _d !== void 0 ? _d : 0)];\n range.rightToken = tokenAfterSecondOp;\n } else {\n throw new Error('Invalid range');\n }\n } else if (tokenIndexAfterFirstOp + 2 !== tokens.length) {\n throw new Error('Invalid range');\n }\n } else {\n throw new Error('Invalid range');\n }\n } else {\n range.rightToken = tokenAfterFirstOp;\n }\n\n var validRange = null;\n var lt = range.leftToken,\n leftOp = range.leftOp,\n featureName = range.featureName,\n rightOp = range.rightOp,\n rt = range.rightToken;\n var leftToken = null;\n\n if (lt !== null) {\n if (lt.type === '<ident-token>') {\n var type = lt.type,\n value = lt.value;\n\n if (value === 'infinite') {\n leftToken = {\n type: type,\n value: value\n };\n }\n } else if (lt.type === '<number-token>' || lt.type === '<dimension-token>' || lt.type === '<ratio-token>') {\n lt.wsBefore;\n lt.wsAfter;\n var ltNoWS = __rest(lt, [\"wsBefore\", \"wsAfter\"]);\n\n leftToken = ltNoWS;\n }\n }\n\n var rightToken = null;\n\n if (rt !== null) {\n if (rt.type === '<ident-token>') {\n var type = rt.type,\n value = rt.value;\n\n if (value === 'infinite') {\n rightToken = {\n type: type,\n value: value\n };\n }\n } else if (rt.type === '<number-token>' || rt.type === '<dimension-token>' || rt.type === '<ratio-token>') {\n rt.wsBefore;\n rt.wsAfter;\n var rtNoWS = __rest(rt, [\"wsBefore\", \"wsAfter\"]);\n\n rightToken = rtNoWS;\n }\n }\n\n if (leftToken !== null && rightToken !== null) {\n if ((leftOp === '<' || leftOp === '<=') && (rightOp === '<' || rightOp === '<=')) {\n validRange = {\n leftToken: leftToken,\n leftOp: leftOp,\n featureName: featureName,\n rightOp: rightOp,\n rightToken: rightToken\n };\n } else if ((leftOp === '>' || leftOp === '>=') && (rightOp === '>' || rightOp === '>=')) {\n validRange = {\n leftToken: leftToken,\n leftOp: leftOp,\n featureName: featureName,\n rightOp: rightOp,\n rightToken: rightToken\n };\n } else {\n throw new Error('Invalid range');\n }\n } else if (leftToken === null && leftOp === null && rightOp !== null && rightToken !== null) {\n validRange = {\n leftToken: leftToken,\n leftOp: leftOp,\n featureName: featureName,\n rightOp: rightOp,\n rightToken: rightToken\n };\n } else if (leftToken !== null && leftOp !== null && rightOp === null && rightToken === null) {\n validRange = {\n leftToken: leftToken,\n leftOp: leftOp,\n featureName: featureName,\n rightOp: rightOp,\n rightToken: rightToken\n };\n }\n\n return validRange;\n } else {\n throw new Error('Invalid range');\n }\n};\n\nexport { consumeEscape, consumeIdent, consumeIdentLike, consumeIdentUnsafe, consumeNumber, consumeNumeric, consumeString, consumeUrl, lexicalAnalysis, removeWhitespace, syntacticAnalysis, toAST, toUnflattenedAST, tokenizeMediaCondition, tokenizeMediaFeature, tokenizeMediaQuery, tokenizeRange, wouldStartIdentifier };\n//# sourceMappingURL=media-query-parser.esm.js.map\n"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
// src/index.ts
|
|
2
|
+
var AhoCorasick = class {
|
|
3
|
+
constructor(keywords) {
|
|
4
|
+
const { failure, gotoFn, output } = this._buildTables(keywords);
|
|
5
|
+
this.gotoFn = gotoFn;
|
|
6
|
+
this.output = output;
|
|
7
|
+
this.failure = failure;
|
|
8
|
+
}
|
|
9
|
+
_buildTables(keywords) {
|
|
10
|
+
const gotoFn = {
|
|
11
|
+
0: {}
|
|
12
|
+
};
|
|
13
|
+
const output = {};
|
|
14
|
+
let state = 0;
|
|
15
|
+
for (const word of keywords) {
|
|
16
|
+
let curr = 0;
|
|
17
|
+
for (const l of word) {
|
|
18
|
+
if (gotoFn[curr] && l in gotoFn[curr]) {
|
|
19
|
+
curr = gotoFn[curr][l];
|
|
20
|
+
} else {
|
|
21
|
+
state++;
|
|
22
|
+
gotoFn[curr][l] = state;
|
|
23
|
+
gotoFn[state] = {};
|
|
24
|
+
curr = state;
|
|
25
|
+
output[state] = [];
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
output[curr].push(word);
|
|
29
|
+
}
|
|
30
|
+
const failure = {};
|
|
31
|
+
const xs = [];
|
|
32
|
+
for (const l in gotoFn[0]) {
|
|
33
|
+
const state2 = gotoFn[0][l];
|
|
34
|
+
failure[state2] = 0;
|
|
35
|
+
xs.push(state2);
|
|
36
|
+
}
|
|
37
|
+
while (xs.length > 0) {
|
|
38
|
+
const r = xs.shift();
|
|
39
|
+
if (r !== void 0) {
|
|
40
|
+
for (const l in gotoFn[r]) {
|
|
41
|
+
const s = gotoFn[r][l];
|
|
42
|
+
xs.push(s);
|
|
43
|
+
let state2 = failure[r];
|
|
44
|
+
while (state2 > 0 && !(l in gotoFn[state2])) {
|
|
45
|
+
state2 = failure[state2];
|
|
46
|
+
}
|
|
47
|
+
if (l in gotoFn[state2]) {
|
|
48
|
+
const fs = gotoFn[state2][l];
|
|
49
|
+
failure[s] = fs;
|
|
50
|
+
output[s] = [...output[s], ...output[fs]];
|
|
51
|
+
} else {
|
|
52
|
+
failure[s] = 0;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
return {
|
|
58
|
+
gotoFn,
|
|
59
|
+
output,
|
|
60
|
+
failure
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
search(str) {
|
|
64
|
+
let state = 0;
|
|
65
|
+
const results = [];
|
|
66
|
+
for (let i = 0; i < str.length; i++) {
|
|
67
|
+
const l = str[i];
|
|
68
|
+
while (state > 0 && !(l in this.gotoFn[state])) {
|
|
69
|
+
state = this.failure[state];
|
|
70
|
+
}
|
|
71
|
+
if (!(l in this.gotoFn[state])) {
|
|
72
|
+
continue;
|
|
73
|
+
}
|
|
74
|
+
state = this.gotoFn[state][l];
|
|
75
|
+
if (this.output[state].length > 0) {
|
|
76
|
+
const foundStrs = this.output[state];
|
|
77
|
+
results.push([i, foundStrs]);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
return results;
|
|
81
|
+
}
|
|
82
|
+
match(str) {
|
|
83
|
+
let state = 0;
|
|
84
|
+
for (let i = 0; i < str.length; i++) {
|
|
85
|
+
const l = str[i];
|
|
86
|
+
while (state > 0 && !(l in this.gotoFn[state])) {
|
|
87
|
+
state = this.failure[state];
|
|
88
|
+
}
|
|
89
|
+
if (!(l in this.gotoFn[state])) {
|
|
90
|
+
continue;
|
|
91
|
+
}
|
|
92
|
+
state = this.gotoFn[state][l];
|
|
93
|
+
if (this.output[state].length > 0) {
|
|
94
|
+
return true;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
return false;
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
export { AhoCorasick as default };
|
|
102
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../node_modules/modern-ahocorasick/dist/index.js"],"sourcesContent":["// src/index.ts\nvar AhoCorasick = class {\n constructor(keywords) {\n const { failure, gotoFn, output } = this._buildTables(keywords);\n this.gotoFn = gotoFn;\n this.output = output;\n this.failure = failure;\n }\n _buildTables(keywords) {\n const gotoFn = {\n 0: {}\n };\n const output = {};\n let state = 0;\n for (const word of keywords) {\n let curr = 0;\n for (const l of word) {\n if (gotoFn[curr] && l in gotoFn[curr]) {\n curr = gotoFn[curr][l];\n } else {\n state++;\n gotoFn[curr][l] = state;\n gotoFn[state] = {};\n curr = state;\n output[state] = [];\n }\n }\n output[curr].push(word);\n }\n const failure = {};\n const xs = [];\n for (const l in gotoFn[0]) {\n const state2 = gotoFn[0][l];\n failure[state2] = 0;\n xs.push(state2);\n }\n while (xs.length > 0) {\n const r = xs.shift();\n if (r !== void 0) {\n for (const l in gotoFn[r]) {\n const s = gotoFn[r][l];\n xs.push(s);\n let state2 = failure[r];\n while (state2 > 0 && !(l in gotoFn[state2])) {\n state2 = failure[state2];\n }\n if (l in gotoFn[state2]) {\n const fs = gotoFn[state2][l];\n failure[s] = fs;\n output[s] = [...output[s], ...output[fs]];\n } else {\n failure[s] = 0;\n }\n }\n }\n }\n return {\n gotoFn,\n output,\n failure\n };\n }\n search(str) {\n let state = 0;\n const results = [];\n for (let i = 0; i < str.length; i++) {\n const l = str[i];\n while (state > 0 && !(l in this.gotoFn[state])) {\n state = this.failure[state];\n }\n if (!(l in this.gotoFn[state])) {\n continue;\n }\n state = this.gotoFn[state][l];\n if (this.output[state].length > 0) {\n const foundStrs = this.output[state];\n results.push([i, foundStrs]);\n }\n }\n return results;\n }\n match(str) {\n let state = 0;\n for (let i = 0; i < str.length; i++) {\n const l = str[i];\n while (state > 0 && !(l in this.gotoFn[state])) {\n state = this.failure[state];\n }\n if (!(l in this.gotoFn[state])) {\n continue;\n }\n state = this.gotoFn[state][l];\n if (this.output[state].length > 0) {\n return true;\n }\n }\n return false;\n }\n};\nexport {\n AhoCorasick as default\n};\n"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { __module as picocolors } from '../../_virtual/picocolors2.js';
|
|
2
|
+
|
|
3
|
+
var hasRequiredPicocolors;
|
|
4
|
+
|
|
5
|
+
function requirePicocolors () {
|
|
6
|
+
if (hasRequiredPicocolors) return picocolors.exports;
|
|
7
|
+
hasRequiredPicocolors = 1;
|
|
8
|
+
let p = process || {}, argv = p.argv || [], env = p.env || {};
|
|
9
|
+
let isColorSupported =
|
|
10
|
+
!(!!env.NO_COLOR || argv.includes("--no-color")) &&
|
|
11
|
+
(!!env.FORCE_COLOR || argv.includes("--color") || p.platform === "win32" || ((p.stdout || {}).isTTY && env.TERM !== "dumb") || !!env.CI);
|
|
12
|
+
|
|
13
|
+
let formatter = (open, close, replace = open) =>
|
|
14
|
+
input => {
|
|
15
|
+
let string = "" + input, index = string.indexOf(close, open.length);
|
|
16
|
+
return ~index ? open + replaceClose(string, close, replace, index) + close : open + string + close
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
let replaceClose = (string, close, replace, index) => {
|
|
20
|
+
let result = "", cursor = 0;
|
|
21
|
+
do {
|
|
22
|
+
result += string.substring(cursor, index) + replace;
|
|
23
|
+
cursor = index + close.length;
|
|
24
|
+
index = string.indexOf(close, cursor);
|
|
25
|
+
} while (~index)
|
|
26
|
+
return result + string.substring(cursor)
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
let createColors = (enabled = isColorSupported) => {
|
|
30
|
+
let f = enabled ? formatter : () => String;
|
|
31
|
+
return {
|
|
32
|
+
isColorSupported: enabled,
|
|
33
|
+
reset: f("\x1b[0m", "\x1b[0m"),
|
|
34
|
+
bold: f("\x1b[1m", "\x1b[22m", "\x1b[22m\x1b[1m"),
|
|
35
|
+
dim: f("\x1b[2m", "\x1b[22m", "\x1b[22m\x1b[2m"),
|
|
36
|
+
italic: f("\x1b[3m", "\x1b[23m"),
|
|
37
|
+
underline: f("\x1b[4m", "\x1b[24m"),
|
|
38
|
+
inverse: f("\x1b[7m", "\x1b[27m"),
|
|
39
|
+
hidden: f("\x1b[8m", "\x1b[28m"),
|
|
40
|
+
strikethrough: f("\x1b[9m", "\x1b[29m"),
|
|
41
|
+
|
|
42
|
+
black: f("\x1b[30m", "\x1b[39m"),
|
|
43
|
+
red: f("\x1b[31m", "\x1b[39m"),
|
|
44
|
+
green: f("\x1b[32m", "\x1b[39m"),
|
|
45
|
+
yellow: f("\x1b[33m", "\x1b[39m"),
|
|
46
|
+
blue: f("\x1b[34m", "\x1b[39m"),
|
|
47
|
+
magenta: f("\x1b[35m", "\x1b[39m"),
|
|
48
|
+
cyan: f("\x1b[36m", "\x1b[39m"),
|
|
49
|
+
white: f("\x1b[37m", "\x1b[39m"),
|
|
50
|
+
gray: f("\x1b[90m", "\x1b[39m"),
|
|
51
|
+
|
|
52
|
+
bgBlack: f("\x1b[40m", "\x1b[49m"),
|
|
53
|
+
bgRed: f("\x1b[41m", "\x1b[49m"),
|
|
54
|
+
bgGreen: f("\x1b[42m", "\x1b[49m"),
|
|
55
|
+
bgYellow: f("\x1b[43m", "\x1b[49m"),
|
|
56
|
+
bgBlue: f("\x1b[44m", "\x1b[49m"),
|
|
57
|
+
bgMagenta: f("\x1b[45m", "\x1b[49m"),
|
|
58
|
+
bgCyan: f("\x1b[46m", "\x1b[49m"),
|
|
59
|
+
bgWhite: f("\x1b[47m", "\x1b[49m"),
|
|
60
|
+
|
|
61
|
+
blackBright: f("\x1b[90m", "\x1b[39m"),
|
|
62
|
+
redBright: f("\x1b[91m", "\x1b[39m"),
|
|
63
|
+
greenBright: f("\x1b[92m", "\x1b[39m"),
|
|
64
|
+
yellowBright: f("\x1b[93m", "\x1b[39m"),
|
|
65
|
+
blueBright: f("\x1b[94m", "\x1b[39m"),
|
|
66
|
+
magentaBright: f("\x1b[95m", "\x1b[39m"),
|
|
67
|
+
cyanBright: f("\x1b[96m", "\x1b[39m"),
|
|
68
|
+
whiteBright: f("\x1b[97m", "\x1b[39m"),
|
|
69
|
+
|
|
70
|
+
bgBlackBright: f("\x1b[100m", "\x1b[49m"),
|
|
71
|
+
bgRedBright: f("\x1b[101m", "\x1b[49m"),
|
|
72
|
+
bgGreenBright: f("\x1b[102m", "\x1b[49m"),
|
|
73
|
+
bgYellowBright: f("\x1b[103m", "\x1b[49m"),
|
|
74
|
+
bgBlueBright: f("\x1b[104m", "\x1b[49m"),
|
|
75
|
+
bgMagentaBright: f("\x1b[105m", "\x1b[49m"),
|
|
76
|
+
bgCyanBright: f("\x1b[106m", "\x1b[49m"),
|
|
77
|
+
bgWhiteBright: f("\x1b[107m", "\x1b[49m"),
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
picocolors.exports = createColors();
|
|
82
|
+
picocolors.exports.createColors = createColors;
|
|
83
|
+
return picocolors.exports;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
export { requirePicocolors as __require };
|
|
87
|
+
//# sourceMappingURL=picocolors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"picocolors.js","sources":["../../../../node_modules/picocolors/picocolors.js"],"sourcesContent":["let p = process || {}, argv = p.argv || [], env = p.env || {}\nlet isColorSupported =\n\t!(!!env.NO_COLOR || argv.includes(\"--no-color\")) &&\n\t(!!env.FORCE_COLOR || argv.includes(\"--color\") || p.platform === \"win32\" || ((p.stdout || {}).isTTY && env.TERM !== \"dumb\") || !!env.CI)\n\nlet formatter = (open, close, replace = open) =>\n\tinput => {\n\t\tlet string = \"\" + input, index = string.indexOf(close, open.length)\n\t\treturn ~index ? open + replaceClose(string, close, replace, index) + close : open + string + close\n\t}\n\nlet replaceClose = (string, close, replace, index) => {\n\tlet result = \"\", cursor = 0\n\tdo {\n\t\tresult += string.substring(cursor, index) + replace\n\t\tcursor = index + close.length\n\t\tindex = string.indexOf(close, cursor)\n\t} while (~index)\n\treturn result + string.substring(cursor)\n}\n\nlet createColors = (enabled = isColorSupported) => {\n\tlet f = enabled ? formatter : () => String\n\treturn {\n\t\tisColorSupported: enabled,\n\t\treset: f(\"\\x1b[0m\", \"\\x1b[0m\"),\n\t\tbold: f(\"\\x1b[1m\", \"\\x1b[22m\", \"\\x1b[22m\\x1b[1m\"),\n\t\tdim: f(\"\\x1b[2m\", \"\\x1b[22m\", \"\\x1b[22m\\x1b[2m\"),\n\t\titalic: f(\"\\x1b[3m\", \"\\x1b[23m\"),\n\t\tunderline: f(\"\\x1b[4m\", \"\\x1b[24m\"),\n\t\tinverse: f(\"\\x1b[7m\", \"\\x1b[27m\"),\n\t\thidden: f(\"\\x1b[8m\", \"\\x1b[28m\"),\n\t\tstrikethrough: f(\"\\x1b[9m\", \"\\x1b[29m\"),\n\n\t\tblack: f(\"\\x1b[30m\", \"\\x1b[39m\"),\n\t\tred: f(\"\\x1b[31m\", \"\\x1b[39m\"),\n\t\tgreen: f(\"\\x1b[32m\", \"\\x1b[39m\"),\n\t\tyellow: f(\"\\x1b[33m\", \"\\x1b[39m\"),\n\t\tblue: f(\"\\x1b[34m\", \"\\x1b[39m\"),\n\t\tmagenta: f(\"\\x1b[35m\", \"\\x1b[39m\"),\n\t\tcyan: f(\"\\x1b[36m\", \"\\x1b[39m\"),\n\t\twhite: f(\"\\x1b[37m\", \"\\x1b[39m\"),\n\t\tgray: f(\"\\x1b[90m\", \"\\x1b[39m\"),\n\n\t\tbgBlack: f(\"\\x1b[40m\", \"\\x1b[49m\"),\n\t\tbgRed: f(\"\\x1b[41m\", \"\\x1b[49m\"),\n\t\tbgGreen: f(\"\\x1b[42m\", \"\\x1b[49m\"),\n\t\tbgYellow: f(\"\\x1b[43m\", \"\\x1b[49m\"),\n\t\tbgBlue: f(\"\\x1b[44m\", \"\\x1b[49m\"),\n\t\tbgMagenta: f(\"\\x1b[45m\", \"\\x1b[49m\"),\n\t\tbgCyan: f(\"\\x1b[46m\", \"\\x1b[49m\"),\n\t\tbgWhite: f(\"\\x1b[47m\", \"\\x1b[49m\"),\n\n\t\tblackBright: f(\"\\x1b[90m\", \"\\x1b[39m\"),\n\t\tredBright: f(\"\\x1b[91m\", \"\\x1b[39m\"),\n\t\tgreenBright: f(\"\\x1b[92m\", \"\\x1b[39m\"),\n\t\tyellowBright: f(\"\\x1b[93m\", \"\\x1b[39m\"),\n\t\tblueBright: f(\"\\x1b[94m\", \"\\x1b[39m\"),\n\t\tmagentaBright: f(\"\\x1b[95m\", \"\\x1b[39m\"),\n\t\tcyanBright: f(\"\\x1b[96m\", \"\\x1b[39m\"),\n\t\twhiteBright: f(\"\\x1b[97m\", \"\\x1b[39m\"),\n\n\t\tbgBlackBright: f(\"\\x1b[100m\", \"\\x1b[49m\"),\n\t\tbgRedBright: f(\"\\x1b[101m\", \"\\x1b[49m\"),\n\t\tbgGreenBright: f(\"\\x1b[102m\", \"\\x1b[49m\"),\n\t\tbgYellowBright: f(\"\\x1b[103m\", \"\\x1b[49m\"),\n\t\tbgBlueBright: f(\"\\x1b[104m\", \"\\x1b[49m\"),\n\t\tbgMagentaBright: f(\"\\x1b[105m\", \"\\x1b[49m\"),\n\t\tbgCyanBright: f(\"\\x1b[106m\", \"\\x1b[49m\"),\n\t\tbgWhiteBright: f(\"\\x1b[107m\", \"\\x1b[49m\"),\n\t}\n}\n\nmodule.exports = createColors()\nmodule.exports.createColors = createColors\n"],"names":["picocolorsModule"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { createGlobalTheme } from '../node_modules/@vanilla-extract/css/dist/vanilla-extract-css.esm.js';
|
|
2
|
+
import { vars } from './contract.css.js';
|
|
3
|
+
import { darkThemeValues } from './darkTheme.css.js';
|
|
4
|
+
import { mergeDeep } from '../utils/objects.js';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Creates a custom theme scoped to a CSS selector by deep-merging
|
|
8
|
+
* overrides onto the dark theme defaults.
|
|
9
|
+
*
|
|
10
|
+
* MUST be called in a .css.ts file (build-time only).
|
|
11
|
+
*
|
|
12
|
+
* @param selector - CSS selector to scope the theme to (e.g. '.my-brand', '[data-theme="light"]')
|
|
13
|
+
* @param overrides - Partial theme values to override
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```typescript
|
|
17
|
+
* // my-theme.css.ts
|
|
18
|
+
* import { createCustomTheme } from 'entangle-ui/theme';
|
|
19
|
+
*
|
|
20
|
+
* createCustomTheme('.my-brand', {
|
|
21
|
+
* colors: {
|
|
22
|
+
* accent: { primary: '#ff6600' },
|
|
23
|
+
* },
|
|
24
|
+
* });
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
function createCustomTheme(selector, overrides) {
|
|
28
|
+
const merged = mergeDeep(darkThemeValues, overrides);
|
|
29
|
+
createGlobalTheme(selector, vars, merged);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export { createCustomTheme };
|
|
33
|
+
//# sourceMappingURL=createCustomTheme.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createCustomTheme.js","sources":["../../../../src/theme/createCustomTheme.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;AASA;;;;;;;;;;;;;;;;;;;;AAoBG;AACG,SAAU,iBAAiB,CAC/B,QAAgB,EAChB,SAAmC,EAAA;IAEnC,MAAM,MAAM,GAAG,SAAS,CACtB,eAAqD,EACrD,SAA4D,CAC9C;AAChB,IAAA,iBAAiB,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC;AAC3C;;;;"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
const mergeDeep = (target, source) => {
|
|
2
|
+
const result = { ...target };
|
|
3
|
+
for (const key in source) {
|
|
4
|
+
const sourceValue = source[key];
|
|
5
|
+
const targetValue = result[key];
|
|
6
|
+
if (sourceValue &&
|
|
7
|
+
typeof sourceValue === 'object' &&
|
|
8
|
+
!Array.isArray(sourceValue) &&
|
|
9
|
+
targetValue &&
|
|
10
|
+
typeof targetValue === 'object' &&
|
|
11
|
+
!Array.isArray(targetValue)) {
|
|
12
|
+
result[key] = mergeDeep(targetValue, sourceValue);
|
|
13
|
+
}
|
|
14
|
+
else if (sourceValue !== undefined) {
|
|
15
|
+
result[key] = sourceValue;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
return result;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
export { mergeDeep };
|
|
22
|
+
//# sourceMappingURL=objects.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"objects.js","sources":["../../../../src/utils/objects.ts"],"sourcesContent":[null],"names":[],"mappings":"MAEa,SAAS,GAAG,CACvB,MAAS,EACT,MAAsB,KACjB;AACL,IAAA,MAAM,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE;AAC5B,IAAA,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE;AACxB,QAAA,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC;AAC/B,QAAA,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC;AAE/B,QAAA,IACE,WAAW;YACX,OAAO,WAAW,KAAK,QAAQ;AAC/B,YAAA,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;YAC3B,WAAW;YACX,OAAO,WAAW,KAAK,QAAQ;AAC/B,YAAA,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAC3B;YACA,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CACrB,WAAsC,EACtC,WAAmD,CACrB;QAClC;AAAO,aAAA,IAAI,WAAW,KAAK,SAAS,EAAE;AACpC,YAAA,MAAM,CAAC,GAAG,CAAC,GAAG,WAA0C;QAC1D;IACF;AACA,IAAA,OAAO,MAAM;AACf;;;;"}
|
|
@@ -390,6 +390,7 @@ declare const Button: React.NamedExoticComponent<{
|
|
|
390
390
|
onTransitionStart?: React.TransitionEventHandler<HTMLButtonElement> | undefined;
|
|
391
391
|
onTransitionStartCapture?: React.TransitionEventHandler<HTMLButtonElement> | undefined;
|
|
392
392
|
form?: string | undefined | undefined;
|
|
393
|
+
value?: string | number | readonly string[] | undefined;
|
|
393
394
|
formAction?: string | ((formData: FormData) => void | Promise<void>) | undefined;
|
|
394
395
|
formEncType?: string | undefined | undefined;
|
|
395
396
|
formMethod?: string | undefined | undefined;
|
|
@@ -397,7 +398,6 @@ declare const Button: React.NamedExoticComponent<{
|
|
|
397
398
|
formTarget?: string | undefined | undefined;
|
|
398
399
|
name?: string | undefined | undefined;
|
|
399
400
|
type?: "submit" | "reset" | "button" | undefined | undefined;
|
|
400
|
-
value?: string | number | readonly string[] | undefined;
|
|
401
401
|
}>;
|
|
402
402
|
|
|
403
403
|
export { Button };
|
|
@@ -347,6 +347,7 @@ declare const IconButton: React.NamedExoticComponent<{
|
|
|
347
347
|
onTransitionStart?: React.TransitionEventHandler<HTMLButtonElement> | undefined;
|
|
348
348
|
onTransitionStartCapture?: React.TransitionEventHandler<HTMLButtonElement> | undefined;
|
|
349
349
|
form?: string | undefined | undefined;
|
|
350
|
+
value?: string | number | readonly string[] | undefined;
|
|
350
351
|
formAction?: string | ((formData: FormData) => void | Promise<void>) | undefined;
|
|
351
352
|
formEncType?: string | undefined | undefined;
|
|
352
353
|
formMethod?: string | undefined | undefined;
|
|
@@ -354,7 +355,6 @@ declare const IconButton: React.NamedExoticComponent<{
|
|
|
354
355
|
formTarget?: string | undefined | undefined;
|
|
355
356
|
name?: string | undefined | undefined;
|
|
356
357
|
type?: "submit" | "reset" | "button" | undefined | undefined;
|
|
357
|
-
value?: string | number | readonly string[] | undefined;
|
|
358
358
|
}>;
|
|
359
359
|
|
|
360
360
|
export { IconButton };
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { ThemeVars, vars } from './theme/contract.css.js';
|
|
2
2
|
export { DarkThemeValues, darkThemeValues } from './theme/darkTheme.css.js';
|
|
3
|
-
export {
|
|
3
|
+
export { createCustomTheme } from './theme/createCustomTheme.js';
|
|
4
4
|
export { VanillaThemeProvider, VanillaThemeProviderProps } from './theme/VanillaThemeProvider.js';
|
|
5
5
|
export { ThemeProvider, ThemeProviderProps } from './theme/ThemeProvider.js';
|
|
6
6
|
export { Accordion } from './components/layout/Accordion/Accordion.js';
|
|
@@ -38,6 +38,7 @@ export { Switch, SwitchProps, SwitchSize } from './components/primitives/Switch/
|
|
|
38
38
|
export { Text, TextAlign, TextColor, TextElement, TextLineHeight, TextProps, TextSize, TextVariant, TextWeight } from './components/primitives/Text/Text.js';
|
|
39
39
|
export { Tooltip, TooltipProps } from './components/primitives/Tooltip/Tooltip.js';
|
|
40
40
|
export { CollisionAvoidance, TooltipCollisionConfig, TooltipCollisionStrategy, TooltipPlacement } from './components/primitives/Tooltip/types.js';
|
|
41
|
+
export { Brand, DeepPartial, DeepReadonly, KeyOf, LiteralUnion, NonEmptyArray, Prettify, RequireFields, StrictExclude, ValueOf } from './types/utilities.js';
|
|
41
42
|
export { BaseComponent, Size, Variant } from './types/common.js';
|
|
42
43
|
export { ColorPicker } from './components/controls/ColorPicker/ColorPicker.js';
|
|
43
44
|
export { ColorSwatch } from './components/controls/ColorPicker/ColorSwatch.js';
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { DeepPartial } from '../types/utilities.js';
|
|
2
|
+
import { DarkThemeValues } from './darkTheme.css.js';
|
|
3
|
+
|
|
4
|
+
type ThemeValues = DarkThemeValues;
|
|
5
|
+
/**
|
|
6
|
+
* Creates a custom theme scoped to a CSS selector by deep-merging
|
|
7
|
+
* overrides onto the dark theme defaults.
|
|
8
|
+
*
|
|
9
|
+
* MUST be called in a .css.ts file (build-time only).
|
|
10
|
+
*
|
|
11
|
+
* @param selector - CSS selector to scope the theme to (e.g. '.my-brand', '[data-theme="light"]')
|
|
12
|
+
* @param overrides - Partial theme values to override
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```typescript
|
|
16
|
+
* // my-theme.css.ts
|
|
17
|
+
* import { createCustomTheme } from 'entangle-ui/theme';
|
|
18
|
+
*
|
|
19
|
+
* createCustomTheme('.my-brand', {
|
|
20
|
+
* colors: {
|
|
21
|
+
* accent: { primary: '#ff6600' },
|
|
22
|
+
* },
|
|
23
|
+
* });
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
declare function createCustomTheme(selector: string, overrides: DeepPartial<ThemeValues>): void;
|
|
27
|
+
|
|
28
|
+
export { createCustomTheme };
|
|
29
|
+
export type { ThemeValues };
|