{"_id":"@ahcui/lib-jsext","_rev":"2-4d704fe6038585b27465bfb9495642ce","name":"@ahcui/lib-jsext","dist-tags":{"latest":"0.1.4"},"versions":{"0.1.2":{"name":"@ahcui/lib-jsext","version":"0.1.2","keywords":["@ahcui","zerostyle","jsext","lib-jsext"],"author":{"name":"zerostyle@126.com"},"license":"MIT","_id":"@ahcui/lib-jsext@0.1.2","maintainers":[{"name":"zero_style","email":"zerostyle@126.com"}],"homepage":"https://gitee.com/ahcui/jsext.git","bugs":{"url":"https://gitee.com/ahcui/jsext/issues"},"dist":{"shasum":"c8a3f380487e5f846ae1ee7547fc993fad6e41b0","tarball":"https://registry.npmjs.org/@ahcui/lib-jsext/-/lib-jsext-0.1.2.tgz","fileCount":4,"integrity":"sha512-f3JmFl7/nRGacdTC/VTp0MrF4ZlifvHjZbgJSnT4A4Awn2d90UX6w2CRxkHhC4bslB+TWcDTPj8vhqJiESqtyA==","signatures":[{"sig":"MEUCIQC/JKBTA/PgEej+h/9R74IeRPKfmbgNci1PGfwB2CWSkwIgBYFQ2JfuWRUkKxwiCuByQoe1FF+iXhUTJOD4CYq3LuQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55141,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiWlbgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmob9xAAlJY7HYp6JMUWFT8KSoLytTV5nvugpDPXrHiZbOH7u4shN4kX\r\n93Dd0rfYwBrQgoFpsuAB548ABAEZJFD2XsP08wI874b3ZKgf3goXFyj4Pcx7\r\ntJCZRLpsuLoK39gmXj7z8x/jnX+BmmmQBJc6QFFqFHp8tB8YiMJMeQ54diI5\r\n9R4ph2jt3OBCfhgdmrziO97tjDYntvP3bcQOF3VPxR8rLBlUGjbwBbxW1LpN\r\n9cJQKqHqosnFsWGqkLCSd4Jr39mdWeOd8sRJHp5HGKhtsBkFvPDlqTgLRnVK\r\nkye1i62smGW0c1g/+zoLrE5YpKXc7AgwGDmPBB+qhRcDhuyIQ894G3XrsJ+m\r\noelESJfFidvDMJIhYOuApHeb6tpXSjuKpfxweia7djJXqD01MS0FgTMEOdbA\r\nkqmx23lrWErdc3j5a4bvcWSg4zpBibKL/+jTqdAdgTrXEdWVrofoWxW1KpbS\r\n4YZLEKci3umY7+EqX/hEL8QiWX3nnrnmvh2Oc1d+YBK8XUWmier1zTWkx4yz\r\nOpUs7Qf38toEsjuRJqOHyHT6yHkr7ip2F8b2PiLZj1wSmK1N6HCPNfBpzYZR\r\nYl6WqNU48bo+MYOP+thymAjjegb1rdxVLUwRzCJLZKa2Pyw5Yd6AyKs4ZVOR\r\nZ6/Zo1fTp1RW47wt3yHtzUdwxQKG9WsZySg=\r\n=qiKu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/lib-jsext.umd.min.js","gitHead":"29a2f2694830d245a1afaeccc5357d5a925ceff2","private":false,"scripts":{"build":"webpack --config webpack.conf.js","pub:lib-jsext-0.1.2":"npm publish --access public","unpub:lib-jsext-0.1.2":"npm unpublish @ahcui/lib-jsext@0.1.2"},"_npmUser":{"name":"zero_style","email":"zerostyle@126.com"},"repository":{"url":"https://gitee.com/ahcui/jsext.git","type":"gitee"},"_npmVersion":"6.14.15","description":"前端JS扩展库","directories":{},"_nodeVersion":"14.17.0","browserslist":["> 1%","last 2 versions","not ie <= 8"],"dependencies":{},"eslintConfig":{"env":{"node":true},"root":true,"rules":{},"extends":["eslint:recommended"],"parserOptions":{"parser":"babel-eslint"}},"_hasShrinkwrap":false,"bakdependencies":{"core-js":"^3.4.4","@babel/runtime":"^7.8.7","babel-preset-stage-0":"^6.24.1"},"devDependencies":{"eslint":"^5.16.0","webpack":"4.41.5","@babel/core":"^7.8.7","webpack-cli":"^3.3.10","babel-eslint":"^10.0.3","babel-loader":"^8.0.6","uglify-js-plugin":"0.0.6","@babel/preset-env":"^7.8.4","@babel/preset-react":"^7.7.4","babel-preset-es2015":"^6.24.1","@babel/runtime-corejs3":"^7.16.3","@babel/plugin-transform-runtime":"^7.8.3"},"bakdevDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/lib-jsext_0.1.2_1650087648373_0.8488918358248265","host":"s3://npm-registry-packages"}},"0.1.3":{"name":"@ahcui/lib-jsext","version":"0.1.3","keywords":["@ahcui","zerostyle","jsext","lib-jsext"],"author":{"name":"zerostyle@126.com"},"license":"MIT","_id":"@ahcui/lib-jsext@0.1.3","maintainers":[{"name":"zero_style","email":"zerostyle@126.com"}],"homepage":"https://gitee.com/ahcui/jsext.git","bugs":{"url":"https://gitee.com/ahcui/jsext/issues"},"dist":{"shasum":"b57566c8358e5a70b8addc9823ff908daa90f9cd","tarball":"https://registry.npmjs.org/@ahcui/lib-jsext/-/lib-jsext-0.1.3.tgz","fileCount":3,"integrity":"sha512-J6PYxhzWpadDJywo74EvrUU9j2fOx1vFumaONqlob7xpSzwVVAaw6ZquV/SiXnm4/KgMdy2NGLatITE9DKxbRw==","signatures":[{"sig":"MEUCIQCQBLnyh4wHn3nkvg+IDDL9ScrxfyAFEBfphC6+EotxEAIgDIyvORdc7fWkoxTl91Js1B9BZVXIsZFvmuxfiYLKzX4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":79465},"main":"lib/index.min.js","module":"esModule/index.min.mjs","gitHead":"527ff0401a728d55148087cec085b7d7ddeb9f97","private":false,"scripts":{},"_npmUser":{"name":"zero_style","email":"zerostyle@126.com"},"repository":{"url":"https://gitee.com/ahcui/jsext.git","type":"gitee"},"_npmVersion":"8.19.1","description":"前端JS扩展库","directories":{},"_nodeVersion":"18.9.1","browserslist":["> 1%","last 2 versions","not ie <= 8"],"dependencies":{},"eslintConfig":{"env":{"node":true},"root":true,"rules":{},"extends":["eslint:recommended"],"parserOptions":{"parser":"babel-eslint"}},"_hasShrinkwrap":false,"bakdependencies":{"core-js":"^3.4.4","@babel/runtime":"^7.8.7","babel-preset-stage-0":"^6.24.1"},"devDependencies":{"eslint":"^5.16.0","webpack":"4.41.5","@babel/core":"^7.8.7","webpack-cli":"^3.3.10","babel-eslint":"^10.0.3","babel-loader":"^8.0.6","uglify-js-plugin":"0.0.6","@babel/preset-env":"^7.8.4","@babel/preset-react":"^7.7.4","babel-preset-es2015":"^6.24.1","@babel/runtime-corejs3":"^7.16.3","@babel/plugin-transform-runtime":"^7.8.3"},"bakdevDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/lib-jsext_0.1.3_1730708883422_0.17621515672694876","host":"s3://npm-registry-packages"}},"0.1.4":{"name":"@ahcui/lib-jsext","version":"0.1.4","author":{"name":"zerostyle@126.com"},"description":"前端JS扩展库","main":"dist/lib-jsext.umd.min.js","license":"MIT","private":false,"keywords":["@ahcui","zerostyle","jsext","lib-jsext"],"homepage":"https://gitee.com/ahcui/jsext.git","bugs":{"url":"https://gitee.com/ahcui/jsext/issues"},"repository":{"type":"gitee","url":"https://gitee.com/ahcui/jsext.git"},"scripts":{"build":"webpack --config webpack.conf.js","unpub:lib-jsext-0.1.4":"npm unpublish @ahcui/lib-jsext@0.1.4","pub:lib-jsext-0.1.4":"npm publish --access public"},"dependencies":{},"devDependencies":{"@babel/core":"^7.8.7","@babel/plugin-transform-runtime":"^7.8.3","@babel/preset-env":"^7.8.4","@babel/runtime-corejs3":"^7.16.3","babel-eslint":"^10.0.3","babel-loader":"^8.0.6","@babel/preset-react":"^7.7.4","babel-preset-es2015":"^6.24.1","eslint":"^5.16.0","uglify-js-plugin":"0.0.6","webpack":"4.41.5","webpack-cli":"^3.3.10"},"bakdependencies":{"core-js":"^3.4.4","@babel/runtime":"^7.8.7","babel-preset-stage-0":"^6.24.1"},"bakdevDependencies":{},"eslintConfig":{"root":true,"env":{"node":true},"extends":["eslint:recommended"],"rules":{},"parserOptions":{"parser":"babel-eslint"}},"browserslist":["> 1%","last 2 versions","not ie <= 8"],"gitHead":"72b242d09065374f8f3579898cbae762884753ee","_id":"@ahcui/lib-jsext@0.1.4","_nodeVersion":"14.17.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-9EsoHD7zaiP0Q2/eN7uwKRTIE2NKNzn4OG4M4r1BEZoZs88+StEWnUWFt5S7RSigzlhAdolrX3LZfsMFDnDjaA==","shasum":"20ec2a964b844f251f650daea61facce190f7a0b","tarball":"https://registry.npmjs.org/@ahcui/lib-jsext/-/lib-jsext-0.1.4.tgz","fileCount":5,"unpackedSize":57578,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBgkj5UGlVSNkgD4wZ50lgo56VUdhKM5AXrJIZP65itdAiAWtOydG7BYOBuWB96738NVujwpYAqWNulxaX8yyIbhbw=="}]},"_npmUser":{"name":"zero_style","email":"zerostyle@126.com"},"directories":{},"maintainers":[{"name":"zero_style","email":"zerostyle@126.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lib-jsext_0.1.4_1730853140814_0.043435050008255205"},"_hasShrinkwrap":false}},"time":{"created":"2022-04-16T05:40:48.313Z","modified":"2024-11-06T00:32:21.269Z","0.1.2":"2022-04-16T05:40:48.508Z","0.1.3":"2024-11-04T08:28:03.573Z","0.1.4":"2024-11-06T00:32:21.088Z"},"bugs":{"url":"https://gitee.com/ahcui/jsext/issues"},"author":{"name":"zerostyle@126.com"},"license":"MIT","homepage":"https://gitee.com/ahcui/jsext.git","keywords":["@ahcui","zerostyle","jsext","lib-jsext"],"repository":{"type":"gitee","url":"https://gitee.com/ahcui/jsext.git"},"description":"前端JS扩展库","maintainers":[{"name":"zero_style","email":"zerostyle@126.com"}],"readme":"<h1 align=\"center\">@ahcui/lib-jsext</h1>\r\n\r\n### **前端javascript扩展**\r\n\r\n##### 组织：ahcui\r\n\r\n##### lib-jsext 是对原生javascript基础对象的扩展与常用函数局的封装。\r\n\r\n\r\n\r\n### **当前版本:** 0.1.2 \r\n\r\n\r\n\r\n## 特性\r\n\r\n* 对String对象进行扩展，支持format，trim，ltrim，rtrim\r\n* 对Date对象进行扩展，支持format，addDays\r\n* 增加命名空间（namespace）的支持，getNameSpace，setNameSpace\r\n* 增加对cookie的访问库addCookie，getCookie，delCookie，clearCookie，allCookie，以及系统开发中需要用到的默认cookie键名\r\n* 增加对浏览器正常/全屏的切换，默认为正常模式，screenSwitch\r\n* 增加对uri的处理，getJsonFromUrlParams，setJsonToUrlParams，getParameter，setParameter\r\n* 增加对dom元素class属性的设置功能，addClass，removeClass\r\n\r\n## 升级内容\r\n\r\n* 升级命名空间注册函数setNameSpace的处理过程，修复在ES6规范下，window使用proxy对象后注册命名空间不正常的问题\r\n\r\n\r\n## 入门指南\r\n\r\n### 支持性\r\n\r\n本组件采用umd规范，提供了尽可能多的使用支持性，umd规范支持性请自行百度。\r\n\r\n可在浏览器中src引入，对javascript基础类型的扩展会自动执行，无需单独调用函数，其他对象均可访问，入口点为：window.AhcuiLibJSExt；\r\n```javascript\r\n//暂无测试代码\r\n```\r\n\r\n可在nodejs环境下使用require(\"lib-jsext\")引入，可用对String与Date类型的扩展（自动扩展）以及Uri对象函数，其他类型不可见，\r\n```javascript\r\nconst Uri= require(\"lib-jsext\").Uri;\r\n\r\nUri.setJsonToUrlParams({'aa':1,\"bb\":2},\"http://localhost/\")\r\n```\r\n\r\n可在ES6下（es2015）完整使用\r\n```javascript\r\nimport {Uri,Class,Cookie,NameSpace,Screen} from \"lib-jsext\";\r\n```\r\n\r\n### 安装\r\n\r\n#### npm\r\n\r\n    # 使用 npm    \r\n\tnpm install lib-jsext --save\r\n    \r\n\r\n\r\n\r\n#### 引入\r\n\r\n对于基础类型如 String,Date无需声明式引入，即无需这样（引入后会导致编译出现重复声明的错误，）：\r\n```javascript\r\nimport {Date,String} from \"lib-jsext\";\r\n```\r\n对于使用到Class,Cooike,NameSpace,Screen,Uri的需要如下引入\r\n```javascript\r\nimport {Uri,Class,Cookie,NameSpace,Screen} from \"lib-jsext\";\r\n```\r\n\r\n\r\n\r\n### 文档\r\n\r\n#### Class\r\n\r\n/***\r\n *  @author:zerostyle\r\n *  @email: zerostyle@126.com\r\n *  @date：20191024\r\n *  @version:V1.1.0\r\n *  @description:\r\n *  该模块开放函数在需要的地方引入即可，禁止全局引入，因为全局引入后您仍需要在每个使用的模块中单独引入\r\n *  软件中如有对该模块方法调用时，请将该模块在main.js中引入，即可在程序运行时就完成了对基础类型的扩展，\r\n *  如对此机制不明白的请查阅javascript相关文档\r\n *  1:addClass 添加dom元素中的class样式\r\n *  2:removeClass 移除dom元素中的class样式\r\n *\r\n *  @example:\r\n *  let dom=document.getElementById(\"app\")||jQuery(\"#app\")[0];\r\n *  addClass(\"classA\",dom)\r\n *  removeClass(\"classA\",dom)\r\n *\r\n *  @interface:\r\n *  addClass(string,HTMLElement)\r\n *  removeClass(string,HTMLElement)\r\n *\r\n */\r\n \r\n##### 库函数\r\n```javascript\r\n//  添加className\r\nfunction addClass(className, dom) \r\n\r\n// 删除className\r\nfunction removeClass(className, dom)\r\n```\r\n\r\n\r\n\r\n#### Cookie\r\n\r\n/***\r\n *  @author: zerostyle\r\n *  @email: zerostyle@126.com\r\n *  @date：20180529\r\n *  @version:V1.1.0\r\n *  @description:\r\n *  封装对cookie操作的类库,并定义统一的cookie定义\r\n *  1:addCookie 添加cookie，名称不重名的前提下添加的cookie不会影响原有cookie，请参考cookie特性\r\n *  2:getCookie 通过cookie名称获取cookie值\r\n *  3:delCookie 通过cookie名称删除cookie值\r\n *  4:clearCookie 清除Cookie\r\n *  5:allCookie 读取所有保存的cookie字符串\r\n *  以上函数请注意参数\r\n *\r\n */\r\n##### 库函数\r\n\r\n```javascript\r\n  /**\r\n\t *添加cookie，名称不重名的前提下添加的cookie不会影响原有cookie，请参考cookie特性\r\n\t * @param {string} name cookie名称\r\n\t * @param {string} value cookie值\r\n\t * @param {Int32Array} hours cookie过期时间（小时），为0时不设定过期时间\r\n\t * @param {string} path cookie作用路径，可为空，默认不设置\r\n\t * @param {string} domain cookie作用域，可为空，默认不设置\r\n\t * @returns {Cookie} this 为支持链式写法，返回自身\r\n\t */\r\n  addCookie: function(name, value, hours, path, domain)\r\n```\r\n\r\n```javascript\r\n  /**\r\n\t * 通过cookie名称获取cookie值\r\n\t * @param {string} name 要获取cookie的名称\r\n\t * @returns {string} 获取的cookie值\r\n\t */\r\n  getCookie: function(name, domain = \"\", path)\r\n```\r\n```javascript\r\n  /**\r\n\t * 通过cookie名称删除cookie值\r\n\t * @param {string} name cookie名称\r\n\t * @returns {Cookie} this 为支持链式写法，返回自身\r\n\t */\r\n  delCookie: function(name, path, domain = \"\")\r\n```\r\n```javascript\r\n  /**\r\n\t * 清除Cookie\r\n\t */\r\n  clearCookie: function(path, domain)\r\n```\r\n```javascript\r\n  /**\r\n\t * 读取所有保存的cookie字符串\r\n\t * @returns {string} 返回cookie字符串\r\n\t */\r\n  allCookie: function()\r\n```\r\n\r\n##### 公开对象\r\n\r\n```javascript\r\n\r\n/***\r\n * 定义cookie键名信息\r\n */\r\nconst CookieDef = {\r\n  /**\r\n\t * 用户名键名\r\n\t */\r\n  userName: \"username\",\r\n\r\n  /**\r\n\t * 密码键名\r\n\t */\r\n  passwd: \"password\",\r\n\r\n  /**\r\n\t * token授权\r\n\t */\r\n  token: \"token\",\r\n  /**\r\n\t * 默认有效时间\r\n\t */\r\n  hours: 12,\r\n  /**\r\n\t * 默认作用路径\r\n\t */\r\n  path: \"/\",\r\n\r\n  /**\r\n\t * 默认作用域\r\n\t */\r\n  domain: \"\",\r\n};\r\n\r\n```\r\n```javascript\r\n```\r\n```javascript\r\n```\r\n```javascript\r\n```\r\n\r\n### NameSpace\r\n\r\n/***\r\n *  @author: zerostyle\r\n *  @email: zerostyle@126.com\r\n *  @date：20191024\r\n *  @version:V1.1.0\r\n *  @description:\r\n *  为了规范化前端开发，并解决越来越多的前端模块带来的自由组合、嵌入，多版本共存等问题，避免全局变量污染带来的可访问性问题，\r\n *  @example:\r\n *  注册命名空间：\r\n *  zerostyle.software.modules.user.rules=Object|Array|Function;\r\n *\r\n *  @interface:\r\n *  const namespace=\"zerostyle.software.modules.user.rules\";\r\n *  setNameSpace(string,obj);\r\n *  getNameSpace(string);\r\n */\r\n##### 库函数\r\n\r\n```javascript\r\n/**\r\n * 使用一个字符串创建一个命名空间（如：\"zerostyle.software.modules.user.rules\"），并可指定该命名空间最后一层名称空间指向的对象（如：\"zerostyle.software.modules.user.rules=obj）\r\n * @param {String} namespace 要设置的 命名空间 字符串，一般在系统内可以使用本文件声明中的常量namespace作为基础地址，以避免拼写错误或便于升级维护,如`${namespace}.你的其他名称空间`\r\n * @param {Object} obj 命名空间最后一层的空间名称指向的对象（指向的是obj对象，而非他的结构复制），该参数允许为空，若空则默认为{}对象,\r\n */\r\nfunction setNameSpace(namespace, obj)\r\n```\r\n\r\n ```javascript\r\n /**\r\n * 根据一个命名空间字符串获取该命名空间的对象，如不存在则返回null，如果存在则返回到该空间的指针引用\r\n * @param {String} namespace 要获取的命名空间字符串，一般在系统内可以使用本文件声明中的常量namespace作为基础地址，以避免拼写错误或便于升级维护,如`${namespace}.你的其他名称空间`\r\n * @param {bool} create 如果该命名空间不存在的话是否创建\r\n */\r\nfunction getNameSpace(namespace, create)\r\n```\r\n\r\n### Screen\r\n\r\n/***\r\n *  @author: zerostyle\r\n *  @email: zerostyle@126.com\r\n *  @date：20191024\r\n *  @version:V1.1.0\r\n *  @description:\r\n *  该模块开放函数在需要的地方引入即可，禁止全局引入，因为全局引入后您仍需要在每个使用的模块中单独引入\r\n *  该模块为浏览器全屏模式与正常模式开关函数，内置状态机制，初始为正常模式，有如下功能：\r\n *  1：screenSwitch 根据当前状态（如全屏）切换为另一种状态（如正常）\r\n *\r\n *  @example:\r\n *  无\r\n *\r\n *  @interface:\r\n *  screenSwitch()\r\n */\r\n \r\n ```javascript\r\n function screenSwitch()\r\n ```\r\n \r\n ### Uri\r\n \r\n /***\r\n *  @author: zerostyle\r\n *  @email: zerostyle@126.com\r\n *  @date：20191024\r\n *  @version:V1.1.0\r\n *  @description:\r\n *  该模块开放函数在需要的地方引入即可，禁止全局引入，因为全局引入后您仍需要在每个使用的模块中单独引入\r\n *  该模块处理string类型的url(非windox.location对象)，有如下功能：\r\n *  1：getJsonFromUrlParams 将入参url的参数序列化为json，\r\n *  2：setJsonToUrlParams 将入参的json对象拼入入参的url之后\r\n *  3：getParameter 从入参的url中获取名称为入参name的参数值\r\n *  4：setParameter 将入参的url中设置名称为入参arg的参数值为入参arg_val，此函数一次只能设置一个参数\r\n *\r\n *\r\n *  @example:\r\n *  无\r\n *\r\n *  @interface:\r\n *  getJsonFromUrlParams(string),\r\n *  setJsonToUrlParams(json,string),\r\n *  getParameter(string,string),\r\n *  setParameter(string,string,string),\r\n *\r\n * /\r\n \r\n #### 库函数\r\n \r\n  ```javascript\r\n/**\r\n * 从url中提取参数，并构造json对象\r\n * @param {*} url\r\n */\r\nfunction getJsonFromUrlParams(url)\r\n ```\r\n  \r\n  ```javascript\r\n/**\r\n * 将json的对象作为参数放入url，返回url；如：http://localhost/index?a=1&b=2\r\n * @param {*} jsonParams\r\n * @param {*} url\r\n */\r\nfunction setJsonToUrlParams(jsonParams, url)\r\n ```\r\n  \r\n  ```javascript\r\n/**\r\n * 从url中获取指定的参数值\r\n * @param {*} name\r\n * @param {*} url\r\n */\r\nfunction getParameter(name, url)\r\n ```\r\n  \r\n  ```javascript\r\n/**\r\n * 向url中设置指定的参数名与参数值\r\n * @param {*} arg 要设置的参数名\r\n * @param {*} arg_val 要设置的参数值\r\n * @param {*} url 指定的URL\r\n */\r\nfunction setParameter(arg, arg_val, url)\r\n ```\r\n \r\n\r\n\r\n","readmeFilename":"README.md"}