diff --git a/babel.config.js b/babel.config.js index 2a7416a06..99ada074d 100644 --- a/babel.config.js +++ b/babel.config.js @@ -20,7 +20,7 @@ module.exports = function(api) { // "debug": true }], "@babel/preset-typescript", - // "@babel/preset-react" + "@babel/preset-react" ], "plugins": [ ["@babel/plugin-transform-runtime", { diff --git a/components/cascader/index.ts b/components/cascader/index.ts index 158abd937..7d05403d5 100644 --- a/components/cascader/index.ts +++ b/components/cascader/index.ts @@ -76,6 +76,7 @@ export class Cascader< protected hasValue() { const {value} = this.get(); const has = super.hasValue(); + if (has && !(value as V[]).length) return false; return has; } diff --git a/components/dropdown/demos/tooltip.md b/components/dropdown/demos/tooltip.md index 6be67ac16..356c919bd 100644 --- a/components/dropdown/demos/tooltip.md +++ b/components/dropdown/demos/tooltip.md @@ -3,10 +3,7 @@ title: 菜单项添加Tooltip提示 order: 5 --- -使用`Tooltip`包裹需要提示的菜单项`DropdownItem`即可添加提示,需要注意的是: -在Intact下,当用`Tooltip`包裹触发器时,需要使用另外的元素将它包裹起来,因为`Tooltip`实际 -返回的是两个元素,一个是它的触发器,一个是提示内容层。而`Dropdown`的触发器只能 -接受一个元素,所以需要另外再包起来(如本例中`item 4`)。 +使用`Tooltip`包裹需要提示的菜单项`DropdownItem`即可添加提示 ```vdt import {Dropdown, DropdownMenu, DropdownItem, Button, Tooltip} from 'kpc'; @@ -23,11 +20,9 @@ import {Dropdown, DropdownMenu, DropdownItem, Button, Tooltip} from 'kpc'; item 3 -
- - item 4 - -
+ + item 4 + item 1 diff --git a/components/dropdown/dropdown.ts b/components/dropdown/dropdown.ts index 65084bbdf..9ff543817 100644 --- a/components/dropdown/dropdown.ts +++ b/components/dropdown/dropdown.ts @@ -231,7 +231,9 @@ export class Dropdown< private callOriginalCallback(name: string, e: MouseEvent) { const callback = this.triggerProps[name]; + const callbackOnDropdown = this.get(name); if (isFunction(callback)) callback(e); + if (isFunction(callbackOnDropdown)) callbackOnDropdown(e); } private normalizeTriggerProps(props: any) { diff --git a/components/layout/demos/aside.md b/components/layout/demos/aside.md index 2ef868db5..07da12298 100644 --- a/components/layout/demos/aside.md +++ b/components/layout/demos/aside.md @@ -33,7 +33,7 @@ import { menu 2 - menu 3 + menu 3 sub menu 1 sub menu 2 diff --git a/components/portal.ts b/components/portal.ts index e19fcbe64..4306a708a 100644 --- a/components/portal.ts +++ b/components/portal.ts @@ -11,6 +11,8 @@ import { remove, TypeDefs, inject, + nextTick, + callAll, } from 'intact'; import {isString} from 'intact-shared'; import {DIALOG} from './dialog/constants'; @@ -49,16 +51,20 @@ export class Portal extends Component { this.initContainer(nextProps.container, parentDom, anchor); // add mount method to queue to let sub-component be appended after parent-component - mountedQueue.push(() => { + // mountedQueue.push(() => { + // nextTick(() => { + // const mountedQueue: Function[] = []; mount( nextProps.children as VNode, this.container!, this, this.$SVG, null, - mountedQueue + mountedQueue, ); - }); + // callAll(mountedQueue); + // }); + // }); super.$render(lastVNode, nextVNode, parentDom, anchor, mountedQueue); } @@ -79,21 +85,25 @@ export class Portal extends Component { } const nextContainer = this.container!; - if (lastContainer === nextContainer) { - patch( - lastProps.children as VNode, - nextProps.children as VNode, - nextContainer, - this, - this.$SVG, - anchor, - mountedQueue, - false, - ); - } else { - remove(lastProps.children as VNode, lastContainer, false); - mount(nextProps.children as VNode, nextContainer, this, this.$SVG, anchor, mountedQueue); - } + // nextTick(() => { + // const mountedQueue: Function[] = []; + if (lastContainer === nextContainer) { + patch( + lastProps.children as VNode, + nextProps.children as VNode, + nextContainer, + this, + this.$SVG, + anchor, + mountedQueue, + false, + ); + } else { + remove(lastProps.children as VNode, lastContainer, false); + mount(nextProps.children as VNode, nextContainer, this, this.$SVG, anchor, mountedQueue); + } + // callAll(mountedQueue); + // }); super.$update(lastVNode, nextVNode, parentDom, anchor, mountedQueue, force); } diff --git a/components/table/table.ts b/components/table/table.ts index ad31bba3a..dfe0eba79 100644 --- a/components/table/table.ts +++ b/components/table/table.ts @@ -23,8 +23,8 @@ import type {Events} from '../types'; export interface TableProps< T = any, - C extends CheckType = CheckType, K extends TableRowKey = TableRowKey, + C extends CheckType = CheckType, S extends string = string, G extends TableGroupValue = TableGroupValue > { @@ -134,11 +134,11 @@ const events: Events = { export class Table< T = any, - C extends CheckType = 'checkbox', - K extends TableRowKey = number, - S extends string = string, - G extends TableGroupValue = TableGroupValue -> extends Component, TableEvents, TableBlocks> { + RowKey extends TableRowKey = TableRowKey, + Checkbox extends CheckType = 'checkbox', + Sort extends string = string, + Group extends TableGroupValue = TableGroupValue +> extends Component, TableEvents, TableBlocks> { static template = template; static typeDefs = typeDefs; static defaults = defaults; @@ -261,7 +261,7 @@ export class Table< } @bind - private clickRow(data: T, index: number, key: K) { + private clickRow(data: T, index: number, key: RowKey) { this.trigger('clickRow', data, index, key); } diff --git a/components/table/useChecked.ts b/components/table/useChecked.ts index 49a8e741d..7c5e55af8 100644 --- a/components/table/useChecked.ts +++ b/components/table/useChecked.ts @@ -26,7 +26,7 @@ export function useChecked( getGrid: () => TableGrid, loopData: ReturnType['loopData'], ) { - const instance = useInstance() as Table; + const instance = useInstance() as Table; let allStatus: RowStatus[] = []; function isChecked(key: TableRowKey) { diff --git a/components/table/useDisableRow.ts b/components/table/useDisableRow.ts index 572d7e0ff..2cc94f7cd 100644 --- a/components/table/useDisableRow.ts +++ b/components/table/useDisableRow.ts @@ -5,7 +5,7 @@ import type {useTree} from './useTree'; export function useDisableRow( loopData: ReturnType['loopData'], ) { - const instance = useInstance() as Table; + const instance = useInstance() as Table; let enabledKeys: TableRowKey[] = []; let disabledKeys: TableRowKey[] = []; let allKeys: TableRowKey[] = []; diff --git a/components/table/useDraggable.ts b/components/table/useDraggable.ts index 74b191557..64d6c29b2 100644 --- a/components/table/useDraggable.ts +++ b/components/table/useDraggable.ts @@ -4,7 +4,7 @@ import {useState} from '../../hooks/useState'; import type {TableRow} from './row'; export function useDraggable() { - const instance = useInstance() as Table; + const instance = useInstance() as Table; const draggingKey = useState(null); let originIndex: number; diff --git a/components/table/useMerge.ts b/components/table/useMerge.ts index e7ee92828..a50286be5 100644 --- a/components/table/useMerge.ts +++ b/components/table/useMerge.ts @@ -24,7 +24,7 @@ export type TableGrid = TableGridItem[][]; export function useMerge( getCols: () => Props[], ) { - const instance = useInstance() as Table; + const instance = useInstance() as Table; let grid: TableGrid = []; function handleSpans() { diff --git a/components/table/useSelected.ts b/components/table/useSelected.ts index 281cde8c8..735e5586a 100644 --- a/components/table/useSelected.ts +++ b/components/table/useSelected.ts @@ -4,7 +4,7 @@ import {inArray} from './useChecked'; import {toggleArray} from '../utils'; export function useSelected() { - const instance = useInstance() as Table; + const instance = useInstance() as Table; function isSelected(key: TableRowKey) { return inArray(instance.get('selectedKeys'), key); diff --git a/components/transfer/demos/customFilter.md b/components/transfer/demos/customFilter.md index 51f273e91..d193f948f 100644 --- a/components/transfer/demos/customFilter.md +++ b/components/transfer/demos/customFilter.md @@ -112,6 +112,7 @@ export default class extends Component { @bind fetch() { mockApi(this.get('policy')!).then(data => { + if (this.$unmounted) return; this.originData = data; this.filter(); }); @@ -132,23 +133,29 @@ export default class extends Component { ```vue-script created() { - this._fetch(); + this.fetch(); }, watch: { policy: function() { - this._fetch(); + this.fetch(); }, keywords: function() { - this._filter(); + this.filter(); }, }, ``` ```react-methods +private $unmounted: boolean = false; + componentDidMount() { this.fetch(); } +componentWillUnmount() { + this.$unmounted = true; +} + setState(state: Pick, cb?: () => void) { if ('policy' in state) { super.setState(state, this.fetch); diff --git a/package.json b/package.json index c1ee4019e..3277a87ee 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "module": "index.js", "scripts": { "test": "karma start test/karma.conf.js", - "test:react": "cross-env REACT=1 karma start test/karma.react.conf.js", + "test:react": "cross-env REACT=1 karma start packages/kpc-react/__tests__/karma.conf.js", "test:theme": "mocha test/themes/index.js", "test:angular": "cd ./packages/kpc-angular && npm run test -- --watch=false --browsers=ChromeHeadless", "test:vue-next": "cross-env VUE_NEXT=1 karma start packages/kpc-vue-next/karma.conf.js", @@ -90,6 +90,7 @@ "@types/js-yaml": "^4.0.1", "@types/marked": "^2.0.2", "@types/mocha": "^8.2.2", + "@types/react-dom": "^17.0.11", "@types/tinycolor2": "^1.4.2", "@types/webpack-env": "^1.16.0", "@vue/babel-plugin-jsx": "^1.0.1", diff --git a/packages/kpc-react/__tests__/index.ts b/packages/kpc-react/__tests__/index.ts new file mode 100644 index 000000000..4f21c38f6 --- /dev/null +++ b/packages/kpc-react/__tests__/index.ts @@ -0,0 +1,46 @@ +import * as React from 'react'; +import * as ReactDOM from 'react-dom'; +import {Component, createRef} from 'intact'; +import {mount, unmount, testDemos, wait, nextFrame} from '../../../test/utils'; +import {matchSnapshot} from 'chai-karma-snapshot'; +import mx from '../components/diagram/mxgraph/mx'; +import '../../../test/test.styl'; + +chai.use(matchSnapshot); + +mx.mxClient.IS_POINTER = false; + +const testsContext = require.context('../components/', true, /index\.react\.spec\.ts/); +testsContext.keys().forEach(testsContext); + +// const reactReq = require.context('~/components/', true, /^((?!(affix|code|layout)).)*\/demos\/.*react\.tsx$/); +const reactReq = require.context('~/components/', true, /^((?!(affix|code)).)*\/demos\/.*react\.tsx$/); +// const reactReq = require.context('~/components/', true, /button\/demos\/.*react\.tsx$/); + +describe('React Demos', () => { + afterEach(() => unmount()); + + function wrap(Demo: any) { + return class extends Component { + static template = '
'; + private elementRef = createRef(); + + mounted() { + ReactDOM.render( + React.createElement(Demo), + this.elementRef.value! + ); + } + + beforeUnmount() { + ReactDOM.unmountComponentAtNode(this.elementRef.value!); + } + } + } + + testDemos(reactReq, async (Demo) => { + const [instance, element] = mount(wrap(Demo as any)); + await wait(); + expect(element.innerHTML).to.matchSnapshot(); + }); +}); diff --git a/packages/kpc-react/__tests__/karma.conf.js b/packages/kpc-react/__tests__/karma.conf.js new file mode 100644 index 000000000..92a0f26fb --- /dev/null +++ b/packages/kpc-react/__tests__/karma.conf.js @@ -0,0 +1,50 @@ +const {webpackConfigReact} = require('../../../test/webpack'); +const path = require('path'); +const os = require('os'); + +// for get font files +// https://github.com/ryanclark/karma-webpack/issues/498#issuecomment-790040818 +const output = { + path: path.join(os.tmpdir(), '_karma_webpack_') + Math.floor(Math.random() * 1000000), +}; + +module.exports = function (config) { + config.set({ + browsers: process.env.UPDATE || process.env.CI ? ['MyChromeHeadless'] : undefined, + customLaunchers: { + 'MyChromeHeadless': { + base: 'ChromeHeadless', + flags: ['--window-size=1920,1080'], + } + }, + frameworks: ['webpack', 'mocha', 'sinon-chai', 'snapshot', 'mocha-snapshot'], + reporters: ['mocha'], + files: [ + './index.ts', + // '**/__snapshots__/**/*.md', + ], + preprocessors: { + './index.ts': ['webpack', 'sourcemap'], + // '**/__snapshots__/**/*.md': ['snapshot'], + }, + webpack: {...webpackConfigReact().toConfig(), output}, + webpackMiddleware: { + // noInfo: true + }, + // autoWatch: true, + mochaReporter: { + showDiff: true, + }, + client: { + mocha: { + reporter: 'html', + ui: 'bdd', + } + }, + // snapshot: { + // update: process.env.UPDATE === '1', + // }, + // logLevel: config.LOG_INFO, + // singleRun: true, + }); +}; diff --git a/scripts/doc/intact2react.js b/scripts/doc/intact2react.js index 288b13d32..4764ecfad 100644 --- a/scripts/doc/intact2react.js +++ b/scripts/doc/intact2react.js @@ -362,20 +362,20 @@ function parseBlock(template) { const name = upperFirst(block.name); if (!block.params) { if (codes.length === 1) { - return indent(`slot${name}={${block.codes[0].trim()}}`, indentCount); + return indent(`slot${name}={<>${block.codes[0].trim()}}`, indentCount); } else { return [ - indent(`slot${name}={`, indentCount), + indent(`slot${name}={<>`, indentCount), block.codes, - indent(`}`, indentCount) + indent(`}`, indentCount) ]; } } else { return [ indent(`slot${name}={(${block.params}) => {`, indentCount), - indent(` return `, indentCount), + indent(` return <>`, indentCount), indent(block.codes, 1), - indent(` `, indentCount), + indent(` `, indentCount), indent(`}}`, indentCount), ]; } @@ -678,7 +678,7 @@ function getMethods(js) { isBound = true; return; } - const property = code.match(/(private|public) (\w+)(: | =)/); + const property = code.match(/(private|public) ([\$\w]+)(: | =)/); if (property) { methods[property[2]] = dedent(code) + '\n'; return; diff --git a/scripts/gulp/frameworks.js b/scripts/gulp/frameworks.js index 31b8579fc..aceb20303 100644 --- a/scripts/gulp/frameworks.js +++ b/scripts/gulp/frameworks.js @@ -26,7 +26,10 @@ function generateCopy(type) { const name = `copy@${type}`; tasks.push(name); gulp.task(name, () => { - let ret = gulp.src(['./es/@(components|hooks|i18n|styles)/**/*', './es/index.d.ts'], {base: './es', root}) + let ret = gulp.src([ + './es/@(components|hooks|i18n|styles)/**/*', + './es/index*' + ], {base: './es', root}) .pipe(tap(file => { const extname = path.extname(file.path); if (extname === '.js' || extname === '.ts') { diff --git a/scripts/webpack/common.js b/scripts/webpack/common.js index dbbc746d8..d8603b3ea 100644 --- a/scripts/webpack/common.js +++ b/scripts/webpack/common.js @@ -17,8 +17,9 @@ module.exports = (config) => { // .set('intact$', 'intact-vue') .set('kpc$', resolve('index.ts')) .set('kpc', root) - .set('kpc-vue', root) - .set('kpc-react', root) + .set('kpc-vue', resolve('packages/kpc-vue')) + .set('kpc-vue-next', resolve('packages/kpc-vue-next')) + .set('kpc-react', resolve('packages/kpc-react')) .set('@', root) .set('dayjs', 'dayjs/esm') .end() diff --git a/test/demos.ts b/test/demos.ts index bd6bcd90c..1341178c3 100644 --- a/test/demos.ts +++ b/test/demos.ts @@ -2,8 +2,8 @@ import {mount, testDemos, unmount, wait, nextFrame} from './utils'; // import Vue from 'vue'; // import Intact from 'intact'; -// const req = require.context('~/components/', true, /^((?!(affix|code)).)*\/demos\/.*index\.js$/); -const req = require.context('~/components/', true, /upload\/demos\/.*index\.ts$/); +const req = require.context('~/components/', true, /^((?!(affix|code)).)*\/demos\/.*index\.ts$/); +// const req = require.context('~/components/', true, /upload\/demos\/.*index\.ts$/); // const vueReq = require.context('~/components/', true, /^((?!(affix|code)).)*\/demos\/.*index\.vue$/); describe('Demos', () => { diff --git a/test/index.ts b/test/index.ts index 071a2d769..dba8bd001 100644 --- a/test/index.ts +++ b/test/index.ts @@ -2,12 +2,12 @@ import {matchSnapshot} from 'chai-karma-snapshot'; // import 'babel-polyfill'; // import '../styles/kpc.styl'; import './test.styl'; -// import mx from '../components/diagram/mxgraph/mx'; +import mx from '../components/diagram/mxgraph/mx'; chai.use(matchSnapshot); // disable POINTER because it is always false on Mac -// mx.mxClient.IS_POINTER = false; +mx.mxClient.IS_POINTER = false; // require all test files (files that ends with .spec.js) const testsContext = require.context('../components/', true, /index\.spec\.ts/); diff --git a/test/karma.react.conf.js b/test/karma.react.conf.js deleted file mode 100644 index cd527d230..000000000 --- a/test/karma.react.conf.js +++ /dev/null @@ -1,56 +0,0 @@ -const {webpackConfigReact} = require('./webpack'); - -module.exports = function (config) { - config.set({ - browsers: process.env.UPDATE || process.env.CI ? ['MyChromeHeadless'] : undefined, - customLaunchers: { - 'MyChromeHeadless': { - base: 'ChromeHeadless', - flags: ['--window-size=1920,1080'], - } - }, - frameworks: ['mocha', 'sinon-chai', 'snapshot', 'mocha-snapshot'], - reporters: ['mocha'], - files: [ - './react.demos.js', - '**/__snapshots__/**/*.md', - ], - exclude: [], - plugins : [ - 'karma-mocha', - 'karma-webpack', - 'karma-sourcemap-loader', - 'karma-spec-reporter', - 'karma-mocha-reporter', - 'karma-sinon-chai', - 'karma-coverage-istanbul-reporter', - // 'karma-jasmine', - 'karma-chrome-launcher', - 'karma-snapshot', - 'karma-mocha-snapshot', - ], - preprocessors: { - './react.demos.js': ['webpack', 'sourcemap'], - '**/__snapshots__/**/*.md': ['snapshot'], - }, - webpack: webpackConfigReact().toConfig(), - webpackMiddleware: { - // noInfo: true - }, - autoWatch: true, - mochaReporter: { - showDiff: true, - }, - client: { - mocha: { - reporter: 'html', - ui: 'bdd', - } - }, - snapshot: { - update: process.env.UPDATE === '1', - }, - logLevel: config.LOG_INFO, - singleRun: true, - }); -}; diff --git a/test/react.demos.js b/test/react.demos.js deleted file mode 100644 index a6271f92b..000000000 --- a/test/react.demos.js +++ /dev/null @@ -1,49 +0,0 @@ -import React from 'react'; -import ReactDOM from 'react-dom'; -import Intact from 'intact'; -import {mount, unmount, testDemos, wait, nextFrame} from './utils'; -import {matchSnapshot} from 'chai-karma-snapshot'; -import '../styles/kpc.styl'; -import './test.styl'; -import mx from '../components/diagram/mxgraph/mx'; - -chai.use(matchSnapshot); - -mx.mxClient.IS_POINTER = false; - -const testsContext = require.context('../components/', true, /index\.react\.spec\.js/); -testsContext.keys().forEach(testsContext); - -// const reactReq = require.context('~/components/', true, /demos\/.*index\.jsx$/); -const reactReq = require.context('~/components/', true, /^((?!(affix|code)).)*\/demos\/.*index\.jsx$/); - -describe('React Demos', () => { - let demo; - - afterEach(() => { - unmount(demo); - }); - - function wrap(Demo) { - return class extends Intact { - @Intact.template() - static template = '
'; - - _mount() { - ReactDOM.render( - React.createElement(Demo), - this.element - ); - } - - _destroy() { - ReactDOM.unmountComponentAtNode(this.element); - } - } - } - testDemos(reactReq, async (Demo) => { - demo = mount(wrap(Demo)); - await nextFrame(); - expect(demo.element.innerHTML).to.matchSnapshot(); - }); -}); diff --git a/test/webpack.js b/test/webpack.js index 9e861d0e6..ca66db9c2 100644 --- a/test/webpack.js +++ b/test/webpack.js @@ -48,7 +48,10 @@ exports.webpackConfig = () => { exports.webpackConfigReact = () => { const config = genConfig(); - config.resolve.alias.set('~', destData).set('intact$', 'intact-react'); + config.resolve.alias + .set('~', destData) + .set('intact$', 'intact/dist/index.esm.js') + // .set('intact$', 'intact-react'); config.devtool('inline-source-map'); addConfig(config); diff --git a/tsconfig.json b/tsconfig.json index 6354369e3..b1c3e7f94 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -87,6 +87,7 @@ "typings", "site", "test", + "packages/kpc-react", "index.ts" ], "exclude": [ diff --git a/yarn.lock b/yarn.lock index 1a515c93b..c260c727c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2160,6 +2160,13 @@ resolved "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.4.tgz#fcf7205c25dff795ee79af1e30da2c9790808f11" integrity sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ== +"@types/react-dom@^17.0.11": + version "17.0.11" + resolved "https://registry.npmmirror.com/@types/react-dom/download/@types/react-dom-17.0.11.tgz#e1eadc3c5e86bdb5f7684e00274ae228e7bcc466" + integrity sha512-f96K3k+24RaLGVu/Y2Ng3e1EbZ8/cVJvypZWd7cy0ofCBaf2lcM46xNhycMZ2xGwbBjRql7hOlZ+e2WlJ5MH3Q== + dependencies: + "@types/react" "*" + "@types/react-redux@^7.1.20": version "7.1.20" resolved "https://registry.npmjs.org/@types/react-redux/-/react-redux-7.1.20.tgz#42f0e61ababb621e12c66c96dda94c58423bd7df" @@ -7402,37 +7409,37 @@ inquirer@^7.3.3: strip-ansi "^6.0.0" through "^2.3.6" -intact-react@^3.0.0-beta.16: - version "3.0.0-beta.16" - resolved "https://registry.npmjs.org/intact-react/-/intact-react-3.0.0-beta.16.tgz#336a396e468e1fc6ecf768ef71de606078d0c823" - integrity sha512-ngPM77U1x8eyKu9g4mb3Y0qjqnNOLrcP8+tfO/8ZqXOIhTlf4hNiXcFDzG7Z3JGy7aPH8YKk6s1EEv8K4p2Z0Q== +intact-react@^3.0.0-beta.17: + version "3.0.0-beta.17" + resolved "https://registry.npmmirror.com/intact-react/download/intact-react-3.0.0-beta.17.tgz#c4b2ce2b744bda85efad35564acb7b7cac9ce635" + integrity sha512-oldPmgLdhq2FP6SybIaTj3p6yXqk+Gl3IxOKb7Xy7iWYCy8tK3mw6+Da5m3j+emdL+GOJFg36QPL2m8Q1RvQYg== dependencies: - intact "^3.0.0-beta.16" + intact "^3.0.0-beta.17" tslib "^2.3.1" -intact-shared@^3.0.0-beta.16: - version "3.0.0-beta.16" - resolved "https://registry.npmjs.org/intact-shared/-/intact-shared-3.0.0-beta.16.tgz#85b3a6d6eec550e22e4017e1b8a5fd70b1410bc9" - integrity sha512-VvlnMNbfClTRgrKNl6ANGoSC65sTH3DyCMtG96d+Zm3DZuUnApA3gjfpCmTuLJiNpc+korY1/0Yg4F13fOa+NQ== +intact-shared@^3.0.0-beta.17: + version "3.0.0-beta.17" + resolved "https://registry.npmmirror.com/intact-shared/download/intact-shared-3.0.0-beta.17.tgz#c1b68c0822e573ba0825a8e8ab6cc881d6ebbd46" + integrity sha512-2Vs55potIUX2my5MjyadVDtQVXkOY4P52e5P6qB7F1qWy9qzkFGixvM82eOkZQ1cZMXyjAvRfSAyM2iF3d2S4w== -intact-vue-next@^3.0.0-beta.16: - version "3.0.0-beta.16" - resolved "https://registry.npmjs.org/intact-vue-next/-/intact-vue-next-3.0.0-beta.16.tgz#9d6684c8329f4e5755791f4f35bf8d27faa7d9bf" - integrity sha512-f+D1Dln3eHXixe3s/zuWTh29AJhY03A+FbahrM6uPuByf90bwIK7ES6QQLfbfiQZa+SeijZUii+ekn3Y44xRRg== +intact-vue@^3.0.0-beta.17: + version "3.0.0-beta.17" + resolved "https://registry.npmmirror.com/intact-vue/download/intact-vue-3.0.0-beta.17.tgz#550a209dec4b72f1a4d7d842cd2b33382a8e7fcc" + integrity sha512-h1nBhmMTzXScBhJUfouhPORzMjF32obwkIClArDE5+BvGZQLv/Z91rHLH1Zhd9Qc6BWUvgvUeAjRAZaO+STWKg== dependencies: - intact "^3.0.0-beta.16" + intact "^3.0.0-beta.17" tslib "^2.3.1" -intact@^3.0.0-beta.16: - version "3.0.0-beta.16" - resolved "https://registry.npmjs.org/intact/-/intact-3.0.0-beta.16.tgz#aa26b900060b1093e367a1bf011b5bd0b3fd8686" - integrity sha512-uHHhKkW9Fp9S0NTsX9/SzrvXslsJgVrW6KLNXcgur9RQ4NdjtfzOSuALI7YdLe3fjZcYYnrXMIPjFqNUxSSkMw== +intact@^3.0.0-beta.17: + version "3.0.0-beta.17" + resolved "https://registry.npmmirror.com/intact/download/intact-3.0.0-beta.17.tgz#f4c3ccfad530d5b06eec19fdc5108eec455708b3" + integrity sha512-5xcY7VGSJVe9xGbImXartkskEJOtvE23+rkDIle533IbWNOFX1ZsPo6Zy8En8yptI8cR5XCCuZB5w1c8lBKpNA== dependencies: - intact-shared "^3.0.0-beta.16" - misstime "^3.0.0-beta.16" + intact-shared "^3.0.0-beta.17" + misstime "^3.0.0-beta.17" tslib "^2.2.0" - vdt "^3.0.0-beta.16" - vdt-compiler "^3.0.0-beta.16" + vdt "^3.0.0-beta.17" + vdt-compiler "^3.0.0-beta.17" internal-ip@^4.3.0: version "4.3.0" @@ -9214,12 +9221,12 @@ minizlib@^2.0.0, minizlib@^2.1.1: minipass "^3.0.0" yallist "^4.0.0" -misstime@^3.0.0-beta.16: - version "3.0.0-beta.16" - resolved "https://registry.npmjs.org/misstime/-/misstime-3.0.0-beta.16.tgz#27027fa2b7264dde8d718b684a7be1a61eda7e48" - integrity sha512-/e46fk/PPaZ0rtqDj/3PHVg8M/bGkas0EGtDt1M25CmnJGvDe1jhMYkt39SPOgFzVwFqktJ6D5kb7KzBNUpQWg== +misstime@^3.0.0-beta.17: + version "3.0.0-beta.17" + resolved "https://registry.npmmirror.com/misstime/download/misstime-3.0.0-beta.17.tgz#84cd7b849b061cb2f57b19b714c1f51789efbfdf" + integrity sha512-F7eyXtDiT/ymfzZYvtW8d/S6klGidBubSpR4MOMppqhEFB2kKhqHMI3V7x8KejbFsmUodLJobmq1uFg+45ehRg== dependencies: - intact-shared "^3.0.0-beta.16" + intact-shared "^3.0.0-beta.17" mixin-deep@^1.2.0: version "1.3.2" @@ -13378,13 +13385,13 @@ vary@^1, vary@~1.1.2: resolved "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= -vdt-compiler@^3.0.0-beta.16: - version "3.0.0-beta.16" - resolved "https://registry.npmjs.org/vdt-compiler/-/vdt-compiler-3.0.0-beta.16.tgz#89e5e630501e30eca8658262706c8e4de22dbf99" - integrity sha512-msyqwL3uohMYvUTDM6cyaOMZf11T446dpTmwN0NxJoIu6XoRB0aSpnOhuQLPYdGeomUk9yHNemCE36f6+8UNnw== +vdt-compiler@^3.0.0-beta.17: + version "3.0.0-beta.17" + resolved "https://registry.npmmirror.com/vdt-compiler/download/vdt-compiler-3.0.0-beta.17.tgz#46929b9429875ad84b58017edc357fe42e401513" + integrity sha512-AwE62XnLp83UDAlpc62REOYY6r1ao4PN+stxrda4Syg0INfIzK7nic6t5lN6t02bEOH7FSvigKlWAG3+HRG6fw== dependencies: - intact-shared "^3.0.0-beta.16" - misstime "^3.0.0-beta.16" + intact-shared "^3.0.0-beta.17" + misstime "^3.0.0-beta.17" tslib "^2.2.0" vdt-loader@^3.0.0-beta.1: @@ -13396,13 +13403,13 @@ vdt-loader@^3.0.0-beta.1: schema-utils "^3.0.0" source-map "^0.7.3" -vdt@^3.0.0-beta.16: - version "3.0.0-beta.16" - resolved "https://registry.npmjs.org/vdt/-/vdt-3.0.0-beta.16.tgz#1170f3f5dcc77355cdb14bbb3e230347319c1435" - integrity sha512-RaO8qiqwyNIbL95A+/obk5zFxr7DVqpa0XQfh9XTyEGHfzqhSj4MqvphgV5pCL5qzoMGEDHs8Lb3Jy/k8U/GJw== +vdt@^3.0.0-beta.17: + version "3.0.0-beta.17" + resolved "https://registry.npmmirror.com/vdt/download/vdt-3.0.0-beta.17.tgz#9e4be3ec8c59d83a08f04164c906a855e09946ad" + integrity sha512-NNrWEyWkrlyWejZkyx/t7bZqb6kcDzmp7K4cCfAZhTUBpBmt73hW+LYbeXKbZD74t1uUdaHxmkwmGa4A1WZErQ== dependencies: - intact-shared "^3.0.0-beta.16" - misstime "^3.0.0-beta.16" + intact-shared "^3.0.0-beta.17" + misstime "^3.0.0-beta.17" tslib "^2.2.0" verror@1.10.0: