studiokit-scaffolding-js 4.9.0-next.1.2 → 4.9.0
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/lib/types/index.d.ts +0 -1
- package/lib/types/index.js +0 -1
- package/package.json +2 -2
- package/lib/components/ErrorMessage.d.ts +0 -6
- package/lib/components/ErrorMessage.js +0 -18
- package/lib/components/Icons/IconAlphaList.d.ts +0 -3
- package/lib/components/Icons/IconAlphaList.js +0 -24
- package/lib/components/Icons/IconTable.d.ts +0 -5
- package/lib/components/Icons/IconTable.js +0 -24
- package/lib/components/Icons/IconTableDeleteCol.d.ts +0 -3
- package/lib/components/Icons/IconTableDeleteCol.js +0 -24
- package/lib/components/Icons/IconTableDeleteRow.d.ts +0 -3
- package/lib/components/Icons/IconTableDeleteRow.js +0 -24
- package/lib/components/Icons/IconTableInsertCol.d.ts +0 -3
- package/lib/components/Icons/IconTableInsertCol.js +0 -24
- package/lib/components/Icons/IconTableInsertRow.d.ts +0 -3
- package/lib/components/Icons/IconTableInsertRow.js +0 -24
- package/lib/components/Quill/CustomToolbar.d.ts +0 -29
- package/lib/components/Quill/CustomToolbar.js +0 -192
- package/lib/components/Quill/ImageMissingAltTextWarning.d.ts +0 -6
- package/lib/components/Quill/ImageMissingAltTextWarning.js +0 -17
- package/lib/components/Quill/ImageWithAltTextModal.d.ts +0 -16
- package/lib/components/Quill/ImageWithAltTextModal.js +0 -139
- package/lib/types/Quill.d.ts +0 -9
- package/lib/types/Quill.js +0 -2
- package/lib/utils/quill.d.ts +0 -9
- package/lib/utils/quill.js +0 -12
package/lib/types/index.d.ts
CHANGED
|
@@ -13,7 +13,6 @@ export * from './Notification';
|
|
|
13
13
|
export * from './OptionalRecord';
|
|
14
14
|
export * from './OwnerSchedule';
|
|
15
15
|
export * from './PropertyOfType';
|
|
16
|
-
export * from './Quill';
|
|
17
16
|
export * from './RoleDescription';
|
|
18
17
|
export * from './Search';
|
|
19
18
|
export * from './SimpleLocation';
|
package/lib/types/index.js
CHANGED
|
@@ -25,7 +25,6 @@ __exportStar(require("./Notification"), exports);
|
|
|
25
25
|
__exportStar(require("./OptionalRecord"), exports);
|
|
26
26
|
__exportStar(require("./OwnerSchedule"), exports);
|
|
27
27
|
__exportStar(require("./PropertyOfType"), exports);
|
|
28
|
-
__exportStar(require("./Quill"), exports);
|
|
29
28
|
__exportStar(require("./RoleDescription"), exports);
|
|
30
29
|
__exportStar(require("./Search"), exports);
|
|
31
30
|
__exportStar(require("./SimpleLocation"), exports);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "studiokit-scaffolding-js",
|
|
3
|
-
"version": "4.9.0
|
|
3
|
+
"version": "4.9.0",
|
|
4
4
|
"description": "Common scaffolding for Studio apps at Purdue",
|
|
5
5
|
"repository": "https://gitlab.com/purdue-informatics/studiokit/studiokit-scaffolding-js",
|
|
6
6
|
"license": "MIT",
|
|
@@ -136,7 +136,7 @@
|
|
|
136
136
|
"react-ga": "^3.3.0",
|
|
137
137
|
"react-helmet": "^6.1.0",
|
|
138
138
|
"react-modal": "^3.12.1",
|
|
139
|
-
"react-quill": "
|
|
139
|
+
"react-quill": "^1.3.5",
|
|
140
140
|
"react-redux": "^7.2.2",
|
|
141
141
|
"react-router": "^5.2.0",
|
|
142
142
|
"react-router-bootstrap": "^0.25.0",
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.ErrorMessage = void 0;
|
|
7
|
-
var ErrorOutline_1 = __importDefault(require("@material-ui/icons/ErrorOutline"));
|
|
8
|
-
var react_1 = __importDefault(require("react"));
|
|
9
|
-
var ErrorMessage = function (_a) {
|
|
10
|
-
var message = _a.message, hideIcon = _a.hideIcon;
|
|
11
|
-
if (!message) {
|
|
12
|
-
return null;
|
|
13
|
-
}
|
|
14
|
-
return (react_1.default.createElement("span", { className: "color-red b" + (!hideIcon ? ' flex items-center' : '') },
|
|
15
|
-
!hideIcon && react_1.default.createElement(ErrorOutline_1.default, { className: "mr1" }),
|
|
16
|
-
message));
|
|
17
|
-
};
|
|
18
|
-
exports.ErrorMessage = ErrorMessage;
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.IconAlphaList = void 0;
|
|
18
|
-
var SvgIcon_1 = __importDefault(require("@material-ui/core/SvgIcon"));
|
|
19
|
-
var react_1 = __importDefault(require("react"));
|
|
20
|
-
/** Copied from `@mdi/js` */
|
|
21
|
-
var mdiOrderAlphabeticalAscending = 'M12 5H22V7H12M12 19V17H22V19M12 11H22V13H12M9 13V15L5.67 19H9V21H3V19L6.33 15H3V13M7 3H5C3.9 3 3 3.9 3 5V11H5V9H7V11H9V5C9 3.9 8.11 3 7 3M7 7H5V5H7Z';
|
|
22
|
-
var IconAlphaList = function (props) { return (react_1.default.createElement(SvgIcon_1.default, __assign({}, props),
|
|
23
|
-
react_1.default.createElement("path", { d: mdiOrderAlphabeticalAscending }))); };
|
|
24
|
-
exports.IconAlphaList = IconAlphaList;
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { SvgIconProps } from '@material-ui/core/SvgIcon';
|
|
2
|
-
import { FunctionComponent } from 'react';
|
|
3
|
-
/** Copied from `@mdi/js` */
|
|
4
|
-
export declare const mdiTable = "M5,4H19A2,2 0 0,1 21,6V18A2,2 0 0,1 19,20H5A2,2 0 0,1 3,18V6A2,2 0 0,1 5,4M5,8V12H11V8H5M13,8V12H19V8H13M5,14V18H11V14H5M13,14V18H19V14H13Z";
|
|
5
|
-
export declare const IconTable: FunctionComponent<SvgIconProps>;
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.IconTable = exports.mdiTable = void 0;
|
|
18
|
-
var SvgIcon_1 = __importDefault(require("@material-ui/core/SvgIcon"));
|
|
19
|
-
var react_1 = __importDefault(require("react"));
|
|
20
|
-
/** Copied from `@mdi/js` */
|
|
21
|
-
exports.mdiTable = 'M5,4H19A2,2 0 0,1 21,6V18A2,2 0 0,1 19,20H5A2,2 0 0,1 3,18V6A2,2 0 0,1 5,4M5,8V12H11V8H5M13,8V12H19V8H13M5,14V18H11V14H5M13,14V18H19V14H13Z';
|
|
22
|
-
var IconTable = function (props) { return (react_1.default.createElement(SvgIcon_1.default, __assign({}, props),
|
|
23
|
-
react_1.default.createElement("path", { d: exports.mdiTable }))); };
|
|
24
|
-
exports.IconTable = IconTable;
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.IconTableDeleteCol = void 0;
|
|
18
|
-
var SvgIcon_1 = __importDefault(require("@material-ui/core/SvgIcon"));
|
|
19
|
-
var react_1 = __importDefault(require("react"));
|
|
20
|
-
/** Copied from `@mdi/js` */
|
|
21
|
-
var mdiTableColumnRemove = 'M4,2H11A2,2 0 0,1 13,4V20A2,2 0 0,1 11,22H4A2,2 0 0,1 2,20V4A2,2 0 0,1 4,2M4,10V14H11V10H4M4,16V20H11V16H4M4,4V8H11V4H4M17.59,12L15,9.41L16.41,8L19,10.59L21.59,8L23,9.41L20.41,12L23,14.59L21.59,16L19,13.41L16.41,16L15,14.59L17.59,12Z';
|
|
22
|
-
var IconTableDeleteCol = function (props) { return (react_1.default.createElement(SvgIcon_1.default, __assign({}, props),
|
|
23
|
-
react_1.default.createElement("path", { d: mdiTableColumnRemove }))); };
|
|
24
|
-
exports.IconTableDeleteCol = IconTableDeleteCol;
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.IconTableDeleteRow = void 0;
|
|
18
|
-
var SvgIcon_1 = __importDefault(require("@material-ui/core/SvgIcon"));
|
|
19
|
-
var react_1 = __importDefault(require("react"));
|
|
20
|
-
/** Copied from `@mdi/js` */
|
|
21
|
-
var mdiTableRowRemove = 'M9.41,13L12,15.59L14.59,13L16,14.41L13.41,17L16,19.59L14.59,21L12,18.41L9.41,21L8,19.59L10.59,17L8,14.41L9.41,13M22,9A2,2 0 0,1 20,11H4A2,2 0 0,1 2,9V6A2,2 0 0,1 4,4H20A2,2 0 0,1 22,6V9M4,9H8V6H4V9M10,9H14V6H10V9M16,9H20V6H16V9Z';
|
|
22
|
-
var IconTableDeleteRow = function (props) { return (react_1.default.createElement(SvgIcon_1.default, __assign({}, props),
|
|
23
|
-
react_1.default.createElement("path", { d: mdiTableRowRemove }))); };
|
|
24
|
-
exports.IconTableDeleteRow = IconTableDeleteRow;
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.IconTableInsertCol = void 0;
|
|
18
|
-
var SvgIcon_1 = __importDefault(require("@material-ui/core/SvgIcon"));
|
|
19
|
-
var react_1 = __importDefault(require("react"));
|
|
20
|
-
/** Copied from `@mdi/js` */
|
|
21
|
-
var mdiTableColumnPlusAfter = 'M11,2A2,2 0 0,1 13,4V20A2,2 0 0,1 11,22H2V2H11M4,10V14H11V10H4M4,16V20H11V16H4M4,4V8H11V4H4M15,11H18V8H20V11H23V13H20V16H18V13H15V11Z';
|
|
22
|
-
var IconTableInsertCol = function (props) { return (react_1.default.createElement(SvgIcon_1.default, __assign({}, props),
|
|
23
|
-
react_1.default.createElement("path", { d: mdiTableColumnPlusAfter }))); };
|
|
24
|
-
exports.IconTableInsertCol = IconTableInsertCol;
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.IconTableInsertRow = void 0;
|
|
18
|
-
var SvgIcon_1 = __importDefault(require("@material-ui/core/SvgIcon"));
|
|
19
|
-
var react_1 = __importDefault(require("react"));
|
|
20
|
-
/** Copied from `@mdi/js` */
|
|
21
|
-
var mdiTableRowPlusAfter = 'M22,10A2,2 0 0,1 20,12H4A2,2 0 0,1 2,10V3H4V5H8V3H10V5H14V3H16V5H20V3H22V10M4,10H8V7H4V10M10,10H14V7H10V10M20,10V7H16V10H20M11,14H13V17H16V19H13V22H11V19H8V17H11V14Z';
|
|
22
|
-
var IconTableInsertRow = function (props) { return (react_1.default.createElement(SvgIcon_1.default, __assign({}, props),
|
|
23
|
-
react_1.default.createElement("path", { d: mdiTableRowPlusAfter }))); };
|
|
24
|
-
exports.IconTableInsertRow = IconTableInsertRow;
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { FunctionComponent } from 'react';
|
|
2
|
-
import ReactQuill from 'react-quill';
|
|
3
|
-
export declare const defaultFormats: string[];
|
|
4
|
-
export declare const defaultMinimumFormats: string[];
|
|
5
|
-
export declare type FormatSection = (disabled?: boolean) => JSX.Element;
|
|
6
|
-
export declare const fontSizeSection: FormatSection;
|
|
7
|
-
export declare const textFormatSection: FormatSection;
|
|
8
|
-
export declare const alignmentSection: FormatSection;
|
|
9
|
-
export declare const tableSection: FormatSection;
|
|
10
|
-
export declare const embedSection: FormatSection;
|
|
11
|
-
export declare const minimumEmbedSection: FormatSection;
|
|
12
|
-
export declare const additionalEmbedSection: FormatSection;
|
|
13
|
-
export declare const defaultFeatures: FormatSection[];
|
|
14
|
-
export declare const defaultMinimumFeatures: FormatSection[];
|
|
15
|
-
export declare const defaultMinimumAdditionalFeatures: FormatSection[];
|
|
16
|
-
export interface CustomToolbarProps {
|
|
17
|
-
guid: string;
|
|
18
|
-
className?: string;
|
|
19
|
-
disabled?: boolean;
|
|
20
|
-
formats?: string[];
|
|
21
|
-
features?: FormatSection[];
|
|
22
|
-
useMinimumFeatures?: boolean;
|
|
23
|
-
minimumFormats?: string[];
|
|
24
|
-
minimumFeatures?: FormatSection[];
|
|
25
|
-
minimumAdditionalFeatures?: FormatSection[];
|
|
26
|
-
reactQuillRef: ReactQuill | null;
|
|
27
|
-
isVisibleWhenDisabled?: boolean;
|
|
28
|
-
}
|
|
29
|
-
export declare const CustomToolbar: FunctionComponent<CustomToolbarProps>;
|
|
@@ -1,192 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
-
}) : function(o, v) {
|
|
12
|
-
o["default"] = v;
|
|
13
|
-
});
|
|
14
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
-
if (mod && mod.__esModule) return mod;
|
|
16
|
-
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
-
__setModuleDefault(result, mod);
|
|
19
|
-
return result;
|
|
20
|
-
};
|
|
21
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
22
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
23
|
-
};
|
|
24
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
-
exports.CustomToolbar = exports.defaultMinimumAdditionalFeatures = exports.defaultMinimumFeatures = exports.defaultFeatures = exports.additionalEmbedSection = exports.minimumEmbedSection = exports.embedSection = exports.tableSection = exports.alignmentSection = exports.textFormatSection = exports.fontSizeSection = exports.defaultMinimumFormats = exports.defaultFormats = void 0;
|
|
26
|
-
var MoreHoriz_1 = __importDefault(require("@material-ui/icons/MoreHoriz"));
|
|
27
|
-
var react_1 = __importStar(require("react"));
|
|
28
|
-
var IconAlphaList_1 = require("../Icons/IconAlphaList");
|
|
29
|
-
var IconTable_1 = require("../Icons/IconTable");
|
|
30
|
-
var IconTableDeleteCol_1 = require("../Icons/IconTableDeleteCol");
|
|
31
|
-
var IconTableDeleteRow_1 = require("../Icons/IconTableDeleteRow");
|
|
32
|
-
var IconTableInsertCol_1 = require("../Icons/IconTableInsertCol");
|
|
33
|
-
var IconTableInsertRow_1 = require("../Icons/IconTableInsertRow");
|
|
34
|
-
var accessibilityFix_1 = require("./accessibilityFix");
|
|
35
|
-
var constants_1 = require("./TableModule/constants");
|
|
36
|
-
exports.defaultFormats = [
|
|
37
|
-
'header',
|
|
38
|
-
'font',
|
|
39
|
-
'size',
|
|
40
|
-
'bold',
|
|
41
|
-
'italic',
|
|
42
|
-
'underline',
|
|
43
|
-
'script',
|
|
44
|
-
'align',
|
|
45
|
-
'list',
|
|
46
|
-
'bullet',
|
|
47
|
-
'indent',
|
|
48
|
-
'link',
|
|
49
|
-
'image',
|
|
50
|
-
'video',
|
|
51
|
-
'formula',
|
|
52
|
-
'alt',
|
|
53
|
-
'width',
|
|
54
|
-
'table-container',
|
|
55
|
-
'table',
|
|
56
|
-
'tbody',
|
|
57
|
-
'tr',
|
|
58
|
-
'td'
|
|
59
|
-
];
|
|
60
|
-
exports.defaultMinimumFormats = [
|
|
61
|
-
'bold',
|
|
62
|
-
'italic',
|
|
63
|
-
'underline',
|
|
64
|
-
'script',
|
|
65
|
-
'image',
|
|
66
|
-
'formula',
|
|
67
|
-
'alt',
|
|
68
|
-
'size',
|
|
69
|
-
'align',
|
|
70
|
-
'list',
|
|
71
|
-
'bullet',
|
|
72
|
-
'indent',
|
|
73
|
-
'link',
|
|
74
|
-
'video'
|
|
75
|
-
];
|
|
76
|
-
var fontSizeSection = function () {
|
|
77
|
-
return react_1.default.createElement("select", { className: "ql-size" });
|
|
78
|
-
};
|
|
79
|
-
exports.fontSizeSection = fontSizeSection;
|
|
80
|
-
var textFormatSection = function (disabled) {
|
|
81
|
-
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
82
|
-
react_1.default.createElement("button", { className: "ql-bold", disabled: disabled }),
|
|
83
|
-
react_1.default.createElement("button", { className: "ql-italic", disabled: disabled }),
|
|
84
|
-
react_1.default.createElement("button", { className: "ql-underline", disabled: disabled }),
|
|
85
|
-
react_1.default.createElement("button", { className: "ql-script", value: "sub", disabled: disabled }),
|
|
86
|
-
react_1.default.createElement("button", { className: "ql-script", value: "super", disabled: disabled })));
|
|
87
|
-
};
|
|
88
|
-
exports.textFormatSection = textFormatSection;
|
|
89
|
-
var alignmentSection = function (disabled) {
|
|
90
|
-
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
91
|
-
react_1.default.createElement("button", { className: "ql-list", value: "ordered", disabled: disabled }),
|
|
92
|
-
react_1.default.createElement("button", { className: "ql-list", value: "bullet", disabled: disabled }),
|
|
93
|
-
react_1.default.createElement("button", { className: "ql-list", value: "alpha", disabled: disabled, title: "Toggle alpha list", "aria-label": "Toggle alpha list" },
|
|
94
|
-
react_1.default.createElement(IconAlphaList_1.IconAlphaList, { style: { width: 'auto' } })),
|
|
95
|
-
react_1.default.createElement("button", { className: "ql-indent", value: "-1", disabled: disabled }),
|
|
96
|
-
react_1.default.createElement("button", { className: "ql-indent", value: "+1", disabled: disabled })));
|
|
97
|
-
};
|
|
98
|
-
exports.alignmentSection = alignmentSection;
|
|
99
|
-
var tableSection = function (disabled) {
|
|
100
|
-
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
101
|
-
react_1.default.createElement("select", { className: "ql-table" }, Array.from(Array(5).keys()).flatMap(function (row) {
|
|
102
|
-
return Array.from(Array(5).keys()).map(function (col) {
|
|
103
|
-
return react_1.default.createElement("option", { key: row + "-" + col, value: "" + constants_1.TABLE_ACTION.NEW_TABLE + (row + 1) + "_" + (col + 1) });
|
|
104
|
-
});
|
|
105
|
-
})),
|
|
106
|
-
react_1.default.createElement("button", { className: "ql-table", value: "insert-row" },
|
|
107
|
-
react_1.default.createElement(IconTableInsertRow_1.IconTableInsertRow, { style: { width: 'auto' } })),
|
|
108
|
-
react_1.default.createElement("button", { className: "ql-table", value: "delete-row" },
|
|
109
|
-
react_1.default.createElement(IconTableDeleteRow_1.IconTableDeleteRow, { style: { width: 'auto' } })),
|
|
110
|
-
react_1.default.createElement("button", { className: "ql-table", value: "insert-col" },
|
|
111
|
-
react_1.default.createElement(IconTableInsertCol_1.IconTableInsertCol, { style: { width: 'auto' } })),
|
|
112
|
-
react_1.default.createElement("button", { className: "ql-table", value: "delete-col" },
|
|
113
|
-
react_1.default.createElement(IconTableDeleteCol_1.IconTableDeleteCol, { style: { width: 'auto' } }))));
|
|
114
|
-
};
|
|
115
|
-
exports.tableSection = tableSection;
|
|
116
|
-
var embedSection = function (disabled) {
|
|
117
|
-
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
118
|
-
react_1.default.createElement("button", { className: "ql-link", disabled: disabled }),
|
|
119
|
-
react_1.default.createElement("button", { className: "ql-image", disabled: disabled }),
|
|
120
|
-
react_1.default.createElement("button", { className: "ql-video", disabled: disabled }),
|
|
121
|
-
react_1.default.createElement("button", { className: "ql-formula", disabled: disabled })));
|
|
122
|
-
};
|
|
123
|
-
exports.embedSection = embedSection;
|
|
124
|
-
var minimumEmbedSection = function (disabled) {
|
|
125
|
-
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
126
|
-
react_1.default.createElement("button", { className: "ql-image", disabled: disabled }),
|
|
127
|
-
react_1.default.createElement("button", { className: "ql-formula", disabled: disabled })));
|
|
128
|
-
};
|
|
129
|
-
exports.minimumEmbedSection = minimumEmbedSection;
|
|
130
|
-
var additionalEmbedSection = function (disabled) {
|
|
131
|
-
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
132
|
-
react_1.default.createElement("button", { className: "ql-link", disabled: disabled }),
|
|
133
|
-
react_1.default.createElement("button", { className: "ql-video", disabled: disabled })));
|
|
134
|
-
};
|
|
135
|
-
exports.additionalEmbedSection = additionalEmbedSection;
|
|
136
|
-
exports.defaultFeatures = [
|
|
137
|
-
exports.fontSizeSection,
|
|
138
|
-
exports.textFormatSection,
|
|
139
|
-
exports.alignmentSection,
|
|
140
|
-
exports.tableSection,
|
|
141
|
-
exports.embedSection
|
|
142
|
-
];
|
|
143
|
-
exports.defaultMinimumFeatures = [exports.textFormatSection, exports.minimumEmbedSection];
|
|
144
|
-
exports.defaultMinimumAdditionalFeatures = [
|
|
145
|
-
exports.fontSizeSection,
|
|
146
|
-
exports.alignmentSection,
|
|
147
|
-
exports.additionalEmbedSection
|
|
148
|
-
];
|
|
149
|
-
// Following this example: https://codepen.io/alexkrolick/pen/gmroPj?editors=0010
|
|
150
|
-
// All the options available here: https://github.com/quilljs/quill/blob/develop/docs/_includes/standalone/full.html
|
|
151
|
-
var CustomToolbar = function (props) {
|
|
152
|
-
var guid = props.guid, className = props.className, disabled = props.disabled, features = props.features, useMinimumFeatures = props.useMinimumFeatures, minimumFeatures = props.minimumFeatures, minimumAdditionalFeatures = props.minimumAdditionalFeatures, reactQuillRef = props.reactQuillRef, isVisibleWhenDisabled = props.isVisibleWhenDisabled;
|
|
153
|
-
var _a = react_1.useState(false), isInitialized = _a[0], setIsInitialized = _a[1];
|
|
154
|
-
var _b = react_1.useState(false), isShowingMoreOptions = _b[0], setIsShowingMoreOptions = _b[1];
|
|
155
|
-
var ref = react_1.default.createRef();
|
|
156
|
-
var getFeatures = react_1.useCallback(function () {
|
|
157
|
-
return useMinimumFeatures ? minimumFeatures !== null && minimumFeatures !== void 0 ? minimumFeatures : exports.defaultMinimumFeatures : features !== null && features !== void 0 ? features : exports.defaultFeatures;
|
|
158
|
-
}, [features, minimumFeatures, useMinimumFeatures]);
|
|
159
|
-
react_1.useEffect(function () {
|
|
160
|
-
var _a;
|
|
161
|
-
// initialize the toolbar after reactQuill exists and the buttons are displayed (not disabled)
|
|
162
|
-
if (!isInitialized && reactQuillRef && !disabled) {
|
|
163
|
-
accessibilityFix_1.applyAccessibilityHacks(ref, reactQuillRef.getEditor());
|
|
164
|
-
// manually modify the table picker select svg icon
|
|
165
|
-
var label = (_a = ref.current) === null || _a === void 0 ? void 0 : _a.querySelector('.ql-table .ql-picker-label');
|
|
166
|
-
if (label) {
|
|
167
|
-
var svg = label.childNodes[0];
|
|
168
|
-
var polygons = svg.querySelectorAll('polygon');
|
|
169
|
-
polygons.forEach(function (polygon) {
|
|
170
|
-
polygon.remove();
|
|
171
|
-
});
|
|
172
|
-
svg.setAttribute('viewBox', '0 0 24 24');
|
|
173
|
-
svg.classList.add('ql-fill');
|
|
174
|
-
var path = svg.querySelector('path');
|
|
175
|
-
if (!path) {
|
|
176
|
-
var path_1 = document.createElementNS('http://www.w3.org/2000/svg', 'path');
|
|
177
|
-
path_1.setAttribute('d', IconTable_1.mdiTable);
|
|
178
|
-
svg.appendChild(path_1);
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
setIsInitialized(true);
|
|
182
|
-
}
|
|
183
|
-
}, [disabled, isInitialized, reactQuillRef, ref]);
|
|
184
|
-
return (react_1.default.createElement("div", { id: "quill-toolbar-" + guid, className: "br--top" + (className ? " " + className : '') + (disabled ? ' disabled' : '') + (!isVisibleWhenDisabled && disabled ? ' disabled-invisible' : ''), ref: ref }, (!disabled || (isVisibleWhenDisabled && isInitialized)) && (react_1.default.createElement(react_1.default.Fragment, null,
|
|
185
|
-
getFeatures().map(function (section, i) { return (react_1.default.createElement("span", { className: "ql-formats", key: i }, section(disabled))); }),
|
|
186
|
-
useMinimumFeatures && (react_1.default.createElement("button", { className: "more-options f6 fw5" + (isShowingMoreOptions ? ' expanded color-purple' : ''), type: "button", title: "More options", "aria-expanded": isShowingMoreOptions, onClick: function () { return setIsShowingMoreOptions(!isShowingMoreOptions); } },
|
|
187
|
-
react_1.default.createElement(MoreHoriz_1.default, { className: "ma0" }))),
|
|
188
|
-
// This is a sub-div so it's contained in the div with the id/guid for the forward ref.
|
|
189
|
-
// CSS handles appearance so it renders as if it were a sibling div.
|
|
190
|
-
useMinimumFeatures && (react_1.default.createElement("div", { className: "more-options-toolbar ql-snow" + (isShowingMoreOptions ? ' expanded' : ' invisible'), "aria-hidden": !isShowingMoreOptions }, (minimumAdditionalFeatures !== null && minimumAdditionalFeatures !== void 0 ? minimumAdditionalFeatures : exports.defaultMinimumAdditionalFeatures).map(function (section, i) { return (react_1.default.createElement("span", { className: "ql-formats", key: i }, section(disabled))); })))))));
|
|
191
|
-
};
|
|
192
|
-
exports.CustomToolbar = CustomToolbar;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { FunctionComponent } from 'react';
|
|
2
|
-
export interface ImageMissingAltTextWarningProps {
|
|
3
|
-
someImagesMissingAltText?: boolean;
|
|
4
|
-
}
|
|
5
|
-
declare const ImageMissingAltTextWarning: FunctionComponent<ImageMissingAltTextWarningProps>;
|
|
6
|
-
export default ImageMissingAltTextWarning;
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
var Warning_1 = __importDefault(require("@material-ui/icons/Warning"));
|
|
7
|
-
var react_1 = __importDefault(require("react"));
|
|
8
|
-
var ImageMissingAltTextWarning = function (_a) {
|
|
9
|
-
var someImagesMissingAltText = _a.someImagesMissingAltText;
|
|
10
|
-
if (someImagesMissingAltText) {
|
|
11
|
-
return (react_1.default.createElement("p", { className: "small pv1 mv1" },
|
|
12
|
-
react_1.default.createElement(Warning_1.default, { className: "fill-orange nt1 mr1" }),
|
|
13
|
-
"One or more images are missing alt text. Use right-click to set alt text on images."));
|
|
14
|
-
}
|
|
15
|
-
return null;
|
|
16
|
-
};
|
|
17
|
-
exports.default = ImageMissingAltTextWarning;
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { RangeStatic } from 'quill';
|
|
2
|
-
import { FunctionComponent } from 'react';
|
|
3
|
-
import ReactQuill from 'react-quill';
|
|
4
|
-
import { ImageValue } from './Formats/Image';
|
|
5
|
-
interface ImageWithAltTextProps {
|
|
6
|
-
isOpen: boolean;
|
|
7
|
-
imageToEdit?: ImageValue;
|
|
8
|
-
supportedImageExtensions: string[];
|
|
9
|
-
onClose: () => void;
|
|
10
|
-
fileSelector: HTMLInputElement;
|
|
11
|
-
reactQuillRef: ReactQuill | null;
|
|
12
|
-
range: RangeStatic | undefined;
|
|
13
|
-
cancelButtonClassName?: string;
|
|
14
|
-
}
|
|
15
|
-
export declare const ImageWithAltTextModal: FunctionComponent<ImageWithAltTextProps>;
|
|
16
|
-
export {};
|
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
-
}) : function(o, v) {
|
|
12
|
-
o["default"] = v;
|
|
13
|
-
});
|
|
14
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
-
if (mod && mod.__esModule) return mod;
|
|
16
|
-
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
-
__setModuleDefault(result, mod);
|
|
19
|
-
return result;
|
|
20
|
-
};
|
|
21
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
22
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
23
|
-
};
|
|
24
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
-
exports.ImageWithAltTextModal = void 0;
|
|
26
|
-
var core_1 = require("@material-ui/core");
|
|
27
|
-
var Help_1 = __importDefault(require("@material-ui/icons/Help"));
|
|
28
|
-
var SwapVert_1 = __importDefault(require("@material-ui/icons/SwapVert"));
|
|
29
|
-
var lodash_1 = require("lodash");
|
|
30
|
-
var react_1 = __importStar(require("react"));
|
|
31
|
-
var react_bootstrap_1 = require("react-bootstrap");
|
|
32
|
-
var react_quill_1 = require("react-quill");
|
|
33
|
-
var ConnectedModal_1 = __importDefault(require("../ConnectedModal"));
|
|
34
|
-
var ErrorMessage_1 = require("../ErrorMessage");
|
|
35
|
-
var Delta = react_quill_1.Quill.import('delta');
|
|
36
|
-
var mdiUpload = 'M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z';
|
|
37
|
-
var IconUpload = (react_1.default.createElement(core_1.SvgIcon, { role: "presentation" },
|
|
38
|
-
react_1.default.createElement("path", { d: mdiUpload })));
|
|
39
|
-
var ImageWithAltTextModal = function (_a) {
|
|
40
|
-
var isOpen = _a.isOpen, onClose = _a.onClose, imageToEdit = _a.imageToEdit, supportedImageExtensions = _a.supportedImageExtensions, fileSelector = _a.fileSelector, reactQuillRef = _a.reactQuillRef, range = _a.range, cancelButtonClassName = _a.cancelButtonClassName;
|
|
41
|
-
// setup state that is editable in the modal, based on the targeted image, if any
|
|
42
|
-
var _b = react_1.useState(imageToEdit === null || imageToEdit === void 0 ? void 0 : imageToEdit.alt), alt = _b[0], setAlt = _b[1];
|
|
43
|
-
var _c = react_1.useState(imageToEdit === null || imageToEdit === void 0 ? void 0 : imageToEdit.src), src = _c[0], setSrc = _c[1];
|
|
44
|
-
var _d = react_1.useState(false), isSelectedFileInvalid = _d[0], setIsSelectedFileInvalid = _d[1];
|
|
45
|
-
// update local state based on the targeted image, if any
|
|
46
|
-
react_1.useEffect(function () {
|
|
47
|
-
if (imageToEdit) {
|
|
48
|
-
setAlt(imageToEdit.alt);
|
|
49
|
-
setSrc(imageToEdit.src);
|
|
50
|
-
}
|
|
51
|
-
}, [imageToEdit]);
|
|
52
|
-
var onTryClose = function () {
|
|
53
|
-
setAlt(undefined);
|
|
54
|
-
setSrc(undefined);
|
|
55
|
-
// programmatically reset file selector
|
|
56
|
-
fileSelector.value = '';
|
|
57
|
-
onClose();
|
|
58
|
-
};
|
|
59
|
-
/** Use file selector to get an image */
|
|
60
|
-
var onClickImageUpload = function () {
|
|
61
|
-
// programmatically click to open the file upload dialog
|
|
62
|
-
fileSelector.click();
|
|
63
|
-
// when a file is selected
|
|
64
|
-
fileSelector.onchange = function () {
|
|
65
|
-
var _a;
|
|
66
|
-
if (fileSelector.files && ((_a = fileSelector.files) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
67
|
-
var file_1 = fileSelector.files[0];
|
|
68
|
-
// convert filename to lowercase to make file extension check not case sensitive
|
|
69
|
-
setIsSelectedFileInvalid(!supportedImageExtensions.some(function (e) { return file_1.name.toLocaleLowerCase().endsWith(e); }));
|
|
70
|
-
var reader = new FileReader();
|
|
71
|
-
reader.onload = function (e) {
|
|
72
|
-
var _a;
|
|
73
|
-
if ((_a = e.target) === null || _a === void 0 ? void 0 : _a.DONE) {
|
|
74
|
-
// result is image in base64
|
|
75
|
-
setSrc(e.target.result);
|
|
76
|
-
if (!alt)
|
|
77
|
-
setAlt(file_1.name);
|
|
78
|
-
}
|
|
79
|
-
};
|
|
80
|
-
// get the file as a dataURI in base64
|
|
81
|
-
reader.readAsDataURL(file_1);
|
|
82
|
-
}
|
|
83
|
-
};
|
|
84
|
-
};
|
|
85
|
-
/** insert Image into quill */
|
|
86
|
-
var insertImage = function () {
|
|
87
|
-
if (reactQuillRef) {
|
|
88
|
-
var quill = reactQuillRef.getEditor();
|
|
89
|
-
var imageToInsert = { src: src, alt: alt };
|
|
90
|
-
if (imageToEdit) {
|
|
91
|
-
imageToInsert.height = imageToEdit.height;
|
|
92
|
-
imageToInsert.width = imageToEdit.width;
|
|
93
|
-
}
|
|
94
|
-
var index = range ? range.index : 0;
|
|
95
|
-
var diff = new Delta();
|
|
96
|
-
// retain up until the selected range
|
|
97
|
-
diff.retain(index);
|
|
98
|
-
// remove the existing image, if any
|
|
99
|
-
if (imageToEdit) {
|
|
100
|
-
diff.delete(1);
|
|
101
|
-
}
|
|
102
|
-
// insert the new image
|
|
103
|
-
diff.insert({ image: imageToInsert });
|
|
104
|
-
quill.updateContents(diff, 'user');
|
|
105
|
-
}
|
|
106
|
-
onTryClose();
|
|
107
|
-
};
|
|
108
|
-
return (react_1.default.createElement(ConnectedModal_1.default, { show: isOpen, onHide: onTryClose },
|
|
109
|
-
react_1.default.createElement(react_bootstrap_1.Modal.Header, { closeButton: true },
|
|
110
|
-
react_1.default.createElement(react_bootstrap_1.Modal.Title, { className: "f4" }, imageToEdit ? "Edit Alt Text" : "Image Upload")),
|
|
111
|
-
react_1.default.createElement(react_bootstrap_1.Modal.Body, null,
|
|
112
|
-
react_1.default.createElement("p", { className: "mb2 f7" }, "* Indicates required field"),
|
|
113
|
-
src && !isSelectedFileInvalid && (react_1.default.createElement(react_bootstrap_1.Row, null,
|
|
114
|
-
react_1.default.createElement("img", { className: "mb2 h5", src: src, alt: alt }))),
|
|
115
|
-
react_1.default.createElement("div", { "aria-live": "polite", className: "f7 mb2" }, isSelectedFileInvalid && (react_1.default.createElement(ErrorMessage_1.ErrorMessage, { message: "The chosen file type is not supported. Please use one of the image formats listed below." }))),
|
|
116
|
-
!imageToEdit && (react_1.default.createElement(react_1.default.Fragment, null,
|
|
117
|
-
react_1.default.createElement(core_1.Button, { className: "w-100-lt-xs pa2 mv1 btn-primary", onClick: onClickImageUpload },
|
|
118
|
-
src ? react_1.default.createElement(SwapVert_1.default, null) : IconUpload,
|
|
119
|
-
react_1.default.createElement("span", { className: "ml1" },
|
|
120
|
-
src ? 'Change' : 'Upload',
|
|
121
|
-
" Image")),
|
|
122
|
-
react_1.default.createElement("p", { className: "f7 mb3" }, "Supported formats: .jpg, .png, .gif, .bmp"))),
|
|
123
|
-
react_1.default.createElement(react_bootstrap_1.FormGroup, null,
|
|
124
|
-
react_1.default.createElement(react_bootstrap_1.Row, { className: "mb2" },
|
|
125
|
-
react_1.default.createElement("h3", { className: "mv0" },
|
|
126
|
-
react_1.default.createElement(react_bootstrap_1.FormLabel, { htmlFor: "img-alt-text", className: "mb0" },
|
|
127
|
-
"Alt Text *",
|
|
128
|
-
react_1.default.createElement(react_bootstrap_1.OverlayTrigger, { placement: "top", trigger: ['hover', 'focus'], overlay: react_1.default.createElement(react_bootstrap_1.Popover, { id: "alt-text-explanation" },
|
|
129
|
-
react_1.default.createElement("p", { className: "mb0" }, "Used by screen readers to describe the content of an image.")) },
|
|
130
|
-
react_1.default.createElement("button", { type: "button", className: "dib help-button bg-transparent" },
|
|
131
|
-
react_1.default.createElement(Help_1.default, { color: "primary", titleAccess: "Alt text explanation" })))))),
|
|
132
|
-
react_1.default.createElement(react_bootstrap_1.FormControl, { id: "img-alt-text", "aria-label": "Image Alt Text", as: "textarea", onChange: function (event) {
|
|
133
|
-
setAlt(event.target.value);
|
|
134
|
-
}, value: alt, spellCheck: false, autoComplete: "off", autoCorrect: "off" }))),
|
|
135
|
-
react_1.default.createElement(react_bootstrap_1.Modal.Footer, null,
|
|
136
|
-
react_1.default.createElement(core_1.Button, { className: "mr1 btn-text" + (cancelButtonClassName ? " " + cancelButtonClassName : ''), onClick: onTryClose }, "Cancel"),
|
|
137
|
-
react_1.default.createElement(core_1.Button, { className: "btn-primary mb1", id: "save-image-button", onClick: insertImage, disabled: lodash_1.isEmpty(alt === null || alt === void 0 ? void 0 : alt.trim()) || lodash_1.isEmpty(src) || isSelectedFileInvalid }, "Save"))));
|
|
138
|
-
};
|
|
139
|
-
exports.ImageWithAltTextModal = ImageWithAltTextModal;
|
package/lib/types/Quill.d.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { BoundsStatic, DeltaStatic, RangeStatic } from 'quill';
|
|
2
|
-
export interface UnprivilegedEditor {
|
|
3
|
-
getLength(): number;
|
|
4
|
-
getText(index?: number, length?: number): string;
|
|
5
|
-
getHTML(): string;
|
|
6
|
-
getBounds(index: number, length?: number): BoundsStatic;
|
|
7
|
-
getSelection(focus?: boolean): RangeStatic;
|
|
8
|
-
getContents(index?: number, length?: number): DeltaStatic;
|
|
9
|
-
}
|
package/lib/types/Quill.js
DELETED
package/lib/utils/quill.d.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { DeltaStatic } from 'quill';
|
|
2
|
-
/**
|
|
3
|
-
* Find whether there are any image operations without alt text in the provided quill contents.
|
|
4
|
-
*
|
|
5
|
-
* @param contents The contents of quill.
|
|
6
|
-
*
|
|
7
|
-
* @returns True if there are any images without alt text
|
|
8
|
-
*/
|
|
9
|
-
export declare const hasSomeMissingAltText: (contents: DeltaStatic) => boolean;
|
package/lib/utils/quill.js
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.hasSomeMissingAltText = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* Find whether there are any image operations without alt text in the provided quill contents.
|
|
6
|
-
*
|
|
7
|
-
* @param contents The contents of quill.
|
|
8
|
-
*
|
|
9
|
-
* @returns True if there are any images without alt text
|
|
10
|
-
*/
|
|
11
|
-
var hasSomeMissingAltText = function (contents) { var _a; return ((_a = contents.ops) === null || _a === void 0 ? void 0 : _a.some(function (op) { var _a, _b, _c; return ((_a = op.insert) === null || _a === void 0 ? void 0 : _a.image) && !((_c = (_b = op.insert) === null || _b === void 0 ? void 0 : _b.image.alt) === null || _c === void 0 ? void 0 : _c.trim()); })) || false; };
|
|
12
|
-
exports.hasSomeMissingAltText = hasSomeMissingAltText;
|