pict-section-form 1.0.27 → 1.0.29
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/debug/Harness.js +0 -2
- package/example_applications/complex_tuigrid/Complex-TuiGrid-Application.js +2 -2
- package/example_applications/complex_tuigrid/html/index.html +2 -0
- package/example_applications/complex_tuigrid/node_modules/.package-lock.json +187 -0
- package/example_applications/complex_tuigrid/node_modules/adler-32/LICENSE +14 -0
- package/example_applications/complex_tuigrid/node_modules/adler-32/README.md +139 -0
- package/example_applications/complex_tuigrid/node_modules/adler-32/adler32.js +92 -0
- package/example_applications/complex_tuigrid/node_modules/adler-32/bin/adler32.njs +87 -0
- package/example_applications/complex_tuigrid/node_modules/adler-32/package.json +42 -0
- package/example_applications/complex_tuigrid/node_modules/adler-32/types/index.d.ts +14 -0
- package/example_applications/complex_tuigrid/node_modules/adler-32/types/tsconfig.json +14 -0
- package/example_applications/complex_tuigrid/node_modules/adler-32/types/tslint.json +11 -0
- package/example_applications/complex_tuigrid/node_modules/cfb/LICENSE +201 -0
- package/example_applications/complex_tuigrid/node_modules/cfb/README.md +161 -0
- package/example_applications/complex_tuigrid/node_modules/cfb/cfb.js +1979 -0
- package/example_applications/complex_tuigrid/node_modules/cfb/node_modules/adler-32/LICENSE +201 -0
- package/example_applications/complex_tuigrid/node_modules/cfb/node_modules/adler-32/README.md +140 -0
- package/example_applications/complex_tuigrid/node_modules/cfb/node_modules/adler-32/adler32.js +92 -0
- package/example_applications/complex_tuigrid/node_modules/cfb/node_modules/adler-32/package.json +35 -0
- package/example_applications/complex_tuigrid/node_modules/cfb/node_modules/adler-32/types/index.d.ts +14 -0
- package/example_applications/complex_tuigrid/node_modules/cfb/node_modules/adler-32/types/tsconfig.json +15 -0
- package/example_applications/complex_tuigrid/node_modules/cfb/node_modules/adler-32/types/tslint.json +14 -0
- package/example_applications/complex_tuigrid/node_modules/cfb/package.json +68 -0
- package/example_applications/complex_tuigrid/node_modules/cfb/types/index.d.ts +128 -0
- package/example_applications/complex_tuigrid/node_modules/cfb/types/tsconfig.json +15 -0
- package/example_applications/complex_tuigrid/node_modules/cfb/xlscfb.flow.js +1856 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/LICENSE +201 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/README.md +350 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/10000.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/10001.js +115 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/10002.js +253 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/10003.js +183 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/10004.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/10005.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/10006.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/10007.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/10008.js +167 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/10010.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/10017.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/10021.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/10029.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/10079.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/10081.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/10082.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1010.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1026.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1047.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1132.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1140.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1141.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1142.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1143.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1144.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1145.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1146.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1147.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1148.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1149.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1250.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1251.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1252.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1253.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1254.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1255.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1256.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1257.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1258.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/1361.js +231 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20000.js +193 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20001.js +217 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20002.js +167 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20003.js +213 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20004.js +193 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20005.js +223 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20105.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20106.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20107.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20108.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20261.js +31 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20269.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20273.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20277.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20278.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20280.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20284.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20285.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20290.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20297.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20420.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20423.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20424.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20833.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20838.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20866.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20871.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20880.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20905.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20924.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20932.js +189 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20936.js +167 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/20949.js +183 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/21025.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/21027.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/21866.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/28591.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/28592.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/28593.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/28594.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/28595.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/28596.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/28597.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/28598.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/28599.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/28600.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/28601.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/28603.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/28604.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/28605.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/28606.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/29001.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/37.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/38598.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/437.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/47451.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/500.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/50220.js +395 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/50221.js +395 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/50222.js +395 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/50225.js +259 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/50227.js +257 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/51932.js +171 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/51936.js +257 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/51949.js +183 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/52936.js +7 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/54936.js +257 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/57002.js +39 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/57003.js +23 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/57004.js +7 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/57005.js +15 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/57006.js +23 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/57007.js +21 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/57008.js +17 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/57009.js +13 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/57010.js +15 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/57011.js +17 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/620.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/708.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/720.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/737.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/775.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/808.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/850.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/852.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/855.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/857.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/858.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/860.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/861.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/862.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/863.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/864.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/865.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/866.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/869.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/870.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/872.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/874.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/875.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/895.js +2 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/932.js +95 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/936.js +257 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/949.js +253 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/bits/950.js +179 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/cptable.js +4651 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/cputils.js +528 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/package.json +72 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/types/index.d.ts +39 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/types/tsconfig.json +15 -0
- package/example_applications/complex_tuigrid/node_modules/codepage/types/tslint.json +11 -0
- package/example_applications/complex_tuigrid/node_modules/crc-32/LICENSE +201 -0
- package/example_applications/complex_tuigrid/node_modules/crc-32/README.md +200 -0
- package/example_applications/complex_tuigrid/node_modules/crc-32/bin/crc32.njs +105 -0
- package/example_applications/complex_tuigrid/node_modules/crc-32/crc32.js +115 -0
- package/example_applications/complex_tuigrid/node_modules/crc-32/crc32c.js +115 -0
- package/example_applications/complex_tuigrid/node_modules/crc-32/package.json +43 -0
- package/example_applications/complex_tuigrid/node_modules/crc-32/types/index.d.ts +14 -0
- package/example_applications/complex_tuigrid/node_modules/crc-32/types/tsconfig.json +14 -0
- package/example_applications/complex_tuigrid/node_modules/crc-32/types/tslint.json +11 -0
- package/example_applications/complex_tuigrid/node_modules/dompurify/LICENSE +568 -0
- package/example_applications/complex_tuigrid/node_modules/dompurify/README.md +420 -0
- package/example_applications/complex_tuigrid/node_modules/dompurify/package.json +128 -0
- package/example_applications/complex_tuigrid/node_modules/exit-on-epipe/LICENSE +13 -0
- package/example_applications/complex_tuigrid/node_modules/exit-on-epipe/README.md +104 -0
- package/example_applications/complex_tuigrid/node_modules/exit-on-epipe/exit-on-epipe.js +20 -0
- package/example_applications/complex_tuigrid/node_modules/exit-on-epipe/package.json +21 -0
- package/example_applications/complex_tuigrid/node_modules/frac/LICENSE +13 -0
- package/example_applications/complex_tuigrid/node_modules/frac/README.md +128 -0
- package/example_applications/complex_tuigrid/node_modules/frac/frac.js +42 -0
- package/example_applications/complex_tuigrid/node_modules/frac/package.json +36 -0
- package/example_applications/complex_tuigrid/node_modules/frac/types/index.d.ts +9 -0
- package/example_applications/complex_tuigrid/node_modules/frac/types/tsconfig.json +14 -0
- package/example_applications/complex_tuigrid/node_modules/frac/types/tslint.json +11 -0
- package/example_applications/complex_tuigrid/node_modules/printj/LICENSE +14 -0
- package/example_applications/complex_tuigrid/node_modules/printj/README.md +1003 -0
- package/example_applications/complex_tuigrid/node_modules/printj/bin/printj.njs +65 -0
- package/example_applications/complex_tuigrid/node_modules/printj/package.json +60 -0
- package/example_applications/complex_tuigrid/node_modules/printj/printj.js +605 -0
- package/example_applications/complex_tuigrid/node_modules/printj/types/index.d.ts +11 -0
- package/example_applications/complex_tuigrid/node_modules/printj/types/tsconfig.json +14 -0
- package/example_applications/complex_tuigrid/node_modules/printj/types/tslint.json +11 -0
- package/example_applications/complex_tuigrid/node_modules/ssf/LICENSE +201 -0
- package/example_applications/complex_tuigrid/node_modules/ssf/README.md +119 -0
- package/example_applications/complex_tuigrid/node_modules/ssf/package.json +57 -0
- package/example_applications/complex_tuigrid/node_modules/ssf/ssf.flow.js +980 -0
- package/example_applications/complex_tuigrid/node_modules/ssf/ssf.js +966 -0
- package/example_applications/complex_tuigrid/node_modules/ssf/types/index.d.ts +56 -0
- package/example_applications/complex_tuigrid/node_modules/ssf/types/tsconfig.json +15 -0
- package/example_applications/complex_tuigrid/node_modules/tui-date-picker/LICENSE +21 -0
- package/example_applications/complex_tuigrid/node_modules/tui-date-picker/README.md +274 -0
- package/example_applications/complex_tuigrid/node_modules/tui-date-picker/index.d.ts +224 -0
- package/example_applications/complex_tuigrid/node_modules/tui-date-picker/package.json +62 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/README.md +160 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/package.json +90 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/dataSource/index.d.ts +116 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/dispatch/index.d.ts +46 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/editor/index.d.ts +63 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/event/index.d.ts +67 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/index.d.ts +349 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/options.d.ts +509 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/renderer/index.d.ts +55 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/store/column.d.ts +211 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/store/columnCoords.d.ts +8 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/store/contextMenu.d.ts +40 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/store/data.d.ts +146 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/store/dimension.d.ts +28 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/store/export.d.ts +16 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/store/filterLayerState.d.ts +28 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/store/focus.d.ts +35 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/store/index.d.ts +32 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/store/renderState.d.ts +9 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/store/rowCoords.d.ts +5 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/store/selection.d.ts +46 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/store/summary.d.ts +37 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/store/viewport.d.ts +18 -0
- package/example_applications/complex_tuigrid/node_modules/tui-grid/types/tui-pagination/index.d.ts +21 -0
- package/example_applications/complex_tuigrid/node_modules/tui-pagination/LICENSE +21 -0
- package/example_applications/complex_tuigrid/node_modules/tui-pagination/README.md +253 -0
- package/example_applications/complex_tuigrid/node_modules/tui-pagination/package.json +52 -0
- package/example_applications/complex_tuigrid/node_modules/tui-time-picker/LICENSE +21 -0
- package/example_applications/complex_tuigrid/node_modules/tui-time-picker/README.md +258 -0
- package/example_applications/complex_tuigrid/node_modules/tui-time-picker/package.json +53 -0
- package/example_applications/complex_tuigrid/node_modules/wmf/LICENSE +201 -0
- package/example_applications/complex_tuigrid/node_modules/wmf/README.md +92 -0
- package/example_applications/complex_tuigrid/node_modules/wmf/package.json +68 -0
- package/example_applications/complex_tuigrid/node_modules/word/CONTRIBUTING.md +61 -0
- package/example_applications/complex_tuigrid/node_modules/word/LICENSE +201 -0
- package/example_applications/complex_tuigrid/node_modules/word/README.md +2 -0
- package/example_applications/complex_tuigrid/node_modules/word/package.json +29 -0
- package/example_applications/complex_tuigrid/node_modules/word/word.js +1 -0
- package/example_applications/complex_tuigrid/node_modules/xlsx/CHANGELOG.md +235 -0
- package/example_applications/complex_tuigrid/node_modules/xlsx/LICENSE +201 -0
- package/example_applications/complex_tuigrid/node_modules/xlsx/README.md +3056 -0
- package/example_applications/complex_tuigrid/node_modules/xlsx/bin/xlsx.njs +302 -0
- package/example_applications/complex_tuigrid/node_modules/xlsx/bower.json +22 -0
- package/example_applications/complex_tuigrid/node_modules/xlsx/formats.png +0 -0
- package/example_applications/complex_tuigrid/node_modules/xlsx/jszip.js +9000 -0
- package/example_applications/complex_tuigrid/node_modules/xlsx/legend.png +0 -0
- package/example_applications/complex_tuigrid/node_modules/xlsx/package.json +99 -0
- package/example_applications/complex_tuigrid/node_modules/xlsx/types/index.d.ts +853 -0
- package/example_applications/complex_tuigrid/node_modules/xlsx/types/tsconfig.json +15 -0
- package/example_applications/complex_tuigrid/node_modules/xlsx/xlsx.esm.mjs +22612 -0
- package/example_applications/complex_tuigrid/node_modules/xlsx/xlsx.js +22693 -0
- package/example_applications/complex_tuigrid/node_modules/xlsx/xlsx.mini.js +10709 -0
- package/example_applications/complex_tuigrid/node_modules/xlsx/xlsx.mjs +22612 -0
- package/example_applications/complex_tuigrid/node_modules/xlsx/xlsxworker.js +15 -0
- package/example_applications/complex_tuigrid/package.json +8 -2
- package/package.json +5 -5
- package/source/providers/layouts/Pict-Layout-TuiGrid/Pict-Section-TuiGrid.js +37 -0
- package/source/providers/layouts/Pict-Layout-TuiGrid.js +130 -10
- package/source/views/Pict-View-DynamicForm-DefaultConfiguration.json +2 -0
- package/source/views/Pict-View-DynamicForm.js +73 -1
- package/types/Pict-Section-Form.d.ts +1 -0
- package/types/providers/layouts/Pict-Layout-TuiGrid/Pict-Section-TuiGrid.d.ts +9 -0
- package/types/providers/layouts/Pict-Layout-TuiGrid/Pict-Section-TuiGrid.d.ts.map +1 -0
- package/types/providers/layouts/Pict-Layout-TuiGrid.d.ts +4 -1
- package/types/providers/layouts/Pict-Layout-TuiGrid.d.ts.map +1 -1
- package/types/views/Pict-View-DynamicForm.d.ts +1 -0
- package/types/views/Pict-View-DynamicForm.d.ts.map +1 -1
package/debug/Harness.js
CHANGED
|
@@ -318,7 +318,7 @@ module.exports.default_configuration.pict_configuration = {
|
|
|
318
318
|
Name: "Calories",
|
|
319
319
|
Hash: "Calories",
|
|
320
320
|
DataType: "Number",
|
|
321
|
-
PictForm: { Section: "FruitGrid", Group: "FruitGrid"},
|
|
321
|
+
PictForm: { Section: "FruitGrid", Group: "FruitGrid", DecimalPrecision: 2},
|
|
322
322
|
},
|
|
323
323
|
"nutritions.fat": {
|
|
324
324
|
Name: "Fat",
|
|
@@ -342,7 +342,7 @@ module.exports.default_configuration.pict_configuration = {
|
|
|
342
342
|
Name: "PercentTotalFat",
|
|
343
343
|
Hash: "PercentTotalFat",
|
|
344
344
|
DataType: "Number",
|
|
345
|
-
PictForm: { Section: "FruitGrid", Group: "FruitGrid" },
|
|
345
|
+
PictForm: { Section: "FruitGrid", Group: "FruitGrid", DecimalPrecision: 5 },
|
|
346
346
|
},
|
|
347
347
|
},
|
|
348
348
|
},
|
|
@@ -5,12 +5,14 @@
|
|
|
5
5
|
<style id="PICT-CSS"></style>
|
|
6
6
|
|
|
7
7
|
<link href="tui-grid.css" rel="stylesheet">
|
|
8
|
+
<link href="tui-date-picker.css" rel="stylesheet">
|
|
8
9
|
|
|
9
10
|
<script src="./pict.min.js" type="text/javascript"></script>
|
|
10
11
|
<script type="text/javascript">Pict.safeOnDocumentReady(() => { Pict.safeLoadPictApplication(ComplexTuigridApplication, 0)});</script>
|
|
11
12
|
</head>
|
|
12
13
|
<body>
|
|
13
14
|
<div id="Pict-Form-Container"></div>
|
|
15
|
+
<script src="./tui-date-picker.js" type="text/javascript"></script>
|
|
14
16
|
<script src="./tui-grid.js" type="text/javascript"></script>
|
|
15
17
|
<script src="./complex_tuigrid_application.min.js" type="text/javascript"></script>
|
|
16
18
|
</body>
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "complex_tuigrid_application",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"lockfileVersion": 3,
|
|
5
|
+
"requires": true,
|
|
6
|
+
"packages": {
|
|
7
|
+
"node_modules/adler-32": {
|
|
8
|
+
"version": "1.2.0",
|
|
9
|
+
"resolved": "https://registry.npmjs.org/adler-32/-/adler-32-1.2.0.tgz",
|
|
10
|
+
"integrity": "sha512-/vUqU/UY4MVeFsg+SsK6c+/05RZXIHZMGJA+PX5JyWI0ZRcBpupnRuPLU/NXXoFwMYCPCoxIfElM2eS+DUXCqQ==",
|
|
11
|
+
"dev": true,
|
|
12
|
+
"dependencies": {
|
|
13
|
+
"exit-on-epipe": "~1.0.1",
|
|
14
|
+
"printj": "~1.1.0"
|
|
15
|
+
},
|
|
16
|
+
"bin": {
|
|
17
|
+
"adler32": "bin/adler32.njs"
|
|
18
|
+
},
|
|
19
|
+
"engines": {
|
|
20
|
+
"node": ">=0.8"
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
"node_modules/cfb": {
|
|
24
|
+
"version": "1.2.2",
|
|
25
|
+
"resolved": "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz",
|
|
26
|
+
"integrity": "sha512-KfdUZsSOw19/ObEWasvBP/Ac4reZvAGauZhs6S/gqNhXhI7cKwvlH7ulj+dOEYnca4bm4SGo8C1bTAQvnTjgQA==",
|
|
27
|
+
"dev": true,
|
|
28
|
+
"dependencies": {
|
|
29
|
+
"adler-32": "~1.3.0",
|
|
30
|
+
"crc-32": "~1.2.0"
|
|
31
|
+
},
|
|
32
|
+
"engines": {
|
|
33
|
+
"node": ">=0.8"
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
"node_modules/cfb/node_modules/adler-32": {
|
|
37
|
+
"version": "1.3.1",
|
|
38
|
+
"resolved": "https://registry.npmjs.org/adler-32/-/adler-32-1.3.1.tgz",
|
|
39
|
+
"integrity": "sha512-ynZ4w/nUUv5rrsR8UUGoe1VC9hZj6V5hU9Qw1HlMDJGEJw5S7TfTErWTjMys6M7vr0YWcPqs3qAr4ss0nDfP+A==",
|
|
40
|
+
"dev": true,
|
|
41
|
+
"engines": {
|
|
42
|
+
"node": ">=0.8"
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
"node_modules/codepage": {
|
|
46
|
+
"version": "1.15.0",
|
|
47
|
+
"resolved": "https://registry.npmjs.org/codepage/-/codepage-1.15.0.tgz",
|
|
48
|
+
"integrity": "sha512-3g6NUTPd/YtuuGrhMnOMRjFc+LJw/bnMp3+0r/Wcz3IXUuCosKRJvMphm5+Q+bvTVGcJJuRvVLuYba+WojaFaA==",
|
|
49
|
+
"dev": true,
|
|
50
|
+
"engines": {
|
|
51
|
+
"node": ">=0.8"
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
"node_modules/crc-32": {
|
|
55
|
+
"version": "1.2.2",
|
|
56
|
+
"resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz",
|
|
57
|
+
"integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==",
|
|
58
|
+
"dev": true,
|
|
59
|
+
"bin": {
|
|
60
|
+
"crc32": "bin/crc32.njs"
|
|
61
|
+
},
|
|
62
|
+
"engines": {
|
|
63
|
+
"node": ">=0.8"
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
"node_modules/dompurify": {
|
|
67
|
+
"version": "2.5.6",
|
|
68
|
+
"resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.5.6.tgz",
|
|
69
|
+
"integrity": "sha512-zUTaUBO8pY4+iJMPE1B9XlO2tXVYIcEA4SNGtvDELzTSCQO7RzH+j7S180BmhmJId78lqGU2z19vgVx2Sxs/PQ==",
|
|
70
|
+
"dev": true
|
|
71
|
+
},
|
|
72
|
+
"node_modules/exit-on-epipe": {
|
|
73
|
+
"version": "1.0.1",
|
|
74
|
+
"resolved": "https://registry.npmjs.org/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz",
|
|
75
|
+
"integrity": "sha512-h2z5mrROTxce56S+pnvAV890uu7ls7f1kEvVGJbw1OlFH3/mlJ5bkXu0KRyW94v37zzHPiUd55iLn3DA7TjWpw==",
|
|
76
|
+
"dev": true,
|
|
77
|
+
"engines": {
|
|
78
|
+
"node": ">=0.8"
|
|
79
|
+
}
|
|
80
|
+
},
|
|
81
|
+
"node_modules/frac": {
|
|
82
|
+
"version": "1.1.2",
|
|
83
|
+
"resolved": "https://registry.npmjs.org/frac/-/frac-1.1.2.tgz",
|
|
84
|
+
"integrity": "sha512-w/XBfkibaTl3YDqASwfDUqkna4Z2p9cFSr1aHDt0WoMTECnRfBOv2WArlZILlqgWlmdIlALXGpM2AOhEk5W3IA==",
|
|
85
|
+
"dev": true,
|
|
86
|
+
"engines": {
|
|
87
|
+
"node": ">=0.8"
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
"node_modules/printj": {
|
|
91
|
+
"version": "1.1.2",
|
|
92
|
+
"resolved": "https://registry.npmjs.org/printj/-/printj-1.1.2.tgz",
|
|
93
|
+
"integrity": "sha512-zA2SmoLaxZyArQTOPj5LXecR+RagfPSU5Kw1qP+jkWeNlrq+eJZyY2oS68SU1Z/7/myXM4lo9716laOFAVStCQ==",
|
|
94
|
+
"dev": true,
|
|
95
|
+
"bin": {
|
|
96
|
+
"printj": "bin/printj.njs"
|
|
97
|
+
},
|
|
98
|
+
"engines": {
|
|
99
|
+
"node": ">=0.8"
|
|
100
|
+
}
|
|
101
|
+
},
|
|
102
|
+
"node_modules/ssf": {
|
|
103
|
+
"version": "0.11.2",
|
|
104
|
+
"resolved": "https://registry.npmjs.org/ssf/-/ssf-0.11.2.tgz",
|
|
105
|
+
"integrity": "sha512-+idbmIXoYET47hH+d7dfm2epdOMUDjqcB4648sTZ+t2JwoyBFL/insLfB/racrDmsKB3diwsDA696pZMieAC5g==",
|
|
106
|
+
"dev": true,
|
|
107
|
+
"dependencies": {
|
|
108
|
+
"frac": "~1.1.2"
|
|
109
|
+
},
|
|
110
|
+
"engines": {
|
|
111
|
+
"node": ">=0.8"
|
|
112
|
+
}
|
|
113
|
+
},
|
|
114
|
+
"node_modules/tui-date-picker": {
|
|
115
|
+
"version": "4.3.3",
|
|
116
|
+
"resolved": "https://registry.npmjs.org/tui-date-picker/-/tui-date-picker-4.3.3.tgz",
|
|
117
|
+
"integrity": "sha512-/2YoLnj5c1e+Ag1ZZYOgzEs2o0v7Ol7c5UAnBj438zGlkwkMxyH0HwP2pVqqIYX05WE7K0+6nTWVMybS8otBgw==",
|
|
118
|
+
"dev": true,
|
|
119
|
+
"dependencies": {
|
|
120
|
+
"tui-time-picker": "^2.1.6"
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
"node_modules/tui-grid": {
|
|
124
|
+
"version": "4.21.22",
|
|
125
|
+
"resolved": "https://registry.npmjs.org/tui-grid/-/tui-grid-4.21.22.tgz",
|
|
126
|
+
"integrity": "sha512-RxkFcveR2tWf3QrtuW9/zejXjeXL3SdrQPK89DbrrM6N7TlyUcb5HAf0U3MBn/hYT1p5kt5wyOwHPCQJuIBrsA==",
|
|
127
|
+
"dev": true,
|
|
128
|
+
"dependencies": {
|
|
129
|
+
"dompurify": "^2.3.9",
|
|
130
|
+
"tui-date-picker": "^4.1.0",
|
|
131
|
+
"tui-pagination": "^3.4.0",
|
|
132
|
+
"xlsx": "^0.17.1"
|
|
133
|
+
}
|
|
134
|
+
},
|
|
135
|
+
"node_modules/tui-pagination": {
|
|
136
|
+
"version": "3.4.1",
|
|
137
|
+
"resolved": "https://registry.npmjs.org/tui-pagination/-/tui-pagination-3.4.1.tgz",
|
|
138
|
+
"integrity": "sha512-W09L0wPMSFstthBhQjcLNDnN1yuCEDn/tIXmaKdTpNFYa11eNrNo/rOwXzrugXvP2arZ60KmVhkFzoAOEuV0Sg==",
|
|
139
|
+
"dev": true
|
|
140
|
+
},
|
|
141
|
+
"node_modules/tui-time-picker": {
|
|
142
|
+
"version": "2.1.6",
|
|
143
|
+
"resolved": "https://registry.npmjs.org/tui-time-picker/-/tui-time-picker-2.1.6.tgz",
|
|
144
|
+
"integrity": "sha512-4Jmo3wjGS+Ii4/qQgt5DaFEohHpB3U6BzWeTODVVFHD9sx3NOsbomY9K0xMobSLODi+tQEH7wfOtNU0IJmcQ6Q==",
|
|
145
|
+
"dev": true
|
|
146
|
+
},
|
|
147
|
+
"node_modules/wmf": {
|
|
148
|
+
"version": "1.0.2",
|
|
149
|
+
"resolved": "https://registry.npmjs.org/wmf/-/wmf-1.0.2.tgz",
|
|
150
|
+
"integrity": "sha512-/p9K7bEh0Dj6WbXg4JG0xvLQmIadrner1bi45VMJTfnbVHsc7yIajZyoSoK60/dtVBs12Fm6WkUI5/3WAVsNMw==",
|
|
151
|
+
"dev": true,
|
|
152
|
+
"engines": {
|
|
153
|
+
"node": ">=0.8"
|
|
154
|
+
}
|
|
155
|
+
},
|
|
156
|
+
"node_modules/word": {
|
|
157
|
+
"version": "0.3.0",
|
|
158
|
+
"resolved": "https://registry.npmjs.org/word/-/word-0.3.0.tgz",
|
|
159
|
+
"integrity": "sha512-OELeY0Q61OXpdUfTp+oweA/vtLVg5VDOXh+3he3PNzLGG/y0oylSOC1xRVj0+l4vQ3tj/bB1HVHv1ocXkQceFA==",
|
|
160
|
+
"dev": true,
|
|
161
|
+
"engines": {
|
|
162
|
+
"node": ">=0.8"
|
|
163
|
+
}
|
|
164
|
+
},
|
|
165
|
+
"node_modules/xlsx": {
|
|
166
|
+
"version": "0.17.5",
|
|
167
|
+
"resolved": "https://registry.npmjs.org/xlsx/-/xlsx-0.17.5.tgz",
|
|
168
|
+
"integrity": "sha512-lXNU0TuYsvElzvtI6O7WIVb9Zar1XYw7Xb3VAx2wn8N/n0whBYrCnHMxtFyIiUU1Wjf09WzmLALDfBO5PqTb1g==",
|
|
169
|
+
"dev": true,
|
|
170
|
+
"dependencies": {
|
|
171
|
+
"adler-32": "~1.2.0",
|
|
172
|
+
"cfb": "^1.1.4",
|
|
173
|
+
"codepage": "~1.15.0",
|
|
174
|
+
"crc-32": "~1.2.0",
|
|
175
|
+
"ssf": "~0.11.2",
|
|
176
|
+
"wmf": "~1.0.1",
|
|
177
|
+
"word": "~0.3.0"
|
|
178
|
+
},
|
|
179
|
+
"bin": {
|
|
180
|
+
"xlsx": "bin/xlsx.njs"
|
|
181
|
+
},
|
|
182
|
+
"engines": {
|
|
183
|
+
"node": ">=0.8"
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
Copyright (C) 2014-present SheetJS
|
|
2
|
+
|
|
3
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
you may not use this file except in compliance with the License.
|
|
5
|
+
You may obtain a copy of the License at
|
|
6
|
+
|
|
7
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
|
|
9
|
+
Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
See the License for the specific language governing permissions and
|
|
13
|
+
limitations under the License.
|
|
14
|
+
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
# adler32
|
|
2
|
+
|
|
3
|
+
Signed ADLER-32 algorithm implementation in JS (for the browser and nodejs).
|
|
4
|
+
Emphasis on correctness, performance, and IE6+ support.
|
|
5
|
+
|
|
6
|
+
## Installation
|
|
7
|
+
|
|
8
|
+
With [npm](https://www.npmjs.org/package/adler-32):
|
|
9
|
+
|
|
10
|
+
```bash
|
|
11
|
+
$ npm install adler-32
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
In the browser:
|
|
15
|
+
|
|
16
|
+
```html
|
|
17
|
+
<script src="adler32.js"></script>
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
The browser exposes a variable `ADLER32`.
|
|
21
|
+
|
|
22
|
+
When installed globally, npm installs a script `adler32` that computes the
|
|
23
|
+
checksum for a specified file or standard input.
|
|
24
|
+
|
|
25
|
+
The script will manipulate `module.exports` if available . This is not always
|
|
26
|
+
desirable. To prevent the behavior, define `DO_NOT_EXPORT_ADLER`.
|
|
27
|
+
|
|
28
|
+
## Usage
|
|
29
|
+
|
|
30
|
+
In all cases, the relevant function takes an argument representing data and an
|
|
31
|
+
optional second argument representing the starting "seed" (for running hash).
|
|
32
|
+
|
|
33
|
+
The return value is a signed 32-bit integer.
|
|
34
|
+
|
|
35
|
+
- `ADLER32.buf(byte array or buffer[, seed])` assumes the argument is a sequence
|
|
36
|
+
of 8-bit unsigned integers (nodejs `Buffer`, `Uint8Array` or array of bytes).
|
|
37
|
+
|
|
38
|
+
- `ADLER32.bstr(binary string[, seed])` assumes the argument is a binary string
|
|
39
|
+
where byte `i` is the low byte of the UCS-2 char: `str.charCodeAt(i) & 0xFF`
|
|
40
|
+
|
|
41
|
+
- `ADLER32.str(string)` assumes the argument is a standard JS string and
|
|
42
|
+
calculates the hash of the UTF-8 encoding.
|
|
43
|
+
|
|
44
|
+
For example:
|
|
45
|
+
|
|
46
|
+
```js
|
|
47
|
+
// var ADLER32 = require('adler-32'); // uncomment if in node
|
|
48
|
+
ADLER32.str("SheetJS") // 176947863
|
|
49
|
+
ADLER32.bstr("SheetJS") // 176947863
|
|
50
|
+
ADLER32.buf([ 83, 104, 101, 101, 116, 74, 83 ]) // 176947863
|
|
51
|
+
|
|
52
|
+
adler32 = ADLER32.buf([83, 104]) // 17825980 "Sh"
|
|
53
|
+
adler32 = ADLER32.str("eet", adler32) // 95486458 "Sheet"
|
|
54
|
+
ADLER32.bstr("JS", adler32) // 176947863 "SheetJS"
|
|
55
|
+
|
|
56
|
+
[ADLER32.str("\u2603"), ADLER32.str("\u0003")] // [ 73138686, 262148 ]
|
|
57
|
+
[ADLER32.bstr("\u2603"), ADLER32.bstr("\u0003")] // [ 262148, 262148 ]
|
|
58
|
+
[ADLER32.buf([0x2603]), ADLER32.buf([0x0003])] // [ 262148, 262148 ]
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
## Testing
|
|
62
|
+
|
|
63
|
+
`make test` will run the nodejs-based test.
|
|
64
|
+
|
|
65
|
+
To run the in-browser tests, run a local server and go to the `ctest` directory.
|
|
66
|
+
`make ctestserv` will start a python `SimpleHTTPServer` server on port 8000.
|
|
67
|
+
|
|
68
|
+
To update the browser artifacts, run `make ctest`.
|
|
69
|
+
|
|
70
|
+
To generate the bits file, use the `adler32` function from python `zlib`:
|
|
71
|
+
|
|
72
|
+
```python
|
|
73
|
+
>>> from zlib import adler32
|
|
74
|
+
>>> x="foo bar baz٪☃🍣"
|
|
75
|
+
>>> adler32(x)
|
|
76
|
+
1543572022
|
|
77
|
+
>>> adler32(x+x)
|
|
78
|
+
-2076896149
|
|
79
|
+
>>> adler32(x+x+x)
|
|
80
|
+
2023497376
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
The included `adler32.njs` script can process files or standard input:
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
$ echo "this is a test" > t.txt
|
|
87
|
+
$ bin/adler32.njs t.txt
|
|
88
|
+
726861088
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
For comparison, the included `adler32.py` script uses python `zlib`:
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
$ bin/adler32.py t.txt
|
|
95
|
+
726861088
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
## Performance
|
|
99
|
+
|
|
100
|
+
`make perf` will run algorithmic performance tests (which should justify certain
|
|
101
|
+
decisions in the code).
|
|
102
|
+
|
|
103
|
+
Bit twiddling is much faster than taking the mod in Safari and Firefox browsers.
|
|
104
|
+
Instead of taking the literal mod 65521, it is faster to keep it in the integers
|
|
105
|
+
by bit-shifting: `65536 ~ 15 mod 65521` so for nonnegative integer `a`:
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
a = (a >>> 16) * 65536 + (a & 65535) [equality]
|
|
109
|
+
a ~ (a >>> 16) * 15 + (a & 65535) mod 65521
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
The mod is taken at the very end, since the intermediate result may exceed 65521
|
|
113
|
+
|
|
114
|
+
## Magic Number
|
|
115
|
+
|
|
116
|
+
The magic numbers were chosen so as to not overflow a 31-bit integer:
|
|
117
|
+
|
|
118
|
+
```mathematica
|
|
119
|
+
F[n_] := Reduce[x*(x + 1)*n/2 + (x + 1)*(65521) < (2^31 - 1) && x > 0, x, Integers]
|
|
120
|
+
F[255] (* bstr: x \[Element] Integers && 1 <= x <= 3854 *)
|
|
121
|
+
F[127] (* ascii: x \[Element] Integers && 1 <= x <= 5321 *)
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
Subtract up to 4 elements for the Unicode case.
|
|
125
|
+
|
|
126
|
+
## License
|
|
127
|
+
|
|
128
|
+
Please consult the attached LICENSE file for details. All rights not explicitly
|
|
129
|
+
granted by the Apache 2.0 license are reserved by the Original Author.
|
|
130
|
+
|
|
131
|
+
## Badges
|
|
132
|
+
|
|
133
|
+
[](https://saucelabs.com/u/adler32)
|
|
134
|
+
|
|
135
|
+
[](https://travis-ci.org/SheetJS/js-adler32)
|
|
136
|
+
|
|
137
|
+
[](https://coveralls.io/r/SheetJS/js-adler32?branch=master)
|
|
138
|
+
|
|
139
|
+
[](https://github.com/SheetJS/js-adler32)
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/* adler32.js (C) 2014-present SheetJS -- http://sheetjs.com */
|
|
2
|
+
/* vim: set ts=2: */
|
|
3
|
+
/*exported ADLER32 */
|
|
4
|
+
var ADLER32;
|
|
5
|
+
(function (factory) {
|
|
6
|
+
/*jshint ignore:start */
|
|
7
|
+
/*eslint-disable */
|
|
8
|
+
if(typeof DO_NOT_EXPORT_ADLER === 'undefined') {
|
|
9
|
+
if('object' === typeof exports) {
|
|
10
|
+
factory(exports);
|
|
11
|
+
} else if ('function' === typeof define && define.amd) {
|
|
12
|
+
define(function () {
|
|
13
|
+
var module = {};
|
|
14
|
+
factory(module);
|
|
15
|
+
return module;
|
|
16
|
+
});
|
|
17
|
+
} else {
|
|
18
|
+
factory(ADLER32 = {});
|
|
19
|
+
}
|
|
20
|
+
} else {
|
|
21
|
+
factory(ADLER32 = {});
|
|
22
|
+
}
|
|
23
|
+
/*eslint-enable */
|
|
24
|
+
/*jshint ignore:end */
|
|
25
|
+
}(function(ADLER32) {
|
|
26
|
+
ADLER32.version = '1.2.0';
|
|
27
|
+
function adler32_bstr(bstr, seed) {
|
|
28
|
+
var a = 1, b = 0, L = bstr.length, M = 0;
|
|
29
|
+
if(typeof seed === 'number') { a = seed & 0xFFFF; b = seed >>> 16; }
|
|
30
|
+
for(var i = 0; i < L;) {
|
|
31
|
+
M = Math.min(L-i, 3850)+i;
|
|
32
|
+
for(;i<M;i++) {
|
|
33
|
+
a += bstr.charCodeAt(i)&0xFF;
|
|
34
|
+
b += a;
|
|
35
|
+
}
|
|
36
|
+
a = (15*(a>>>16)+(a&65535));
|
|
37
|
+
b = (15*(b>>>16)+(b&65535));
|
|
38
|
+
}
|
|
39
|
+
return ((b%65521) << 16) | (a%65521);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
function adler32_buf(buf, seed) {
|
|
43
|
+
var a = 1, b = 0, L = buf.length, M = 0;
|
|
44
|
+
if(typeof seed === 'number') { a = seed & 0xFFFF; b = (seed >>> 16) & 0xFFFF; }
|
|
45
|
+
for(var i = 0; i < L;) {
|
|
46
|
+
M = Math.min(L-i, 3850)+i;
|
|
47
|
+
for(;i<M;i++) {
|
|
48
|
+
a += buf[i]&0xFF;
|
|
49
|
+
b += a;
|
|
50
|
+
}
|
|
51
|
+
a = (15*(a>>>16)+(a&65535));
|
|
52
|
+
b = (15*(b>>>16)+(b&65535));
|
|
53
|
+
}
|
|
54
|
+
return ((b%65521) << 16) | (a%65521);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
function adler32_str(str, seed) {
|
|
58
|
+
var a = 1, b = 0, L = str.length, M = 0, c = 0, d = 0;
|
|
59
|
+
if(typeof seed === 'number') { a = seed & 0xFFFF; b = seed >>> 16; }
|
|
60
|
+
for(var i = 0; i < L;) {
|
|
61
|
+
M = Math.min(L-i, 3850);
|
|
62
|
+
while(M>0) {
|
|
63
|
+
c = str.charCodeAt(i++);
|
|
64
|
+
if(c < 0x80) { a += c; }
|
|
65
|
+
else if(c < 0x800) {
|
|
66
|
+
a += 192|((c>>6)&31); b += a; --M;
|
|
67
|
+
a += 128|(c&63);
|
|
68
|
+
} else if(c >= 0xD800 && c < 0xE000) {
|
|
69
|
+
c = (c&1023)+64; d = str.charCodeAt(i++) & 1023;
|
|
70
|
+
a += 240|((c>>8)&7); b += a; --M;
|
|
71
|
+
a += 128|((c>>2)&63); b += a; --M;
|
|
72
|
+
a += 128|((d>>6)&15)|((c&3)<<4); b += a; --M;
|
|
73
|
+
a += 128|(d&63);
|
|
74
|
+
} else {
|
|
75
|
+
a += 224|((c>>12)&15); b += a; --M;
|
|
76
|
+
a += 128|((c>>6)&63); b += a; --M;
|
|
77
|
+
a += 128|(c&63);
|
|
78
|
+
}
|
|
79
|
+
b += a; --M;
|
|
80
|
+
}
|
|
81
|
+
a = (15*(a>>>16)+(a&65535));
|
|
82
|
+
b = (15*(b>>>16)+(b&65535));
|
|
83
|
+
}
|
|
84
|
+
return ((b%65521) << 16) | (a%65521);
|
|
85
|
+
}
|
|
86
|
+
// $FlowIgnore
|
|
87
|
+
ADLER32.bstr = adler32_bstr;
|
|
88
|
+
// $FlowIgnore
|
|
89
|
+
ADLER32.buf = adler32_buf;
|
|
90
|
+
// $FlowIgnore
|
|
91
|
+
ADLER32.str = adler32_str;
|
|
92
|
+
}));
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/* adler32.js (C) 2014-present SheetJS -- http://sheetjs.com */
|
|
3
|
+
/* eslint-env node */
|
|
4
|
+
/* vim: set ts=2 ft=javascript: */
|
|
5
|
+
/*jshint node:true */
|
|
6
|
+
|
|
7
|
+
var X/*:ADLER32Module*/;
|
|
8
|
+
try { X = require('../'); } catch(e) { X = require('adler-32'); }
|
|
9
|
+
|
|
10
|
+
function help()/*:number*/ {
|
|
11
|
+
[
|
|
12
|
+
"usage: adler32 [options] [filename]",
|
|
13
|
+
"",
|
|
14
|
+
"Options:",
|
|
15
|
+
" -h, --help output usage information",
|
|
16
|
+
" -V, --version output the version number",
|
|
17
|
+
" -S, --seed=<n> use integer seed as starting value (default 1)",
|
|
18
|
+
" -H, --hex-seed=<h> use hex seed as starting value (default 1)",
|
|
19
|
+
" -d, --signed print result with format `%d` (default)",
|
|
20
|
+
" -u, --unsigned print result with format `%u`",
|
|
21
|
+
" -x, --hex print result with format `%0.8x`",
|
|
22
|
+
" -X, --HEX print result with format `%0.8X`",
|
|
23
|
+
" -F, --format=<s> use specified printf format",
|
|
24
|
+
"",
|
|
25
|
+
"Set filename = '-' or pipe data into adler32 to read from stdin",
|
|
26
|
+
"Default output mode is signed (-d)",
|
|
27
|
+
""
|
|
28
|
+
].forEach(function(l) { console.log(l); });
|
|
29
|
+
return 0;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
function version()/*:number*/ { console.log(X.version); return 0; }
|
|
33
|
+
|
|
34
|
+
var fs = require('fs');
|
|
35
|
+
require('exit-on-epipe');
|
|
36
|
+
|
|
37
|
+
function die(msg/*:string*/, ec/*:?number*/)/*:void*/ { console.error(msg); process.exit(ec || 0); }
|
|
38
|
+
|
|
39
|
+
var args/*:Array<string>*/ = process.argv.slice(2);
|
|
40
|
+
var filename/*:string*/ = "";
|
|
41
|
+
var fmt/*:string*/ = "";
|
|
42
|
+
var seed = 1, r = 10;
|
|
43
|
+
|
|
44
|
+
for(var i = 0; i < args.length; ++i) {
|
|
45
|
+
var arg = args[i];
|
|
46
|
+
if(arg.charCodeAt(0) != 45) { if(filename === "") filename = arg; continue; }
|
|
47
|
+
var m = arg.indexOf("=") == -1 ? arg : arg.substr(0, arg.indexOf("="));
|
|
48
|
+
switch(m) {
|
|
49
|
+
case "-": filename = "-"; break;
|
|
50
|
+
|
|
51
|
+
case "--help": case "-h": process.exit(help()); break;
|
|
52
|
+
case "--version": case "-V": process.exit(version()); break;
|
|
53
|
+
|
|
54
|
+
case "--signed": case "-d": fmt = "%d"; break;
|
|
55
|
+
case "--unsigned": case "-u": fmt = "%u"; break;
|
|
56
|
+
case "--hex": case "-x": fmt = "%0.8x"; break;
|
|
57
|
+
case "--HEX": case "-X": fmt = "%0.8X"; break;
|
|
58
|
+
case "--format": case "-F":
|
|
59
|
+
fmt = ((m!=arg) ? arg.substr(m.length+1) : args[++i])||""; break;
|
|
60
|
+
|
|
61
|
+
case "--hex-seed": case "-H": r = 16;
|
|
62
|
+
/* falls through */
|
|
63
|
+
case "--seed": case "-S":
|
|
64
|
+
seed=parseInt((m!=arg) ? arg.substr(m.length+1) : args[++i], r)||1; break;
|
|
65
|
+
|
|
66
|
+
default: die("adler32: unrecognized option `" + arg + "'", 22);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
if(!process.stdin.isTTY) filename = filename || "-";
|
|
71
|
+
if(filename.length===0) die("adler32: must specify a filename ('-' for stdin)",1);
|
|
72
|
+
|
|
73
|
+
var adler32 = seed;
|
|
74
|
+
// $FlowIgnore -- Writable is callable but type sig disagrees
|
|
75
|
+
var writable = require('stream').Writable();
|
|
76
|
+
writable._write = function(chunk, e, cb) { adler32 = X.buf(chunk, adler32); cb(); };
|
|
77
|
+
writable._writev = function(chunks, cb) {
|
|
78
|
+
chunks.forEach(function(c) { adler32 = X.buf(c.chunk, adler32);});
|
|
79
|
+
cb();
|
|
80
|
+
};
|
|
81
|
+
writable.on('finish', function() {
|
|
82
|
+
console.log(fmt === "" ? adler32 : require("printj").sprintf(fmt, adler32));
|
|
83
|
+
});
|
|
84
|
+
|
|
85
|
+
if(filename === "-") process.stdin.pipe(writable);
|
|
86
|
+
else if(fs.existsSync(filename)) fs.createReadStream(filename).pipe(writable);
|
|
87
|
+
else die("adler32: " + filename + ": No such file or directory", 2);
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "adler-32",
|
|
3
|
+
"version": "1.2.0",
|
|
4
|
+
"author": "sheetjs",
|
|
5
|
+
"description": "Pure-JS ADLER-32",
|
|
6
|
+
"keywords": [ "adler32", "checksum" ],
|
|
7
|
+
"bin": {
|
|
8
|
+
"adler32": "./bin/adler32.njs"
|
|
9
|
+
},
|
|
10
|
+
"main": "./adler32",
|
|
11
|
+
"types": "types",
|
|
12
|
+
"dependencies": {
|
|
13
|
+
"printj":"~1.1.0",
|
|
14
|
+
"exit-on-epipe":"~1.0.1"
|
|
15
|
+
},
|
|
16
|
+
"devDependencies": {
|
|
17
|
+
"mocha":"~2.5.3",
|
|
18
|
+
"blanket": "~1.2.3",
|
|
19
|
+
"codepage":"~1.10.0",
|
|
20
|
+
"@sheetjs/uglify-js":"~2.7.3",
|
|
21
|
+
"@types/node":"^8.0.7",
|
|
22
|
+
"dtslint": "^0.1.2",
|
|
23
|
+
"typescript": "2.2.0"
|
|
24
|
+
},
|
|
25
|
+
"repository": { "type":"git", "url":"git://github.com/SheetJS/js-adler32.git" },
|
|
26
|
+
"scripts": {
|
|
27
|
+
"test": "make test",
|
|
28
|
+
"build": "make",
|
|
29
|
+
"lint": "make fullint",
|
|
30
|
+
"dtslint": "dtslint types"
|
|
31
|
+
},
|
|
32
|
+
"config": {
|
|
33
|
+
"blanket": {
|
|
34
|
+
"pattern": "adler32.js"
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
"homepage": "http://sheetjs.com/opensource",
|
|
38
|
+
"files": ["adler32.js", "bin/adler32.njs", "LICENSE", "README.md", "types/index.d.ts", "types/*.json"],
|
|
39
|
+
"bugs": { "url": "https://github.com/SheetJS/js-adler32/issues" },
|
|
40
|
+
"license": "Apache-2.0",
|
|
41
|
+
"engines": { "node": ">=0.8" }
|
|
42
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/* adler32.js (C) 2014-present SheetJS -- http://sheetjs.com */
|
|
2
|
+
// TypeScript Version: 2.2
|
|
3
|
+
|
|
4
|
+
/** Version string */
|
|
5
|
+
export const version: string;
|
|
6
|
+
|
|
7
|
+
/** Process a node buffer or byte array */
|
|
8
|
+
export function buf(data: number[] | Uint8Array, seed?: number): number;
|
|
9
|
+
|
|
10
|
+
/** Process a binary string */
|
|
11
|
+
export function bstr(data: string, seed?: number): number;
|
|
12
|
+
|
|
13
|
+
/** Process a JS string based on the UTF8 encoding */
|
|
14
|
+
export function str(data: string, seed?: number): number;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"module": "commonjs",
|
|
4
|
+
"lib": [ "es5" ],
|
|
5
|
+
"noImplicitAny": true,
|
|
6
|
+
"noImplicitThis": true,
|
|
7
|
+
"strictNullChecks": false,
|
|
8
|
+
"baseUrl": ".",
|
|
9
|
+
"paths": { "adler-32": ["."] },
|
|
10
|
+
"types": [],
|
|
11
|
+
"noEmit": true,
|
|
12
|
+
"forceConsistentCasingInFileNames": true
|
|
13
|
+
}
|
|
14
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
{
|
|
2
|
+
"extends": "dtslint/dtslint.json",
|
|
3
|
+
"rules": {
|
|
4
|
+
"whitespace": false,
|
|
5
|
+
"no-sparse-arrays": false,
|
|
6
|
+
"only-arrow-functions": false,
|
|
7
|
+
"no-consecutive-blank-lines": false,
|
|
8
|
+
"prefer-conditional-expression": false,
|
|
9
|
+
"one-variable-per-declaration": false
|
|
10
|
+
}
|
|
11
|
+
}
|